body {
 font-family: 'Poppins', sans-serif; 
  background: #f5f7fa;
  margin: 0;
 /* padding: 20px; */
  color: #333;
}

h1 {
  text-align: center;
  color: #192854;
}

button {
  background: #192854;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 5px;
  cursor: pointer;
  margin-left: 10px;
  transition: background 0.3s ease;
}

button:hover {
  background: #0d1a45;
}

/* ==== Lista de denuncias ==== */
/*
.lista-denuncias {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  gap: 15px;
}
*/

.lista-denuncias {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding-left: 1rem !important;
  padding-right: 1rem !important;
}



/*cambio aqui*/
.denuncia-card {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  padding: 20px;
}

.denuncia-header {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
  align-items: start;
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
  margin-bottom: 15px;
}

.denuncia-header h4 {
  color: #04a8fa;
  margin: 0 0 5px 0;
}

.denuncia-header .nivel-tag {
  background: #e6f4fb;
  color: #04a8fa;
  padding: 5px 10px;
  border-radius: 15px;
  font-weight: bold;
}

.denuncia-header .nivel-tag2 {
  background: #f3be00;
  color: #fff;
  padding: 5px 10px;
  border-radius: 15px;
  font-weight: bold;
}


.denuncia-header .nivel-tag3 {
  background: #7DCE30;
  color: #fff;
  padding: 5px 10px;
  border-radius: 15px;
  font-weight: bold;
}

.denuncia-header .nivel-tag4 {
  background: #307bab;
  color: #fff;
  padding: 5px 10px;
  border-radius: 15px;
  font-weight: bold;
}

/*cambio aqui*/
.denuncia-card:hover {
  transform: translateY(-4px);
}

/*aqui se cambio */
.denuncia-card p {
  margin: 4px 0;
  font-size: 15px;
}
.denuncia-card strong {
  color: #04a8fa;
}

/*cambio aqui*/
.denuncia-card h3 {
  margin-top: 0;
  font-size: 18px;
  color: #192854;
}

.complaintCard-tag {
  background: #04a8fa;
  color: #fff;
  padding: 3px 10px;
  border-radius: 50px;
  font-size: 15px;
  text-transform: uppercase;
  font-weight: 700;
}



.denuncia-header .fecha-reporte {
  text-align: right;
  font-size: 0.9em;
  color: #333;
}

.denuncia-body {
  display: flex;
  flex-wrap: wrap; /* para que se ajusten en responsive */
  gap: 20px; /* espacio entre columnas */
}

.denuncia-body .nivel-tag {
  background: #e6f4fb;
  color: #04a8fa;
  padding: 5px 10px;
  border-radius: 15px;
  font-weight: bold;
}

.denuncia-body div {
  flex: 1; /* cada div ocupa el mismo ancho */
  min-width: 200px; /* ancho mínimo para no deformarse */
}

.denuncia-body h4 {
  color: #04a8fa;
  margin: 15px 0 5px;
}

.denuncia-body p {
  margin: 5px 0;
}

.denuncia-body {
  display: flex;
  flex-direction: column; /* acomoda en columnas: comentario arriba, fila secundaria abajo */
  gap: 20px;
}

.comentario-full {
  width: 100%; /* ocupa toda la fila */
}

.comentario-full p {
  max-height: 120px;  /* altura máxima visible del comentario */
  overflow: hidden;   /* oculta el texto que se pasa */
  text-overflow: ellipsis;
  display: -webkit-box;
  /*-webkit-line-clamp: 6;  número de líneas visibles */
  -webkit-box-orient: vertical;
}

.datos-secundarios {
  display: flex;
  flex-wrap: wrap; /* se acomodan bien en responsive */
  gap: 20px;
}

.datos-secundarios > div {
  flex: 1;
  min-width: 150px; /* ancho mínimo para responsive */
}

.imagenes {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.imagenes img {
  max-width: 120px;
  border-radius: 5px;
  cursor: pointer;
}

.denuncia-card .fa-map-marker-alt {
  color: #f3be00;
}

.denuncia-card .imagenes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.denuncia-card .imagenes img {
  width: 80px;
  height: 80px;
  object-fit: cover;
  border-radius: 4px;
  cursor: pointer;
  transition: transform 0.2s ease;
}

.denuncia-card .imagenes img:hover {
  transform: scale(1.05);
}

.denuncia-card .card-footer {
  margin-top: 12px;
  text-align: right;
}

.denuncia-card .btn-reportar {
  background: #f3be00;
  color: #000;
  border: none;
  padding: 8px 16px;
  border-radius: 50px;
  cursor: pointer;
  font-weight: bold;
  transition: background 0.2s;
}

.denuncia-card .btn-reportar:hover {
  background: #e0aa00;
}

/* ==== Modal ==== */
.modal {
  display: none;
  position: fixed;
  /*z-index: 10; */
  left: 0; top: 0; width: 100%; height: 100%;
  background-color: rgba(0,0,0,0.6);
  overflow: auto;
}

.modal-content {
  background: #fff;
  margin: 5% auto;
  padding: 30px;
  border-radius: 10px;
  width: 90%;
  max-width: 600px;
  position: relative;
  animation: fadeIn 0.3s ease-in-out;
}

.cerrar {
  position: absolute;
  right: 20px;
  top: 15px;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
  color: #aaa;
}

.cerrar:hover {
  color: #000;
}

@keyframes fadeIn {
  from {opacity: 0; transform: translateY(-10px);}
  to {opacity: 1; transform: translateY(0);}
}

/* ==== Formulario ==== */
form {
  background: #ffffff;
  padding: 25px 30px;
  border-radius: 10px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  max-width: 600px;
  margin: 0 auto;
  text-align: left;
}

form h2 {
  margin-top: 0;
  color: #192854;
  text-align: center;
  margin-bottom: 20px;
}

form label {
  display: block;
  margin-top: 15px;
  font-weight: bold;
  color: #333;
}

form input[type="text"],
form input[type="email"],
form input[type="file"],
form select,
form textarea {
  width: 100%;
  padding: 10px 12px;
  margin-top: 5px;
  border: 1px solid #ccc;
  border-radius: 5px;
  font-family: inherit;
  font-size: 14px;
  transition: border 0.3s ease;
}

form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="file"]:focus,
form select:focus,
form textarea:focus {
  border-color: #192854;
  outline: none;
}

form textarea {
  resize: vertical;
  min-height: 100px;
}

form button {
  background: #192854;
  color: #fff;
  border: none;
  padding: 14px;
  border-radius: 5px;
  font-size: 16px;
  margin-top: 25px;
  /* aqui es 100% */
  width: 25%;
  cursor: pointer;
  transition: background 0.3s ease;
}

form button:hover {
  background: #0d1a45;
}

@media (max-width: 600px) {
  .modal-content {
    padding: 20px;
  }
  form {
    padding: 20px;
  }
}

/* Contenedor general */
.form-reportar {
  max-width: 500px;
  background: #fff;
  /*margin tenia 50px*/
  margin: 20px auto;
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 5px 20px rgba(0,0,0,0.1);
  /*font-family: Arial, sans-serif; */
}

/* Título */
.form-reportar h2 {
  color: #f7b500; /* Amarillo como en tu imagen */
  margin-bottom: 20px;
}

/* Grupo de campos */
.form-group {
  margin-bottom: 15px;
}

.form-group label {
  display: block;
  margin-bottom: 6px;
  font-weight: bold;
  color: #555;
}

.form-group input,
.form-group textarea,
.form-group select {
  width: 100%;
  padding: 10px 12px;
  border: 2px solid #00baff;
  border-radius: 8px;
  font-size: 14px;
  outline: none;
  transition: border-color 0.3s;
}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus {
  border-color: #0077cc;
}

.form-group small {
  font-size: 12px;
  color: #888;
}

.contador {
  font-size: 12px;
  color: #666;
  margin-top: 5px;
}

/* Botón */
.btn-submit {
  display: inline-block;
  width: 100%;
  padding: 12px;
  background: #ccc;
  border: none;
  border-radius: 25px;
  color: #fff;
  font-weight: bold;
  cursor: pointer;
  transition: background 0.3s;
}

.btn-submit:hover {
  background: #aaa;
}











    .paginacion { text-align: center; margin: 30px 0; }
    .paginacion a { margin: 0 5px; padding: 8px 12px; background: #192854; color: #fff; border-radius: 4px; text-decoration: none; }
    .paginacion a:hover { background: #0d1a45; }


    #modalImagen { display: none; position: fixed; z-index: 1000; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.8); justify-content: center; align-items: center; }
    #modalImagen img { max-width: 90%; max-height: 90%; border-radius: 8px; box-shadow: 0 2px 10px #000; }
    #modalImagen .cerrar { position: absolute; top: 20px; right: 30px; color: #fff; font-size: 35px; font-weight: bold; cursor: pointer; }
    #modalImagen .cerrar:hover { color: #ccc; }

    #btnAbrirModal { 
      /*  background: #192854; */
       background: #f3be00;
        color: #fff; 
        border: none; 
        padding: 12px 24px; 
        border-radius: 5px; 
        cursor: pointer; 
        margin-top: 30px; }

       /*  aqui es el amarillo  f3be00 */    
    #btnAbrirModal:hover { background: #e4b50d; }


    .modal { display: none; position: fixed; /*z-index: 10; */ left: 0; top: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,0.6); overflow: auto; }
    .modal-content { background: #fff; 
        margin: 5% auto;
         padding: 1px; 
         border-radius: 10px; 
         width: 90%; 
         max-width: 600px; 
         position: relative; 
        }
    .cerrar-reportar { position: absolute; right: 20px; top: 15px; font-size: 28px; font-weight: bold; cursor: pointer; color: #aaa; }
    .cerrar-reportar:hover { color: #000; }

    
    

  .complaint-floater-container {
    position: fixed;
    z-index: 2;
    right: 40px;
    bottom: 40px;
    color: #fff;
    font-family: Raleway;
    font-style: normal;
    font-weight: 700;
    font-size: 18px;
    background-color: #f3be00;
    box-shadow: 2px 4px 10px #1456801a;
    border-radius: 20px;
    padding: 10px 30px;
    font-family: 'Poppins', sans-serif; 
}

 
 

.star-rating {
  display: flex;
  justify-content: center;
  flex-direction: row-reverse; /* clave */
  gap: 5px;
  font-size: 2rem;
}
.star-rating input[type="radio"] {
  display: none;
}
.star-rating label {
  color: #ccc;
  cursor: pointer;
  padding: 0 5px;
  transition: color 0.2s;
}
.star-rating input[type="radio"]:checked ~ label,
.star-rating label:hover,
.star-rating label:hover ~ label {
  color: gold;
}










    