.graps {
  padding-top: 5px;
  /*background-color: aquamarine;*/
}

/*############movil#########################*/
#candis {
  list-style: none;
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  align-items: center;
  flex-wrap: wrap;
}

#candis li {
  width: 85px;
  height: 250px;
  /*background-color: chocolate;*/

  margin: 10px 10px;
}

.imacandi {
  display: none;
  width: 80px;
  height: 80px;

  border-radius: 50%;
  margin: 0 auto 10px;
  border: 2px solid #fff;
  -moz-box-shadow: 1px 2px 5px 0px #888;
  -webkit-box-shadow: 1px 2px 5px 0px #888;
  box-shadow: 1px 2px 5px 0px #888;
}

#candis li .barraprog {
  display: block;
  position: relative;
  width: 75px;
  height: 85px;
  margin: 0 auto;
  background: #ebebeb;
  -moz-border-radius: 3px 3px 0px 0px;
  -webkit-border-radius: 3px 3px 0px 0px;
  border-radius: 3px 3px 0px 0px;
}

#candis li .barraprog .barrcont {
  position: absolute;
  bottom: 1px;
  left: 0;
  width: 75px;
  height: 100px;
  text-align: center;
  background: rgb(0, 0, 0);
  -moz-border-radius: 3px 3px 0px 0px;
  -webkit-border-radius: 3px 3px 0px 0px;
  border-radius: 3px 3px 0px 0px;
  /* -webkit-transition: 1.5s all;
    -webkit-animation-duration: 1.5s;
    -webkit-animation-name: animationProgress; */
}

#voto_m {
  display: block;
}

#candis li .barraprog .barrcont i {
  font-size: 18px;
  color: rgb(33, 6, 187);
  -webkit-transition: 0.5s all;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: animationNumberProgress;
  transition: 0.5s all;
  animation-duration: 0.5s;
  animation-name: animationNumberProgress;
}

#candis li .barraprog .barrcont b {
  display: none;
  position: absolute;
  top: -30px;
  left: 10px;

  font-size: 13px;
  font-weight: bold;
  color: rgb(0, 0, 0);
  text-align: center;
}

#candis li .nome {
  display: block;
  width: 100%;
  /*height:35px;*/
  height: 130px;
  padding-top: -5px;
  margin: 0 auto;
  font-family: Arial, Helvetica, Sans-serif;
  font-size: 12px;
  color: #222;
  font-weight: bold;

  text-align: center;
  /*background: rgb(192, 161, 161);*/
  /*border-top: 3px solid gray;*/
  /*-moz-border-radius: 0px 0px 3px 3px;
    -webkit-border-radius: 0px 0px 3px 3px;
    border-radius: 0px 0px 3px 3px;*/
}

#candis li .nome .divlogo {
  display: flex;
  flex-wrap: wrap;
  justify-content: center; /*flex-start*/
}

#candis li .nome .divlogo img {
  display: block;
  margin: 1px;
}

#candis li .nome strong {
  display: block;
  font-size: 12px;
  margin-top: 16px;
}
/*############end movil########################*/

.percentual {
  -webkit-transition: 0.5s all;
  -webkit-animation-duration: 0.5s;
  -webkit-animation-name: animationProgress;
  transition: 0.5s all;
  animation-duration: 0.5s;
  animation-name: animationProgress;
}

/******************/
.tool {
  position: relative;
  display: inline-block;
  border-bottom: 1px dotted black;
}

.tool .tiptext {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  border-radius: 3px;
  padding: 6px 0;
  position: absolute;
  z-index: 1;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  font-size: 12px;
}

.tool .tiptext::after {
  content: "";
  position: absolute;
  border-width: 5px;
  border-style: solid;
}

.tool:hover .tiptext {
  visibility: visible;
}

.tool.top .tiptext {
  margin-left: -60px;
  bottom: 150%;
  left: 50%;
}

.tool.top .tiptext::after {
  margin-left: -5px;
  top: 100%;
  left: 50%;
  border-color: #2e2e2e transparent transparent transparent;
}

/**************/

#filtro {
  list-style: none;
  width: 100%;
  height: 150px;
  /*float:left;*/
  margin: 5px 0px 0;
  border-radius: 3px;
  background: #3b3b3b;
}
#filtro li {
  width: 100%;
  height: 49px;
  border-bottom: 1px solid #2b2b2b;
}
#filtro li:first-child {
  -moz-border-radius: 3px 3px 0px 0px;
  -webkit-border-radius: 3px 3px 0px 0px;
  border-radius: 3px 3px 0px 0px;
}
#filtro li:last-child {
  border: none;
  -moz-border-radius: 0px 0px 3px 3px;
  -webkit-border-radius: 0px 0px 3px 3px;
  border-radius: 0px 0px 3px 3px;
}
#filtro li a {
  display: block;
  width: 100%;
  height: 49px;
  line-height: 49px;
  text-align: center;
  color: #fff;
}
#filtro li:hover,
#filtro li.active {
  background: #1b1b1b;
}

/*box-shadow: 0px 35px 50px rgba( 0, 0, 0, 0.2 );*/

/*******tabls***************/
.casillasdiv {
  /* width: 21em; */
  display: block;
  height: 300px;
  /* max-width: 1000px; */
  overflow-x: auto;
  overflow-y: auto;
  /*white-space: wrap;*/
  white-space: nowrap;
}

.reccotdiv {
  /*width: 30em;*/
  height: auto;
  max-width: 100%;
  overflow-x: auto;
  overflow-y: auto;
  /*white-space: wrap;*/
  white-space: nowrap;
  background-color: var(--theme-color);
  padding: 1em;
}

.container-seguimiento {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}

.graldiv_1 {
  /*width: 30em;*/
  height: 600px;
  /* max-width: 1200px; */
  overflow-x: auto;
  overflow-y: auto;
  /*white-space: wrap;*/
  background-color: var(--theme-color);
  white-space: nowrap;
}

.graldiv_2 {
  margin-top: 100px;
  /*width: 30em;*/
  /* height: 600px; */
  height: 0;
  /* max-width: 1200px; */
  overflow-x: auto;
  overflow-y: auto;
  /*white-space: wrap;*/
  white-space: nowrap;
}

.graldiv_3 {
  margin-top: 100px;
  /*width: 30em;*/
  /* height: 600px; */
  height: 0;
  /* max-width: 1200px; */
  overflow-x: auto;
  overflow-y: auto;
  /*white-space: wrap;*/
  white-space: nowrap;
}

.mytable {
  border: none;
  border: solid 1px var(--revocacion-header-border);
  border-collapse: separate;
  border-spacing: 0;
  white-space: nowrap;
}

.col-separa {
  text-align: left;
}

.theadtabla {
  position: sticky;
  top: 0px;
  /* background-color: black; */
  background-color: var(--revocacion-background-header);
  z-index: 1;
  color: var(--revocacion-text-header);

  /*text-shadow: 1px 1px 1px #fff;*/
}

/* .theadtabla .activo {
  background-color: black;
} */

.mytable th,
td {
  padding: 1em 1em;
  font-size: 11px;
  border-bottom: 1px solid var(--revocacion-header-border);
}

/* botón de avances con estilo */
.porcentaje-avance {
  /* border: 1px solid var(--revocacion-dark); */
  padding: 0.5em;
  border-radius: 15px;
}

.porcentaje-avance::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  margin-right: 3px;
}

.porcentaje-avance.completo {
  background-color: var(--revocacion-avance-completo-background);
  color: var(--revocacion-avance-completo-text);
}

.porcentaje-avance.completo::before {
  background-color: var(--revocacion-avance-completo-bottom);
}

.porcentaje-avance.parcial {
  background-color: var(--revocacion-avance-parcial-background);
  color: var(--revocacion-avance-parcial-text);
}

.porcentaje-avance.parcial::before {
  background-color: var(--revocacion-avance-parcial-bottom);
}

.porcentaje-avance.nulo {
  background-color: var(--revocacion-avance-nulo-background);
  color: var(--revocacion-avance-nulo-text);
}

.porcentaje-avance.nulo::before {
  background-color: var(--revocacion-avance-nulo-bottom);
}

.colcasilla-sticky {
  /*th:first-child,td:first-child*/
  position: sticky;
  left: 0px;
  background-color: white;
  border: 2px solid #ddefef;
}

/********************/

.divbotnes {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.sidebar-tex {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.btnside {
  background-color: var(--primary-color);
  color: var(--text-color-inverse);
  border: none;
  font-size: 15px;
  padding: 15px;
  border-radius: 5px;
  cursor: pointer;
  width: 100%;
  margin: 15px;
}

.btnside:hover {
  filter: brightness(130%);
}

.profile-btn:hover {
  filter: brightness(130%);
}

/***********************/
.select-css {
  display: block;
  font-size: 16px;
  font-family: "Arial", sans-serif;
  font-weight: 400;
  color: #444;
  line-height: 1.3;
  padding: 0.4em 1.4em 0.3em 0.8em;
  width: 400px;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  border: 1px solid #aaa;
  box-shadow: 0 1px 0 1px rgba(0, 0, 0, 0.03);
  border-radius: 1em;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23007CB2%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E"),
    linear-gradient(to bottom, #ffffff 0%, #f7f7f7 100%);
  background-repeat: no-repeat, repeat;
  background-position: right 0.7em top 50%, 0 0;
  background-size: 0.65em auto, 100%;
}
.select-css::-ms-expand {
  display: none;
}
.select-css:hover {
  border-color: #888;
}
.select-css:focus {
  border-color: #aaa;
  box-shadow: 0 0 1px 3px rgba(59, 153, 252, 0.7);
  box-shadow: 0 0 0 3px -moz-mac-focusring;
  color: #222;
  outline: none;
}
.select-css option {
  font-weight: normal;
}

.nom_candi {
  display: none;
  height: 50px;
  /*background-color: cadetblue;*/
  font-size: 11px;
}

/********************/

@-webkit-keyframes animationProgress {
  from {
    height: 0;
  }
}

@keyframes animationProgress {
  from {
    height: 0;
  }
}
/* PROGRESS BAR PARTICIPACION CIUDADANA */
.progress-container {
  width: 90%; /* Ancho total de la gráfica */
  height: 3em; /* Altura de la barra de progreso */
  background-color: #f0f0f0;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin: 50px auto;
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box; /* Asegura que el padding/border se incluya en el ancho */
}

.progress-bar {
  --progress-color: #8b1e3f; /* Color de la barra de progreso */
  height: 100%;
  width: var(--progress-percentage, 0%); /* Usa la variable para el ancho */
  background-color: var(--progress-color);
  border-radius: 5px 0 0 5px; /* Bordes redondeados solo a la izquierda */
  position: relative;
  transition: width 0.5s ease-in-out; /* Animación suave del progreso */
}

.progress-label {
  /* background-color: var(--progress-color); */
  color: var(--revocacion-primary1);
  border: 1px solid var(--revocacion-primary1);
  padding: 5px 10px;
  border-radius: 5px;
  position: absolute;
  top: -40px; /* Ajusta la posición vertical */
  right: var(
    --progress-label-center
  ); /* Centra horizontalmente sobre el final de la barra */
  /* transform: translateX(var(--progress-percentage,0%)); */ /* Ajuste fino para centrar */
  white-space: nowrap; /* Evita que el texto se rompa */
  font-size: 0.9em;
  font-weight: bold;
}

.progress-label::after {
  content: "";
  position: absolute;
  bottom: -8px; /* Posiciona la flecha debajo del label */
  left: 40%;
  transform: translateX(0%) rotate(0deg);
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid var(--progress-color);
  /* truco para el tooltip: rotate(45deg) y mover un poco */
  clip-path: polygon(0% 0%, 100% 0%, 50% 100%); /* Forma de triángulo */
  background-color: var(--progress-color); /* Color de la flecha */
}

.marker {
  position: absolute;
  height: calc(100% + 10px); /* Un poco más alto que la barra */
  width: 0em;
  /* background-color: #8cc63f; */ /* Color del marcador, he elegido uno similar al verde punteado */
  border-left: 4px dashed #8cc63f; /* Línea punteada */
  top: -5px; /* Centrar verticalmente */
  opacity: 0.7;
  z-index: 1; /* Para que esté por encima de la barra */
}

.marker-40 {
  left: 40%; /* Posición del marcador al 40% */
  transform: translateX(-1px); /* Ajuste para centrar el marcador */
}

.scale-label {
  position: absolute;
  font-size: 0.8em;
  color: #555;
  bottom: -25px; /* Posición debajo de la barra */
}

.scale-label:nth-of-type(1) {
  /* 0% */
  left: 0;
  transform: translateX(-50%);
}

.scale-label:nth-of-type(2) {
  /* 40% */
  left: 40%;
  transform: translateX(-50%);
}

.scale-label:nth-of-type(3) {
  /* 100% */
  right: 0;
  transform: translateX(50%);
}
@media (min-width: 950px) {
  #candis {
    list-style: none;
    display: flex;
    flex-direction: row;
    justify-content: space-around;
    align-items: center;
    flex-wrap: nowrap;
  }

  #candis li {
    width: 150px;
    height: 450px;
    margin: 0 10px;

    /* background-color: chocolate;*/
  }

  .imacandi {
    display: block;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    margin: 0 auto 10px;
    border: 2px solid #fff;
    -moz-box-shadow: 1px 2px 5px 0px #888;
    -webkit-box-shadow: 1px 2px 5px 0px #888;
    box-shadow: 1px 2px 5px 0px #888;
  }

  .nom_candi {
    display: block;
    height: 50px;
    /*background-color: cadetblue;*/
    font-size: 11px;
  }

  #voto_m {
    display: none;
  }

  #candis li .barraprog {
    display: block;
    position: relative;
    width: 75px;
    height: 225px;
    margin: 0 auto;
    background: #ebebeb;
    -moz-border-radius: 3px 3px 0px 0px;
    -webkit-border-radius: 3px 3px 0px 0px;
    border-radius: 3px 3px 0px 0px;
  }

  #candis li .barraprog .barrcont {
    position: absolute;
    bottom: 1px;
    left: 0;
    width: 75px;
    height: 100px;
    text-align: center;
    background: rgb(0, 0, 0);
    -moz-border-radius: 3px 3px 0px 0px;
    -webkit-border-radius: 3px 3px 0px 0px;
    border-radius: 3px 3px 0px 0px;
    /* -webkit-transition: 1.5s all;
        -webkit-animation-duration: 1.5s;
        -webkit-animation-name: animationProgress; */
  }

  #candis li .barraprog .barrcont i {
    font-size: 18px;
    color: rgb(33, 6, 187);
    -webkit-transition: 0.5s all;
    -webkit-animation-duration: 0.5s;
    -webkit-animation-name: animationNumberProgress;
    transition: 0.5s all;
    animation-duration: 0.5s;
    animation-name: animationNumberProgress;
  }

  #candis li .barraprog .barrcont b {
    display: block;
    position: absolute;
    top: -30px;
    left: 10px;

    font-size: 13px;
    font-weight: bold;
    color: rgb(0, 0, 0);
    text-align: center;
  }

  #candis li .nome {
    display: block;
    width: 100%;
    /*height:35px;*/
    height: 120px;
    padding-top: 5px;
    margin: 0 auto;
    font-family: Arial, Helvetica, Sans-serif;
    font-size: 12px;
    color: #222;
    font-weight: bold;

    text-align: center;
    /*background: rgb(192, 161, 161);*/
    /*border-top: 3px solid gray;*/
    /*-moz-border-radius: 0px 0px 3px 3px;
        -webkit-border-radius: 0px 0px 3px 3px;
        border-radius: 0px 0px 3px 3px;*/
  }

  #candis li .nome .divlogo {
    display: flex;
    flex-wrap: wrap;
    justify-content: center; /*flex-start*/
  }

  #candis li .nome .divlogo img {
    display: block;
    margin: 1px;
  }

  #candis li .nome strong {
    display: block;
    font-size: 12px;
    margin-top: 16px;
  }

  .casillasdiv {
    width: 100%;
    display: block;
    height: 300px;
    /* max-width: 1000px; */
    overflow-x: auto;
    overflow-y: auto;
    /*white-space: wrap;*/
    white-space: nowrap;
  }

  /****************/

  .profile-btn.activo {
    background-color: var(--primary-color);
    color: white;
  }

  .bloque_b {
    /*margin: 1em;*/
    /*padding: 1em;*/
    /*position: relative;*/
    /*top: 2em;*/
    /*color: blueviolet;*/
    /*-webkit-transition: all 0.4s ease;
        transition: all 0.4s ease;*/
    border-radius: 0.5em;
    /*background-color: red;*/
    opacity: 0;
    margin: 15px;
    /*
        -webkit-transform: translateY(50%);
                transform: translateY(50%);
        -webkit-transition: all 0.5s ease;
        transition: all 0.5s ease;*/
    display: none;
    background-color: var(--theme-color);
  }

  .bloque_b.activo {
    opacity: 1;
    -webkit-transform: translateY(0%);
    transform: translateY(0%);
    display: block;
  }

  /**************/
  .sidebar-select-title {
    color: var(--revocacion-dark);
    text-align: left;
    margin-top: 1em;
    padding-left: 0.2em;
    padding-bottom: 0.3em;
  }
}

@media screen and (max-width: 900px) {
  .bloque_b {
    display: none;
  }

  .bloque_b.activo {
    display: block;
  }

  #candis {
    flex-flow: wrap row;
  }

  .reccotdiv {
    padding: 0;
  }
}