@font-face {
    font-family: 'Open Sans';
    src: url('/static/fonts/opensans-lightitalic-webfont.eot');
    src: url('/static/fonts/opensans-lightitalic-webfont.eot?#iefix') format('embedded-opentype'),
         url('/static/fonts/opensans-lightitalic-webfont.woff2') format('woff2'),
         url('/static/fonts/opensans-lightitalic-webfont.woff') format('woff'),
         url('/static/fonts/opensans-lightitalic-webfont.ttf') format('truetype'),
         url('/static/fonts/opensans-lightitalic-webfont.svg#open_sanslight_italic') format('svg');
    font-style: italic;
    font-weight: 300;

}

@font-face {
    font-family: 'Open Sans';
    src: url('/static/fonts/opensans-regular-webfont.eot');
    src: url('/static/fonts/opensans-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('/static/fonts/opensans-regular-webfont.woff2') format('woff2'),
         url('/static/fonts/opensans-regular-webfont.woff') format('woff'),
         url('/static/fonts/opensans-regular-webfont.ttf') format('truetype'),
         url('/static/fonts/opensans-regular-webfont.svg#open_sansregular') format('svg');
    font-style: normal;
    font-weight: 400;

}

@font-face {
    font-family: 'open_sansbold';
    src: url('/static/fonts/opensans-bold-webfont.eot');
    src: url('/static/fonts/opensans-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/static/fonts/opensans-bold-webfont.woff2') format('woff2'),
         url('/static/fonts/opensans-bold-webfont.woff') format('woff'),
         url('/static/fonts/opensans-bold-webfont.ttf') format('truetype'),
         url('/static/fonts/opensans-bold-webfont.svg#open_sansbold') format('svg');
    font-style: normal;
    font-weight: 700;

}

@font-face {
    font-family: 'open_sanslight';
    src: url('/static/fonts/opensans-light-webfont.eot');
    src: url('/static/fonts/opensans-light-webfont.eot?#iefix') format('embedded-opentype'),
         url('/static/fonts/opensans-light-webfont.woff2') format('woff2'),
         url('/static/fonts/opensans-light-webfont.woff') format('woff'),
         url('/static/fonts/opensans-light-webfont.ttf') format('truetype'),
         url('/static/fonts/opensans-light-webfont.svg#open_sanslight') format('svg');
    font-style: normal;
    font-weight: 300;

}

@font-face {
    font-family: 'open_sanssemibold';
    src: url('/static/fonts/opensans-semibold-webfont.eot');
    src: url('/static/fonts/opensans-semibold-webfont.eot?#iefix') format('embedded-opentype'),
         url('/static/fonts/opensans-semibold-webfont.woff2') format('woff2'),
         url('/static/fonts/opensans-semibold-webfont.woff') format('woff'),
         url('/static/fonts/opensans-semibold-webfont.ttf') format('truetype'),
         url('/static/fonts/opensans-semibold-webfont.svg#open_sanssemibold') format('svg');
    font-style: normal;
    font-weight: 600;

}


a.clean {
    text-decoration: none;
    color: inherit;
}

.text-info {
    color: #5585A6;
}

a {
    color: #42697E;
}

a:hover {
    color: #5585A6;
}

.alert-info {
    background-color: #BED7E2;
    border: none;
}

.btn {
    background-color: #5585A6;
    border: none;
}

.btn.disabled {
    opacity: 0.2;
}

/**************************************/
/* Sticky footer */
html {
  position: relative;
  min-height: 100%;
}

body {
  /* Margin bottom by footer height */
  margin-bottom: 40px;
  color: #1E1E1E;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Open Sans', sans-serif;
}

.panel-title {
    color: #42697E;

}

p, div {
    font-family: 'Open Sans', sans-serif;
}

#footer {
  position: absolute;
  bottom: 0;
  width: 100%;
  /* Set the fixed height of the footer here */
  height: 40px;
  background-color: #f5f5f5;
}

#footer .container {
  width: auto;
  padding: 0 15px;
}
#footer .container .text-muted {
  margin: 10px 0;
  text-align: center;
}

/**************************************/
/* Navbar */

.navbar {
    margin-bottom: 30px;
}

.navbar-fixed-top {
    min-height: 70px;
}

.navbar-nav > li > a {
    padding-top: 0;
    padding-bottom: 0;
    line-height: 65px;
}

.navbar-brand {
    padding: 5px;
    margin: 0;
    height: 65px;
}

@media (max-width: 767px) {
    .navbar-nav > li > a {
    line-height: 20px;
    padding-top: 10px;
    padding-bottom: 10px;}
    .navbar-brand {
    padding: 0;
    margin: 0;
    height: 50px;}
}
.navbar-default {
	background-color: #ffffff;
	border-color: #ffffff;
    box-shadow: 0 0 2px 1px rgba(0, 0, 0, 0.5);
}
.navbar-default .navbar-brand {
	color: #909090;
}
.navbar-default .navbar-brand:hover, .navbar-default .navbar-brand:focus {
	color: #5285a6;
}
.navbar-default .navbar-text {
	color: #909090;
}
.navbar-default .navbar-nav > li > a {
	color: #909090;
}
.navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > li > a:focus {
	color: #5285a6;
}
.navbar-default .navbar-nav > .active > a, .navbar-default .navbar-nav > .active > a:hover, .navbar-default .navbar-nav > .active > a:focus {
	color: #5285a6;
	background-color: #ffffff;
}
.navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
	color: #5285a6;
	background-color: #ffffff;
}
.navbar-default .navbar-toggle {
	border-color: #ffffff;
}
.navbar-default .navbar-toggle:hover, .navbar-default .navbar-toggle:focus {
	background-color: #ffffff;
}
.navbar-default .navbar-toggle .icon-bar {
	background-color: #909090;
}
.navbar-default .navbar-collapse,
.navbar-default .navbar-form {
	border-color: #909090;
}
.navbar-default .navbar-link {
	color: #909090;
}
.navbar-default .navbar-link:hover {
	color: #5285a6;
}

@media (max-width: 767px) {
	.navbar-default .navbar-nav .open .dropdown-menu > li > a {
		color: #909090;
	}
	.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
		color: #5285a6;
	}
	.navbar-default .navbar-nav .open .dropdown-menu > .active > a, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus {
		color: #5285a6;
		background-color: #ffffff;
	}
}

/**************************************/

/* Show cursor pointer for sensor list table */
.table-hover tbody tr.sensor:hover > td {
  cursor: pointer
}

.navbar img{
    height: 100%;
}

/* Add margin between dd elements */
dd {
    margin-bottom: 10px;
}

.spacer {
    margin-bottom: 20px;
}

#map {
    height: 500px;
}

#map .table{
    border-top-style: hidden;
}

#map a{
    text-decoration: inherit;
    color: inherit;
}

.divBox
{
    width: 300px;
    height: 100px;
}
.divBox a
{
    width: 100%;
    height: 100%;
    display: block;
}

.labels {
    width: 40px;
}

.label-deactivated {
    background-color: black; /*#9ea995;*/
}

.label-ok {
    display: inline-block;
    height: 20px;
    width: 20px;
    line-height: 20px;

    -moz-border-radius: 50%; /* or 50% */
    border-radius: 50%; /* or 50% */

    background-color: #71B042;
    color: white;
    text-align: center;
    font-size: 1em;
}

.label-nok {
    display: inline-block;
    height: 20px;
    width: 20px;
    line-height: 20px;

    -moz-border-radius: 50%; /* or 50% */
    border-radius: 50%; /* or 50% */

    background-color: #D63C32;
    color: white;
    text-align: center;
    font-size: 1em;
}


/* ===========================
   POPUP: station indisponible
   =========================== */

/* badge INDISPONIBLE dans l’en-tête popup */
.station-unavailable-badge{
  display:inline-block;
  margin-left:10px;
  padding:2px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  background:#D63C32;
  color:#fff;
}

/* ligne capteur désactivée */
.leaflet-popup.station-popup tr.sensor-disabled{
  opacity: .45;
  background: rgba(0,0,0,.02);
}

/* Empêche le style hover + cursor pointer de bootstrap */
.leaflet-popup.station-popup tr.sensor-disabled:hover > td{
  cursor:not-allowed !important;
}


.sensor-unavailable-badge--inline{
  margin-left:8px;
  padding:2px 6px;
  font-size:10px;
}


/* Ligne désactivée : stop clic + style */
.leaflet-popup.station-popup tr.sensor-disabled,
.leaflet-popup.station-popup tr.sensor-disabled td{
  cursor: not-allowed !important;
}

.leaflet-popup.station-popup tr.sensor-disabled{
  opacity: .45;
  background: rgba(0,0,0,.02);
}

.form-sizing {
    padding-left: 2em;
}

.form-checkbox-sizing{
    padding-left: 2em;
}

.btn-submit{
    float: right;
}

.tinymce_body{
    color: #1E1E1E;
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 1.42857143;
    background-color: #fff;
}

.leaflet-popup.station-popup .leaflet-popup-content-wrapper{
  border-radius: 10px;
}

.leaflet-popup.station-popup .leaflet-popup-content{
  width: 480px;          
  max-height: 360px;     
  overflow-y: auto;      
  margin: 12px 14px;
}


/* ===========================
   POPUP: Graph slider
   =========================== */
.history-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 8px;
}

.history-header h3 {
  margin: 0;
}

.history-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.toggle-label {
  font-size: 12px;
  opacity: 0.8;
}

.switch { position: relative; display: inline-block; width: 46px; height: 24px; margin:0; }
.switch input { display:none; }

.slider {
  position:absolute; cursor:pointer; top:0; left:0; right:0; bottom:0;
  background:#ccc; transition:.2s; border-radius:999px;
}
.slider:before{
  position:absolute; content:""; height:18px; width:18px; left:3px; top:3px;
  background:white; transition:.2s; border-radius:50%;
}
.switch input:checked + .slider { background:#3b82f6; }
.switch input:checked + .slider:before { transform: translateX(22px); }


.threshold-info-wrap{
  position:relative;
  display:inline-block;
  margin-left:10px;
}

/* le bouton i */
.threshold-info-btn{
  border:0;
  background:rgba(0,0,0,.06);
  width:26px;
  height:26px;
  border-radius:13px;
  cursor:default; /* hover-only */
  line-height:26px;
  font-size:14px;
  padding:0;
}
.threshold-info-btn:hover{ background:rgba(0,0,0,.10); }

/* tooltip hors-flux */
.threshold-info-popover{
  position:absolute;
  top:50%;
  left:calc(100% + 10px); /* à droite du i */
  transform:translateY(-50%);
  width:420px;
  max-width:70vw;
  background:#fff;
  border:1px solid rgba(0,0,0,.12);
  border-radius:8px;
  padding:10px 12px;
  font-size:12px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  box-shadow:0 6px 18px rgba(0,0,0,.10);
  z-index:9999;
}

/* petit triangle */
.threshold-info-popover:before{
  content:"";
  position:absolute;
  left:-8px;
  top:50%;
  transform:translateY(-50%);
  border-width:8px;
  border-style:solid;
  border-color:transparent #fff transparent transparent;
}
.threshold-info-popover:after{
  content:"";
  position:absolute;
  left:-9px;
  top:50%;
  transform:translateY(-50%);
  border-width:9px;
  border-style:solid;
  border-color:transparent rgba(0,0,0,.12) transparent transparent;
}


.station-popup .map-markers td.sensor-latest {
  width: 46%;
  vertical-align: top;
  padding-left: 12px;
}

.latest-wrap { font-size: 12px; line-height: 1.35; }
.latest-list { margin: 6px 0 0 0; padding: 0; list-style: none; }
.latest-list li { margin: 2px 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.latest-name { font-weight: 600; }
.muted { opacity: .65; }
.latest-ts { margin-bottom: 4px; }

#footer{
  left: 0;
  right: 0;
  width: auto;   /* important : évite le width:100% qui déborde quand c’est décalé */
}