@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,300,600,700");

html, body{
	background: #fff!important;
	-ms-text-size-adjust:100%;
	-webkit-text-size-adjust:100%;
	height:100%;
    width: 100%;
	margin: 0px;
		/* tipografia */	
		
font-family: Open Sans,Arial,sans-serif;


	font-size: 12px;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	line-height: 20px;
	
}
p, span{
	margin: 0 0 18px; 
	
	 color: #111;
	 
	 font-size: 1em; 
	 line-height: 28px;

}

h1,h2{
    text-transform: uppercase;
    color: #006880;
    margin:0;
    line-height: 40px;
	font-weight: 900;

}
	/* colores link */
	a:link {
color: #3399FF;
}

/* visited link */
a:visited {
 color: #3399FF;
}

/* mouse over link */
a:hover {
  color: #3399FF;
}

/* selected link */
a:active {
    color: yellow;
} 



#top_header A{
color: #FFF;
	text-decoration:SOLID 1PX;
	line-height: bold;
}
#top_header {
	
min-width: 1000px;
background-color: #1E1E1E;
width:100%;
height: 40px;
vertical-align: middle;
color: #FFF;
		
/* tipografia */	

font-size: 10px;
line-height: 40px;
	
}
.icono{
width:16px;height:16px;padding:3px;vertical-align:middle;    
}
.icono2{
width:21px;height:21px;padding:3px;vertical-align:middle;    
}
#pdf{
width:32px;height:32px;padding:3px;vertical-align:middle;   
}

#top_header_left ul {
    padding: 0;
	margin:0px;
}

#top_header_left li {
    display: inline-block;
	 line-height: 40px;
	 margin:0px;
	 
}

#top_header_left li a {
    
    color: white;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 4px 4px 0 0;
}

#top_header_left li a:hover {
    background-color: #006880;
}

#top_header_left {
float: left;
margin-left: 15px;

}
#top_header_right {
float: right;
margin-right: 15px;

}

#header {
/*background: #003B77;*/
background-image: url("/images/cabecera.jpg");
min-width: 1000px;
width: 100%;
height: 125px;
margin:0 auto;
top: 0px;
left: 0px;
color: #ffffff;

}


#header img{
width: 450px;
height: 84.5px;
border: 0px;
margin:15px;


}
.header_sesion{
    padding: 20px;
		margin:0px;
	
	}

	  .dropdown{
	  cursor: pointer;
	  }

#body_table {
	min-width: 1000px;
display:table; 
width: 100%;

margin:0 auto;
overflow: hidden;
}
#body_tr {
display:table-row; 
}



      #body_td1 {
          background: #EFEFEA;

          width: 240px;
          height: 100%;
          box-sizing: border-box;
          -moz-box-sizing: border-box;
		  display:table-cell; 
      }
      #body_td1 ul {
		 
          margin: 0;
          padding: 0;
          list-style: none;
      }
      #body_td1 ul li {
          margin: 0;
      }
	  

      #body_td1 ul li a  {
		            
          padding: 15px 20px 10px 30px;
          font-size: 16px;
          font-weight: 600;
 color: #006880;
text-transform: uppercase;
          text-decoration: none;
          display: block;
          border-bottom: 1px solid #525252;
          -webkit-transition:  background 0.3s ease-in-out;
          -moz-transition:  background 0.3s ease-in-out;
          -ms-transition:  background 0.3s ease-in-out;
          -o-transition:  background 0.3s ease-in-out;
          transition:  background 0.3s ease-in-out;
      }
	  
 #body_td1   ul li ul li a  {
	
          padding: 10px 15px 5px 20px;
          font-size: 12px;
		  line-height:15px;
          font-weight: 600;
 color: #006880;
text-transform: capitalize ;
          text-decoration: none;
          display: block;
          border-bottom: 1px solid #525252;
          -webkit-transition:  background 0.3s ease-in-out;
          -moz-transition:  background 0.3s ease-in-out;
          -ms-transition:  background 0.3s ease-in-out;
          -o-transition:  background 0.3s ease-in-out;
          transition:  background 0.3s ease-in-out;
      }
	  
      #body_td1 ul li a:hover  {
          background: #BDBDB8;
		  
      }
	
#body_td1 ul li ul{      
  display: none; 
  position: absolute;
  background: #EFEFEA;  
  z-index: 10;
  left: 240px;	
  top: 165px;
  max-width: 200px;
  border: 1px solid #ddd;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

#body_td2 {
	display: table-cell; 
	background: #ffffff;
	padding: 20px;
	vertical-align: top;
	min-width: 0; /* Evita overflow */
	width: 100%;
}

/* Contenedor principal con mejor layout */
#contenedor_cuerpo {
	max-width: 100%;
	margin: 0;
	padding: 0 20px;
	box-sizing: border-box;
	overflow-x: auto; /* Maneja contenido ancho */
}

#navegacion {
background: #525252;
text-transform: uppercase;
padding-left:5px;
font-family: Arial,Helvetica Neue,Helvetica,sans-serif;
	font-size: 10px;
	font-style: normal;
	font-variant: normal;
	font-weight: 400;
	height:20px;
	color: white;
	}
#navegacion  a{
text-decoration:none;   
color: white;
}
	
#display_contenido {

margin-left:20px;
padding:20px;
}

/* === NUEVO DISEÑO MODERNO PARA INDEX.PHP === */

/* Hero Section */
.hero-container {
    background: linear-gradient(145deg, #f8fafe 0%, #ffffff 100%);
    border: 1px solid #e8f2ff;
    border-radius: 25px;
    padding: 0;
    margin: -20px -20px 40px -20px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.08);
    overflow: hidden;
    position: relative;
}

.hero-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #006880, #4B99AD, #006880);
    border-radius: 25px 25px 0 0;
}

.hero-content {
    display: flex;
    align-items: center;
    min-height: 450px;
    padding: 50px 60px;
    gap: 60px;
}

.hero-text {
    flex: 1;
    color: #333;
    z-index: 2;
}

.hero-title {
    font-size: 3.2rem;
    font-weight: 800;
    margin: 0 0 15px 0;
    color: #006880;
    letter-spacing: -1px;
}

.hero-subtitle {
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0 0 30px 0;
    color: #4B99AD;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.hero-description {
    font-size: 1.1rem;
    line-height: 1.7;
    margin: 0 0 40px 0;
    color: #666;
    max-width: 480px;
}

.hero-stats {
    display: flex;
    gap: 25px;
    margin-top: 40px;
}

.stat-item {
    text-align: center;
    background: #ffffff;
    padding: 25px 20px;
    border-radius: 20px;
    border: 2px solid #f0f8ff;
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
    transition: all 0.3s ease;
    flex: 1;
}

.stat-item:hover {
    transform: translateY(-8px);
    border-color: #006880;
    box-shadow: 0 15px 35px rgba(0,104,128,0.15);
}

.stat-number {
    font-size: 2.8rem;
    font-weight: 900;
    color: #006880;
    margin-bottom: 8px;
    display: block;
}

.stat-label {
    font-size: 0.85rem;
    color: #666;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.hero-image {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}

.image-container {
    position: relative;
    border-radius: 25px;
    overflow: hidden;
    box-shadow: 0 20px 40px rgba(0,0,0,0.15);
    transition: transform 0.3s ease;
    border: 3px solid #ffffff;
}

.image-container:hover {
    transform: scale(1.03);
}

.hero-img {
    width: 100%;
    max-width: 420px;
    height: 320px;
    object-fit: cover;
    display: block;
}

.image-overlay {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(transparent, rgba(0,104,128,0.9));
    padding: 25px;
    color: white;
}

.image-caption {
    font-size: 1rem;
    font-weight: 600;
    text-align: center;
    text-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

/* Features Section */
.features-section {
    padding: 50px 0;
}

.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 25px;
    margin-top: 30px;
}

.feature-card {
    background: #ffffff;
    padding: 35px 25px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 8px 25px rgba(0,0,0,0.06);
    transition: all 0.3s ease;
    border: 2px solid #f8fafe;
    position: relative;
}

.feature-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 35px rgba(0,104,128,0.12);
    border-color: #006880;
}

.feature-icon {
    font-size: 2.5rem;
    margin-bottom: 20px;
    opacity: 0.8;
    transition: all 0.3s ease;
}

.feature-card:hover .feature-icon {
    opacity: 1;
    transform: scale(1.1);
}

.feature-card h3 {
    font-size: 1.4rem;
    font-weight: 700;
    margin: 0 0 15px 0;
    color: #006880;
}

.feature-card p {
    font-size: 0.95rem;
    line-height: 1.6;
    color: #666;
    margin: 0;
}

/* Responsive Design */
@media (max-width: 768px) {
    .hero-content {
        flex-direction: column;
        padding: 40px 30px;
        text-align: center;
    }
    
    .hero-title {
        font-size: 2.5rem;
    }
    
    .hero-subtitle {
        font-size: 1.2rem;
    }
    
    .hero-stats {
        justify-content: center;
        flex-wrap: wrap;
        gap: 15px;
    }
    
    .stat-item {
        min-width: 120px;
    }
    
    .image-container {
        margin-top: 30px;
        max-width: 350px;
    }
    
    .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

/* === ESTILOS MODERNIZADOS PARA CONSULTAS.PHP === */

/* Título de página */
#display_contenido h1 {
    font-size: 2.5rem;
    font-weight: 700;
    color: #006880;
    margin: 0 0 30px 0;
    padding-bottom: 15px;
    border-bottom: 3px solid #e8f2ff;
    position: relative;
}

#display_contenido h1::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 60px;
    height: 3px;
    background: #006880;
    border-radius: 2px;
}

/* Contenedor principal de consultas */
#display_contenido {
    padding: 20px 30px !important;
    margin: 0 !important;
    min-height: calc(100vh - 200px);
}

/* Formulario de consultas modernizado */
.form-style-1_consultas {
    background: #ffffff;
    border: 2px solid #f0f8ff;
    border-radius: 20px;
    padding: 30px 40px;
    margin: 20px 0 30px 0;
    box-shadow: 0 8px 25px rgba(0,0,0,0.08);
    display: block;
    column-count: unset;
    text-align: left;
    clear: both;
    overflow: visible;
}

.form-style-1_consultas li {
    padding: 8px 0;
    display: flex;
    align-items: center;
    list-style: none;
    margin: 15px 0;
    gap: 20px;
    flex-wrap: wrap;
}

.form-style-1_consultas label {
    margin: 0;
    padding: 5px 0;
    width: auto;
    min-width: 140px;
    display: inline-block;
    font-weight: 600;
    color: #333;
    font-size: 0.95rem;
    white-space: nowrap;
}

.form-style-1_consultas select,
.form-style-1_consultas input[type=text],
.form-style-1_consultas input[type=number] {
    width: auto;
    min-width: 220px;
    max-width: 300px;
    box-sizing: border-box;
    border: 2px solid #e8f2ff;
    border-radius: 12px;
    padding: 12px 16px;
    margin: 0;
    font-size: 0.95rem;
    transition: all 0.3s ease;
    outline: none;
    background: #ffffff;
}

.form-style-1_consultas select:focus,
.form-style-1_consultas input[type=text]:focus,
.form-style-1_consultas input[type=number]:focus {
    border-color: #006880;
    box-shadow: 0 0 0 3px rgba(0,104,128,0.1);
    transform: translateY(-2px);
}

/* Botones modernizados */
.form-style-1_consultas_botones {
    list-style: none;
    padding: 20px 0;
    margin: 20px 0;
    clear: both;
    overflow: hidden;
}

.form-style-1_consultas_botones button,
.form-style-1_consultas_botones input[type=submit],
.form-style-1_consultas_botones input[type=button] {
    background: linear-gradient(135deg, #006880 0%, #4B99AD 100%);
    color: white;
    border: none;
    border-radius: 12px;
    padding: 12px 24px;
    font-size: 0.95rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(0,104,128,0.2);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 5px 10px 5px 0;
}

.form-style-1_consultas_botones button:hover,
.form-style-1_consultas_botones input[type=submit]:hover,
.form-style-1_consultas_botones input[type=button]:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0,104,128,0.3);
    background: linear-gradient(135deg, #004d5c 0%, #357a8a 100%);
}

/* Contenedores de filtros */
#filtro_left,
#filtro_right {
    background: #f8fafe;
    border: 1px solid #e8f2ff;
    border-radius: 15px;
    padding: 15px 25px;
    margin: 15px 0;
    font-weight: 600;
    color: #333;
    display: inline-block;
    min-height: 20px;
    line-height: 1.4;
    word-wrap: break-word;
    overflow: visible;
}

#filtro_right {
    text-align: right;
    float: right;
    margin-right: 0;
    clear: right;
}

#filtro_left {
    float: left;
    margin-left: 0;
    clear: left;
}

/* Clearfix para evitar problemas de float */
.form-style-1_consultas_botones::after,
#display_contenido::after {
    content: "";
    display: table;
    clear: both;
}

/* Tabla de consultas modernizada */
#data_consultas {
    width: 100%;
    font-size: 0.95rem;
    border-collapse: separate;
    border-spacing: 0;
    background: #ffffff;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
    margin: 40px 0;
    border: 1px solid #f0f4f8;
    clear: both;
}

#data_consultas thead {
    background: linear-gradient(135deg, #006880 0%, #4B99AD 100%);
    border: none;
}

#data_consultas th {
    padding: 20px 18px;
    background: transparent;
    color: white;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 0.8rem;
    border: none;
    text-align: center;
    white-space: nowrap;
    position: relative;
}

#data_consultas th:first-child {
    border-radius: 0;
    padding-left: 25px;
}

#data_consultas th:last-child {
    border-radius: 0;
    padding-right: 25px;
}

#data_consultas tbody {
    border: none;
}

#data_consultas td {
    padding: 20px 18px;
    border: none;
    border-bottom: 1px solid #e8f4f8;
    text-align: center;
    vertical-align: middle;
    transition: all 0.3s ease;
    word-wrap: break-word;
    color: #2d3748;
    font-weight: 500;
}

#data_consultas td:first-child {
    padding-left: 25px;
    font-weight: 700;
    color: #006880;
    font-size: 1.1rem;
}

#data_consultas td:last-child {
    padding-right: 25px;
}

#data_consultas tr:nth-child(even) {
    background: #f0f8ff;
}

#data_consultas tr:nth-child(odd) {
    background: #ffffff;
}

#data_consultas tr:hover {
    background: rgba(240, 244, 248, 0.5);
    transform: translateY(-1px);
    box-shadow: 0 6px 20px rgba(0,104,128,0.12);
}

#data_consultas tr:last-child td {
    border-bottom: none;
}

#data_consultas tr:last-child td:first-child {
    border-bottom-left-radius: 20px;
}

#data_consultas tr:last-child td:last-child {
    border-bottom-right-radius: 20px;
}

/* Imágenes en la tabla modernizadas */
#data_consultas img {
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0,104,128,0.1);
    transition: all 0.3s ease;
    max-width: 90px;
    height: auto;
    border: 2px solid #e8f4f8;
}

#data_consultas img:hover {
    transform: scale(1.03);
    box-shadow: 0 4px 12px rgba(0,104,128,0.2);
    border-color: #4B99AD;
}

/* Enlaces en la tabla modernizados */
#data_consultas a {
    color: #006880;
    text-decoration: none;
    font-weight: 600;
    transition: all 0.3s ease;
    padding: 8px 12px;
    border-radius: 8px;
    display: inline-block;
}

#data_consultas a:hover {
    color: #ffffff;
    background: #006880;
    text-decoration: none;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0,104,128,0.3);
}

/* Estilo para la columna de tipología */
#data_consultas td:nth-child(4) {
    font-size: 0.85rem;
    color: #4a5568;
    font-style: italic;
    line-height: 1.4;
}

/* Iconos PDF simplificados */
#data_consultas img[src*="pdf"] {
    width: 28px;
    height: 28px;
    opacity: 0.7;
    transition: all 0.3s ease;
    filter: none;
    border: none;
    border-radius: 6px;
    box-shadow: none;
    background: none;
    padding: 0;
    margin: 0;
}

#data_consultas img[src*="pdf"]:hover {
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0,104,128,0.25);
    background: #e8f4f8;
}

/* Paginación */
#paginas-navegacion {
    font-size: 1.1rem;
    text-align: center;
    margin: 30px 0;
    padding: 20px;
    clear: both;
}

#paginas-navegacion a {
    display: inline-block;
    padding: 12px 18px;
    margin: 0 5px;
    background: #ffffff;
    color: #006880;
    text-decoration: none;
    border: 2px solid #e8f2ff;
    border-radius: 12px;
    font-weight: 600;
    transition: all 0.3s ease;
    display: inline-block;
    box-shadow: 0 2px 8px rgba(0,104,128,0.1);
}

#paginas-navegacion a:hover {
    background: #006880;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0,104,128,0.2);
}

/* Responsive para consultas */
@media (max-width: 768px) {
    #display_contenido {
        padding: 15px 20px !important;
    }
    
    .form-style-1_consultas {
        padding: 20px 25px;
        margin: 15px 0;
    }
    
    .form-style-1_consultas li {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        margin: 12px 0;
    }
    
    .form-style-1_consultas label {
        min-width: auto;
        width: 100%;
    }
    
    .form-style-1_consultas select,
    .form-style-1_consultas input[type=text],
    .form-style-1_consultas input[type=number] {
        width: 100%;
        min-width: auto;
        max-width: none;
    }
    
    #data_consultas {
        font-size: 0.8rem;
        margin: 20px 0;
    }
    
    #data_consultas th,
    #data_consultas td {
        padding: 10px 8px;
    }
    
    #filtro_left,
    #filtro_right {
        float: none;
        text-align: center;
        margin: 10px 0;
        max-width: none;
        display: block;
    }
    
    div[style*="text-align: left;margin-top: 10px;"] {
        float: none !important;
        margin: 15px 0 !important;
        max-width: none !important;
    }
}

/* ========================================
   VER_EPIGRAFE.PHP - DISEÑO MINIMALISTA
   ======================================== */

/* Título principal - Minimalista */
#display_contenido h1 {
    color: #006880 !important;
    font-size: 2.2rem !important;
    font-weight: 300 !important;
    margin: 0 0 40px 0 !important;
    padding: 0 0 20px 0 !important;
    border-bottom: 2px solid #f0f4f8 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
    background: none !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}

#display_contenido h1::before {
    display: none !important;
}

/* Subtítulo - Limpio y simple */
#display_contenido h2 {
    color: #4a5568 !important;
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    margin: 0 0 30px 0 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#display_contenido h2 a {
    color: #006880 !important;
    text-decoration: none !important;
    margin-left: 8px !important;
    font-weight: 600 !important;
    transition: color 0.2s ease !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    display: inline !important;
    box-shadow: none !important;
}

#display_contenido h2 a:hover {
    color: #4B99AD !important;
    background: none !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Lista ordenada - Minimalista */
#display_contenido ol {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 40px 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#display_contenido ol li {
    padding: 12px 0 !important;
    border-bottom: 1px solid #f8fafc !important;
    position: relative !important;
    padding-left: 50px !important;
    transition: all 0.2s ease !important;
    background: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    margin: 0 !important;
    border-radius: 0 !important;
}

#display_contenido ol li:last-child {
    border-bottom: none !important;
}

#display_contenido ol li::before {
    display: none !important;
}

#display_contenido ol li:hover {
    padding-left: 0 !important;
    background: rgba(240, 244, 248, 0.3) !important;
    border-radius: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
    transform: none !important;
}

#display_contenido ol li:hover::before {
    display: none !important;
}

/* Enlaces en lista - Minimalistas */
#display_contenido ol li a {
    color: #2d3748 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    transition: color 0.2s ease !important;
    line-height: 1.5 !important;
    display: block !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

#display_contenido ol li a:hover {
    color: #006880 !important;
    background: none !important;
    transform: none !important;
    box-shadow: none !important;
    padding-left: 0 !important;
}

/* Total de elementos - Sutil */
#display_contenido p {
    color: #718096 !important;
    font-size: 0.95rem !important;
    margin: 30px 0 !important;
    font-weight: 500 !important;
    text-align: left !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

/* Botón imprimir - Minimalista */
.centrar {
    text-align: center !important;
    margin: 50px 0 30px 0 !important;
    background: none !important;
    padding: 0 !important;
}

.centrar a {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #006880 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    font-size: 0.95rem !important;
    padding: 12px 25px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    transition: all 0.2s ease !important;
    background: #ffffff !important;
    box-shadow: none !important;
}

.centrar a:hover {
    background: #f8fafc !important;
    border-color: #006880 !important;
    transform: translateY(-1px) !important;
    box-shadow: none !important;
}

.centrar a img {
    width: 16px !important;
    height: 16px !important;
    opacity: 0.7 !important;
    transition: opacity 0.2s ease !important;
    filter: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.centrar a:hover img {
    opacity: 1 !important;
    transform: none !important;
    background: none !important;
}

/* Responsive minimalista */
@media (max-width: 768px) {
    #display_contenido h1 {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }
    
    #display_contenido ol li {
        padding-left: 0 !important;
    }
    
    #display_contenido ol li::before {
        display: none !important;
    }
}

/* ========================================
   INFORMES.PHP - DISEÑO MINIMALISTA
   ======================================== */

/* Título principal informes */
#display_contenido h1 {
    color: #006880 !important;
    font-size: 2.2rem !important;
    font-weight: 300 !important;
    margin: 0 0 50px 0 !important;
    padding: 0 0 20px 0 !important;
    border-bottom: 2px solid #f0f4f8 !important;
    letter-spacing: 3px !important;
    text-transform: uppercase !important;
}

/* Contenedor principal */
#content {
    padding: 0 !important;
    margin: 0 !important;
}

/* Tablas de informes - Base minimalista */
#data {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 20px 0 !important;
    background: #ffffff !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid #f0f4f8 !important;
}

/* Headers de sección (Generales y Resúmenes, etc.) */
#data thead tr:first-child th {
    background: linear-gradient(135deg, #006880 0%, #4B99AD 100%) !important;
    border: none !important;
}

/* Headers de columnas */
#data thead th {
    background: #f8fafc !important;
    color: #4a5568 !important;
    padding: 15px 20px !important;
    font-size: 0.9rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-bottom: 2px solid #e2e8f0 !important;
    border-right: 1px solid #f0f4f8 !important;
    text-align: left !important;
}

#data thead th:last-child {
    border-right: none !important;
}

#data thead th.reducido {
    width: 80px !important;
    text-align: center !important;
}

#data thead th.nombre_informes {
    width: auto !important;
    min-width: 400px !important;
}

/* Filas de datos */
#data tbody tr {
    transition: all 0.2s ease !important;
    border-bottom: 1px solid #f8fafc !important;
}

#data tbody tr:nth-child(even) {
    background: #fafbfc !important;
}

#data tbody tr:nth-child(odd) {
    background: #ffffff !important;
}

#data tbody tr:hover {
    background: rgba(240, 244, 248, 0.5) !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05) !important;
}

/* Celdas de datos */
#data tbody td {
    padding: 16px 20px !important;
    border-right: 1px solid #f0f4f8 !important;
    vertical-align: middle !important;
    border-bottom: none !important;
}

#data tbody td:last-child {
    border-right: none !important;
}

/* Spans dentro de celdas */
#data tbody td span {
    color: #2d3748 !important;
    font-size: 0.95rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
}

/* Códigos (primera columna) */
#data tbody td:first-child span {
    color: #718096 !important;
    font-weight: 600 !important;
    font-family: monospace !important;
    font-size: 0.9rem !important;
}

/* Nombres de informes */
#data tbody td.nombre_informes span {
    color: #2d3748 !important;
    font-weight: 500 !important;
    font-size: 1rem !important;
}

/* Celdas centradas (PDF, DOC, XLS) */
#data tbody td:nth-child(3),
#data tbody td:nth-child(4),
#data tbody td:nth-child(5) {
    text-align: center !important;
    width: 80px !important;
}

/* Enlaces de iconos */
#data tbody td a {
    display: inline-block !important;
    padding: 8px !important;
    border-radius: 6px !important;
    transition: all 0.2s ease !important;
    text-decoration: none !important;
}

#data tbody td a:hover {
    background: rgba(0, 104, 128, 0.1) !important;
    transform: translateY(-1px) !important;
}

/* Iconos PDF y DOC */
#data tbody td img.icono2 {
    width: 18px !important;
    height: 18px !important;
    opacity: 0.7 !important;
    transition: all 0.2s ease !important;
    filter: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#data tbody td a:hover img.icono2 {
    opacity: 1 !important;
    transform: scale(1.1) !important;
}

/* Espaciado entre tablas */
#data + br {
    display: none !important;
}

/* Responsive para informes */
@media (max-width: 768px) {
    #data {
        font-size: 0.85rem !important;
    }
    
    #data thead th,
    #data tbody td {
        padding: 12px 15px !important;
    }
    
    #data thead th.nombre_informes {
        min-width: 250px !important;
    }
    
    #display_contenido h1 {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }
}

/* Última tabla sin margen inferior */
#data:last-of-type {
    margin-bottom: 30px !important;
}

/* ========================================
   GESTION_USUARIOS.PHP - DISEÑO ULTRA-MINIMALISTA
   ======================================== */

/* Título Gestión de Usuarios */
body #display_contenido h1 {
    color: #2d3748 !important;
    font-size: 1.8rem !important;
    font-weight: 400 !important;
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    border: none !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Container principal de usuarios - ULTRA LIMPIO */
body #display_contenido #container {
    display: block !important;
    margin-top: 20px !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: visible !important;
    box-shadow: none !important;
    border: none !important;
    clear: none !important;
    width: 100% !important;
}

/* Fila de cabeceras - ULTRA SIMPLE */
body #display_contenido #container .row {
    display: flex !important;
    width: 100% !important;
    border-bottom: 1px solid #e2e8f0 !important;
    transition: none !important;
    margin-bottom: 20px !important;
}

/* Cabeceras de columnas - SIN GRADIENTES */
body #display_contenido #container .cabecera {
    background: #f8fafc !important;
    color: #4a5568 !important;
    padding: 12px 16px !important;
    flex: 1 !important;
    border-right: 1px solid #e2e8f0 !important;
    text-align: left !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

body #display_contenido #container .cabecera:last-child {
    border-right: none !important;
}

body #display_contenido #container .cabecera label {
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #718096 !important;
    margin: 0 !important;
    cursor: default !important;
}

/* Filas de datos - ULTRA LIMPIO */
body #display_contenido #container .row_par,
body #display_contenido #container .row_impar {
    display: flex !important;
    width: 100% !important;
    transition: none !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 8px !important;
}

body #display_contenido #container .row_par {
    background: transparent !important;
}

body #display_contenido #container .row_impar {
    background: transparent !important;
}

body #display_contenido #container .row_par:hover,
body #display_contenido #container .row_impar:hover {
    background: #fafbfc !important;
    transform: none !important;
    box-shadow: none !important;
}

/* Columnas de datos - MINIMAL */
body #display_contenido #container .col2 {
    flex: 1 !important;
    padding: 12px 16px !important;
    border-right: 1px solid #f1f5f9 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    text-align: left !important;
}

body #display_contenido #container .col2:last-child {
    border-right: none !important;
}

/* Labels dentro de columnas - CLEAN */
body #display_contenido #container .col2 label {
    color: #4a5568 !important;
    font-size: 0.9rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    cursor: default !important;
    word-break: break-word !important;
}

/* Primera columna - Último Acceso */
body #display_contenido #container .row .col2:first-child label {
    color: #718096 !important;
    font-weight: 400 !important;
    font-family: monospace !important;
    font-size: 0.85rem !important;
}

/* Segunda columna - Usuario */
body #display_contenido #container .row .col2:nth-child(2) label {
    color: #2d3748 !important;
    font-weight: 500 !important;
}

/* Tercera columna - Nombre completo */
body #display_contenido #container .row .col2:nth-child(3) label {
    color: #4a5568 !important;
    font-weight: 400 !important;
}

/* Cuarta columna - Permisos */
body #display_contenido #container .row .col2:nth-child(4) label {
    color: #718096 !important;
    font-weight: 400 !important;
    background: none !important;
    padding: 0 !important;
    border-radius: 0 !important;
    font-size: 0.85rem !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Enlaces de acciones - ULTRA MINIMAL */
body #display_contenido #container .col2 a {
    color: #4a5568 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    font-size: 0.85rem !important;
    padding: 6px 12px !important;
    margin: 0 4px 0 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    transition: all 0.15s ease !important;
    display: inline-block !important;
    min-width: 60px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    text-align: center !important;
    background: #ffffff !important;
}

body #display_contenido #container .col2 a:hover {
    background: #f8fafc !important;
    color: #2d3748 !important;
    border-color: #cbd5e0 !important;
    transform: none !important;
    text-decoration: none !important;
}

/* Enlace Editar - AZUL SUTIL */
body #display_contenido #container .col2 a[href*="editar"],
body #display_contenido #container .col2 a[href*="edit"] {
    color: #3182ce !important;
    border-color: #bee3f8 !important;
}

body #display_contenido #container .col2 a[href*="editar"]:hover,
body #display_contenido #container .col2 a[href*="edit"]:hover {
    background: #ebf8ff !important;
    color: #2c5aa0 !important;
    border-color: #90cdf4 !important;
}

/* Enlace Eliminar - ROJO SUTIL */
body #display_contenido #container .col2 a[href*="eliminar"],
body #display_contenido #container .col2 a[href*="delete"] {
    color: #e53e3e !important;
    border-color: #feb2b2 !important;
}

body #display_contenido #container .col2 a[href*="eliminar"]:hover,
body #display_contenido #container .col2 a[href*="delete"]:hover {
    background: #fed7d7 !important;
    color: #c53030 !important;
    border-color: #fc8181 !important;
}

/* Botón Añadir Usuario - MINIMAL */
body #display_contenido a[href*="nuevo"] {
    background: none !important;
    color: #4a5568 !important;
    padding: 8px 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    font-size: 0.9rem !important;
    display: inline-block !important;
    margin-bottom: 20px !important;
    transition: none !important;
    box-shadow: none !important;
    padding: 8px 16px !important;
}

body #display_contenido a[href*="nuevo"]:hover {
    transform: none !important;
    box-shadow: none !important;
    background: #f8fafc !important;
    border-color: #cbd5e0 !important;
}

/* Responsive para gestión de usuarios */
@media (max-width: 768px) {
    body #display_contenido #container .row,
    body #display_contenido #container .row_par,
    body #display_contenido #container .row_impar {
        flex-direction: column !important;
    }
    
    body #display_contenido #container .cabecera,
    body #display_contenido #container .col2 {
        border-right: none !important;
        border-bottom: 1px solid #f1f5f9 !important;
        text-align: left !important;
        justify-content: flex-start !important;
    }
    
    body #display_contenido #container .cabecera:last-child,
    body #display_contenido #container .col2:last-child {
        border-bottom: none !important;
    }
    
    body #display_contenido #container .col2 label {
        text-align: left !important;
    }
    
    body #display_contenido h1 {
        font-size: 1.6rem !important;
        margin-bottom: 30px !important;
    }
}

/* ========================================
   FORMULARIOS GESTION_USUARIOS - ULTRA-MINIMALISTA
   ======================================== */

/* Títulos de formularios */
body #display_contenido h1 {
    color: #2d3748 !important;
    font-size: 1.5rem !important;
    font-weight: 400 !important;
    margin: 40px 0 30px 0 !important;
    padding: 0 !important;
    border: none !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Container del formulario */
body #display_contenido .form-style-1 {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 40px 0 !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    padding: 30px !important;
}

/* Items del formulario */
body #display_contenido .form-style-1 li {
    display: block !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    list-style: none !important;
}

/* Labels de los formularios */
body #display_contenido .form-style-1 li label {
    display: block !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    background: none !important;
    border: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Inputs de texto largos */
body #display_contenido .form-style-1 input.field-long,
body #display_contenido .form-style-1 input[class*="field-long"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Inputs de texto cortos */
body #display_contenido .form-style-1 input.field-short,
body #display_contenido .form-style-1 input[class*="field-short"] {
    width: 100% !important;
    max-width: 300px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Inputs divididos (más pequeños) */
body #display_contenido .form-style-1 input.field-divided,
body #display_contenido .form-style-1 input[class*="field-divided"] {
    width: 100% !important;
    max-width: 200px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Select dropdowns */
body #display_contenido .form-style-1 select.field-select,
body #display_contenido .form-style-1 select[class*="field-select"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") !important;
    background-position: right 12px center !important;
    background-repeat: no-repeat !important;
    background-size: 16px !important;
    padding-right: 40px !important;
}

/* Textareas */
body #display_contenido .form-style-1 textarea.field-textarea,
body #display_contenido .form-style-1 textarea[class*="field-textarea"] {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
    resize: vertical !important;
}

/* Estados focus para todos los inputs */
body #display_contenido .form-style-1 input:focus,
body #display_contenido .form-style-1 select:focus,
body #display_contenido .form-style-1 textarea:focus {
    border-color: #3182ce !important;
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
}

/* Estados hover para todos los inputs */
body #display_contenido .form-style-1 input:hover,
body #display_contenido .form-style-1 select:hover,
body #display_contenido .form-style-1 textarea:hover {
    border-color: #cbd5e0 !important;
}

/* Botones de formulario */
body #display_contenido .form-style-1 input[type="submit"],
body #display_contenido .form-style-1 input[type="reset"],
body #display_contenido .form-style-1 input[type="button"] {
    display: inline-block !important;
    padding: 12px 24px !important;
    margin: 8px 8px 0 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    font-family: inherit !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    width: auto !important;
    max-width: none !important;
}

/* Botón submit (Guardar) */
body #display_contenido .form-style-1 input[type="submit"][name="enviar"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #3182ce !important;
}

/* Hover en botones */
body #display_contenido .form-style-1 input[type="submit"]:hover,
body #display_contenido .form-style-1 input[type="reset"]:hover,
body #display_contenido .form-style-1 input[type="button"]:hover {
    background: #f8fafc !important;
    border-color: #cbd5e0 !important;
}

body #display_contenido .form-style-1 input[type="submit"][name="enviar"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Focus en botones */
body #display_contenido .form-style-1 input[type="submit"]:focus,
body #display_contenido .form-style-1 input[type="reset"]:focus,
body #display_contenido .form-style-1 input[type="button"]:focus {
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
}

/* Títulos de sección (h1) */
body #display_contenido h1 {
    color: #2d3748 !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* Mensajes de estado */
body #display_contenido .form-style-1 .required {

    font-weight: 400 !important;
    display: block !important;
    padding: 12px 16px !important;
 

    border-radius: 6px !important;
    margin: 0 0 20px 0 !important;
}

/* Sugerencias de datos */
body #display_contenido .icono {
    margin-left: 8px !important;
    vertical-align: middle !important;
    opacity: 0.7 !important;
    transition: opacity 0.15s ease !important;
}

body #display_contenido .icono:hover {
    opacity: 1 !important;
}

/* Responsive para formularios */
@media (max-width: 768px) {
    body #display_contenido .form-style-1 {
        padding: 20px !important;
    }
    
    body #display_contenido .form-style-1 input.field-short,
    body #display_contenido .form-style-1 input.field-divided {
        max-width: 100% !important;
    }
    
    body #display_contenido .form-style-1 input[type="submit"],
    body #display_contenido .form-style-1 input[type="reset"] {
        width: 100% !important;
        margin: 8px 0 !important;
    }
    
    body #display_contenido h1 {
        font-size: 1.3rem !important;
    }
}

/* Botones de acción en tablas (Editar, Eliminar) */
body #contenedor_cuerpo table td button,
body #contenedor_cuerpo table td a[href*="editar"],
body #contenedor_cuerpo table td a[href*="eliminar"],
body #contenedor_cuerpo table td button[name*="editar"],
body #contenedor_cuerpo table td button[name*="borrar"] {
    display: inline-block !important;
    padding: 8px 14px !important;
    margin: 4px 6px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    box-sizing: border-box !important;
    min-width: 75px !important;
    text-align: center !important;
    line-height: 1.4 !important;
    vertical-align: middle !important;
    font-family: inherit !important;
    outline: none !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

/* Botón Editar - Azul */
body #contenedor_cuerpo table td button[name*="editar"],
body #contenedor_cuerpo table td .botton_link[name*="editar"],
body #contenedor_cuerpo table td .bottom_link[name*="editar"],
body #contenedor_cuerpo table td span a[href*="editar"],
body #contenedor_cuerpo table td a[href*="editar"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #3182ce !important;
}

/* Botón Eliminar/Borrar - Rojo */
body #contenedor_cuerpo table td button[name*="borrar"],
body #contenedor_cuerpo table td .botton_link[name*="borrar"],
body #contenedor_cuerpo table td .bottom_link[name*="borrar"],
body #contenedor_cuerpo table td span a[href*="eliminar"],
body #contenedor_cuerpo table td a[href*="eliminar"] {
    background: #e53e3e !important;
    color: #ffffff !important;
    border-color: #e53e3e !important;
}

/* Imágenes dentro de los botones */
body #contenedor_cuerpo table td button img,
body #contenedor_cuerpo table td .botton_link img,
body #contenedor_cuerpo table td .bottom_link img,
body #contenedor_cuerpo table td .button-img {
    margin-right: 4px !important;
    vertical-align: middle !important;
    width: 14px !important;
    height: 14px !important;
    display: inline-block !important;
}

/* Hover effects */
body #contenedor_cuerpo table td button.botton_link:hover,
body #contenedor_cuerpo table td button.bottom_link:hover,
body #contenedor_cuerpo table td .botton_link:hover,
body #contenedor_cuerpo table td .bottom_link:hover,
body #contenedor_cuerpo table td span a[href*="editar"]:hover,
body #contenedor_cuerpo table td span a[href*="eliminar"]:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover,
body #contenedor_cuerpo table td button[name*="editar"]:hover,
body #contenedor_cuerpo table td button[name*="borrar"]:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15) !important;
}

/* Hover específico para editar */
body #contenedor_cuerpo table td button[name*="editar"]:hover,
body #contenedor_cuerpo table td .botton_link[name*="editar"]:hover,
body #contenedor_cuerpo table td .bottom_link[name*="editar"]:hover,
body #contenedor_cuerpo table td span a[href*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Hover específico para eliminar */
body #contenedor_cuerpo table td button[name*="borrar"]:hover,
body #contenedor_cuerpo table td .botton_link[name*="borrar"]:hover,
body #contenedor_cuerpo table td .bottom_link[name*="borrar"]:hover,
body #contenedor_cuerpo table td span a[href*="eliminar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover {
    background: #c53030 !important;
    border-color: #c53030 !important;
}

/* Celda de acciones mejorada */
body #contenedor_cuerpo table td:last-child,
body #contenedor_cuerpo table th:last-child {
    text-align: center !important;
    padding: 12px 15px !important;
    white-space: nowrap !important;
    vertical-align: middle !important;
}

/* Espaciado entre botones consecutivos */
body #contenedor_cuerpo table td button + button,
body #contenedor_cuerpo table td button + a,
body #contenedor_cuerpo table td a + button,
body #contenedor_cuerpo table td a + a {
    margin-left: 8px !important;
}

/* Override de estilos previos conflictivos */
body #contenedor_cuerpo table td button,
body #contenedor_cuerpo table td a[class*="bottom"],
body #contenedor_cuerpo table td a[class*="botton"] {
    background-image: none !important;
    text-shadow: none !important;
    background-attachment: initial !important;
}

/* Responsive */
@media (max-width: 768px) {
    body #contenedor_cuerpo table td button.botton_link,
    body #contenedor_cuerpo table td button.bottom_link,
    body #contenedor_cuerpo table td .botton_link,
    body #contenedor_cuerpo table td .bottom_link,
    body #contenedor_cuerpo table td span a[href*="editar"],
    body #contenedor_cuerpo table td span a[href*="eliminar"] {
        padding: 6px 10px !important;
        font-size: 0.7rem !important;
        min-width: 65px !important;
        margin: 2px 4px !important;
    }
    
    body #contenedor_cuerpo table td:last-child {
        padding: 8px 10px !important;
    }
}

/* ========================================
   MAPA.PHP - ESTILOS ULTRA-MINIMALISTAS
   ======================================== */

/* Pestañas de navegación del mapa (.taba) */
body #display_contenido .taba {
    display: flex !important;
    background: #ffffff !important;
    border-bottom: 2px solid #e2e8f0 !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    gap: 0 !important;
    border-radius: 8px 8px 0 0 !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Items de pestañas */
body #display_contenido .taba label {
    flex: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f8fafc !important;
    border: none !important;
    border-right: 1px solid #e2e8f0 !important;
    display: block !important;
    position: relative !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
}

body #display_contenido .taba label:last-child {
    border-right: none !important;
}

/* Enlaces dentro de las pestañas */
body #display_contenido .taba label a {
    display: block !important;
    padding: 16px 20px !important;
    color: #4a5568 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    text-align: center !important;
    transition: all 0.2s ease !important;
    position: relative !important;
    background: none !important;
    border: none !important;
}

/* Pestaña activa */
body #display_contenido .taba label#activa {
    background: #ffffff !important;
    border-bottom: 2px solid #3182ce !important;
    margin-bottom: -2px !important;
    z-index: 2 !important;
}

body #display_contenido .taba label#activa a {
    color: #3182ce !important;
    font-weight: 600 !important;
}

/* Hover en pestañas */
body #display_contenido .taba label:hover {
    background: #f1f5f9 !important;
}

body #display_contenido .taba label#activa:hover {
    background: #ffffff !important;
}

body #display_contenido .taba label a:hover {
    color: #2d3748 !important;
}

body #display_contenido .taba label#activa a:hover {
    color: #3182ce !important;
}

/* Wrapper del mapa */
body #display_contenido #map_wrapper {
    background: #ffffff !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    border: 1px solid #e2e8f0 !important;
}

/* Canvas del mapa */
body #display_contenido #map_canvas.mapping {
    width: 100% !important;
    height: 500px !important;
    border: none !important;
    border-radius: 0 0 8px 8px !important;
    background: #f8fafc !important;
}

/* Título del mapa */
body #display_contenido h1 {
    color: #2d3748 !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Info windows del mapa */
.info_content {
    padding: 15px !important;
    max-width: 250px !important;
}

.info_content h3 {
    color: #2d3748 !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
    margin: 0 0 10px 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

.info_content img {
    border-radius: 6px !important;
    margin: 0 0 10px 0 !important;
    max-width: 100% !important;
    height: auto !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

.info_content a {
    display: inline-block !important;
    padding: 8px 16px !important;
    background: #3182ce !important;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    transition: background 0.15s ease !important;
    margin-top: 10px !important;
}

.info_content a:hover {
    background: #2c5aa0 !important;
}

/* Mensaje cuando no hay datos - SOLO EN MAPA */
body #display_contenido #map_wrapper p {
    background: #fef2f2 !important;
    color: #e53e3e !important;
    padding: 20px !important;
    border-radius: 8px !important;
    border: 1px solid #fed7d7 !important;
    text-align: center !important;
    font-size: 0.875rem !important;
    margin: 20px 0 !important;
}

/* Responsive para mapa */
@media (max-width: 768px) {
    body #display_contenido .taba {
        overflow-x: auto !important;
        white-space: nowrap !important;
        flex-wrap: nowrap !important;
        border-radius: 6px 6px 0 0 !important;
    }
    
    body #display_contenido .taba label {
        flex: none !important;
        min-width: 120px !important;
    }
    
    body #display_contenido .taba label a {
        padding: 12px 16px !important;
        font-size: 0.8rem !important;
    }
    
    body #display_contenido #map_canvas.mapping {
        height: 400px !important;
    }
    
    body #display_contenido h1 {
        font-size: 1.25rem !important;
        margin: 0 0 20px 0 !important;
    }
}

/* INICIO FOOTER */
#footer{
min-width: 1000px;
clear:both;
overflow: hidden;
margin-top:20px;
padding-top:10px;
margin:0 auto;
background-color: #1E1E1E;
width:100%;
color: white;
}
#footer_texto{
font-size: 12px;
font-weight: 800;
line-height: 50px;
float: right;
font-weight: bold;
margin: 10px;
margin-right: 30px;
}
#footer_ayto{
font-size: 10px;
margin: 10px;
margin-left: 30px;
float: left;
}


/* FIN FOOTER */


#container{
    display:table;  
   clear: right;
   
    margin:0 auto;
	
	
}
#container input[type="text"] {


	  width: 150px;
	
}
.row{
display:table-row;
}

.row_par{
background-color: #d9ecff;
display:table-row;
		
}
.row_impar{
display:table-row;
background-color: #edf6ff;
}
/* COL1 CREO QUE SE PUEDE BORRAR */
.col1{
padding: 10px;
display: table-cell;
width:300px;
text-align: right;
}

.col2{
Padding: 10px;
display: table-cell;
vertical-align: middle;
text-align: center;
}


.cabecera{
padding: 10px;
display: table-cell;
background-color: silver;
vertical-align: middle;
text-align: center;
}

.menu_rapido{
margin:0 auto;
width:400px;
}


/* INMUEBLES GESTOR DE IMAGENES */
  
.lista_items {
		list-style:none;
		text-align: center;
}  
.lista_items  li	  {display: inline-block; 
}
#lista_img{	width: 200px;
	height: 133px;
   border-width: 0px;}
#container_items {
text-align: center;
width: 250px;
		margin: 10px;
		padding: 10px;

    border-width: 1px;
	border-color: #000;
}


/* VER_FICHAS.PHP */

  #map-situacion {
	      margin:0 auto;
		
        height: 350px;
		width: 400px;
      }
	  


  #map-emplazamiento {
	      margin:0 auto;
        height: 350px;
		width: 400px;
      }
.centrar{
text-align: center;
}
.centrar a {
    color: black;
	text-decoration: none;
} 
.ficha_container{
display:table;  
margin: 25px auto;
margin-left: 30px;
margin-right: 30px;
background-color: #F7F7F7;
border-radius: 10px;
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
box-sizing: border-box;
overflow: hidden;
display: block;
}
.ficha_container_maps{
	clear: all;
display:table;  
margin: 10px auto;
margin-left: 30px;
margin-right: 30px;
background-color: #F7F7F7;
border-radius: 10px;
box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
box-sizing: border-box;
overflow: hidden;
display:  inline-block;

}
#ficha_img_principal{
width: 281.25px;
height: 187.5px;
   display: block;
 
margin: 20px auto;

}

@media (min-width: 90em) {
  #ficha_img_principal {
	float: right;  
	margin-top: 0px;
margin-right: 50px;
width: 375px;
height: 250px;
}}

#titulo_ficha{
text-align: center;clear: both;
}

.ficha_cell{

padding: 15px;
}
.ficha_cell p{

text-align: center;

}
.ficha_cell h1{
margin-left:25px;
margin-top:0px;
margin-right:10px;
margin-bottom:10px;
}
.ficha_cell label{
font-weight: bold;
}

.lista{
	margin:0;
    list-style: none;
}
.lista li{
padding: 5px;

}
@media all and (min-width: 1000px) {
   #columnas   {
	 
  -webkit-column-count: 2;
  -webkit-column-gap: 1%; /* Saf3, Chrome*/
  -moz-column-count: 2;   
  -moz-column-gap: 1%; /* FF3.5+ */
  column-count: 2;        
  column-gap: 1%; /* Opera 11+*/
  }
}

/* FIN ver_ficha */ 
/* div mapa de mapa.php para el google maps */

#map_wrapper {
height: 400px; width: 90%; text-align:center;margin: 0 auto;
}
#map_wrapper p{margin-top: 20px;}
#map_canvas{width: 100%;    height: 100%;}
.taba {
  margin-top: 20px;
  font-size: 10px;
}
.taba label {
		 z-index: 1;
 display: inline-block; 
  background: #eee; 
  padding: 5px; 
  border: 1px solid #ccc; 
  margin-left: -1px; 
  position: relative;
  left: 1px; 

border-bottom-left-radius: 0px;
border-bottom-right-radius: 0px;
border-top-left-radius: 5px;
border-top-right-radius: 5px;

box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.3);
box-sizing: border-box;
}
#activa{

  background: white; 
}
.taba label:hover {
  background: #FBFBFB; 
}

/* fin div mapa de mapa.php para el google maps */	  

/* formulario estilo*/ 

.form-style-1 {
    
    max-width: 400px;

    
}
.form-style-1 li {
    padding: 0;
    display: block;
    list-style: none;
    margin: 10px 0 0 0;
}
.form-style-1 label{
    margin:0 0 3px 0;
    padding:0px;
	font-weight: bold;
    display:block;
}
.form-style-1 input[type=text],
.form-style-1 button,
.form-style-1 input[type=password],
.form-style-1 input[type=date],
.form-style-1 input[type=datetime],
.form-style-1 input[type=number],
.form-style-1 input[type=search],
.form-style-1 input[type=time],
.form-style-1 input[type=url],
.form-style-1 input[type=email],
textarea,
select{
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border:1px solid #BEBEBE;
    padding: 7px;
    margin: 0;
    font-size: 0.95rem;
    transition: all 0.30s ease-in-out;
    outline: none; 
}
.form-style-1 input[type=text]:focus,
.form-style-1 button:focus,
.form-style-1 input[type=password]:focus,
.form-style-1 input[type=date]:focus,
.form-style-1 input[type=datetime]:focus,
.form-style-1 input[type=number]:focus,
.form-style-1 input[type=search]:focus,
.form-style-1 input[type=time]:focus,
.form-style-1 input[type=url]:focus,
.form-style-1 input[type=email]:focus,
.form-style-1 textarea:focus,
.form-style-1 select:focus{
    -moz-box-shadow: 0 0 8px #88D5E9;
    -webkit-box-shadow: 0 0 8px #88D5E9;
    box-shadow: 0 0 8px #88D5E9;
    border: 1px solid #88D5E9;
}
.form-style-1 .field-divided{
    width: 49%;
}

.form-style-1 .field-long{
    width: 100%;
}
.form-style-1 .field-select{
    width: 100%;
	max-width: 400px !important;
}
.form-style-1 .field-textarea{
    width: 100%;
    height: 100px;
}
.form-style-1 input[type=submit], .form-style-1 input[type=button], .form-style-1 button, .form-style-1 input[type=reset]{
    background: #4B99AD;
    padding: 8px 15px 8px 15px;
    border: none;
    color: #fff;
}
.form-style-1 input[type=submit]:hover, .form-style-1 input[type=button]:hover, .form-style-1 button:hover, .form-style-1 input[type=reset]:hover{
    background: #4691A4;
    box-shadow:none;
    -moz-box-shadow:none;
    -webkit-box-shadow:none;
}




	
	
	 
	 
/* formulario estilo*/ 

.form-style-1_consultas {
    text-align: center;
	-webkit-column-count: 2;
-webkit-column-gap: 1%;
-moz-column-count: 2;
-moz-column-gap: 1%;
column-count: 2;
column-gap: 1%;
    text-aligN: center;
}

.form-style-1_consultas li {
	    padding: 0;
    display: block;
    list-style: none;
    margin: 10px 0 0 0;
}
.form-style-1_consultas label{
    margin:0 0 3px 0;
    padding:0px;
	width: 150px;
display: inline-block;
}
.form-style-1_consultas input[type=text],
.form-style-1_consultas button,
.form-style-1_consultas input[type=password],
.form-style-1_consultas input[type=date],
.form-style-1_consultas input[type=datetime],
.form-style-1_consultas input[type=number],
.form-style-1_consultas input[type=search],
.form-style-1_consultas input[type=time],
.form-style-1_consultas input[type=url],
.form-style-1_consultas input[type=email],
textarea,
select{
	width: 200px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border:1px solid #BEBEBE;
    padding: 7px;
    margin:0px;
    -webkit-transition: all 0.30s ease-in-out;
    -moz-transition: all 0.30s ease-in-out;
    -ms-transition: all 0.30s ease-in-out;
    -o-transition: all 0.30s ease-in-out;
    outline: none; 
}
.form-style-1_consultas input[type=text]:focus,
.form-style-1_consultas button:focus,
.form-style-1_consultas input[type=password]:focus,
.form-style-1_consultas input[type=date]:focus,
.form-style-1_consultas input[type=datetime]:focus,
.form-style-1_consultas input[type=number]:focus,
.form-style-1_consultas input[type=search]:focus,
.form-style-1_consultas input[type=time]:focus,
.form-style-1_consultas input[type=url]:focus,
.form-style-1_consultas input[type=email]:focus,
.form-style-1_consultas textarea:focus,
.form-style-1_consultas select:focus{
    -moz-box-shadow: 0 0 8px #88D5E9;
    -webkit-box-shadow: 0 0 8px #88D5E9;
    box-shadow: 0 0 8px #88D5E9;
    border: 1px solid #88D5E9;
}
.form-style-1_consultas .field-textarea{
    width: 100%;
    height: 100px;
}
.form-style-1_consultas_botones input[type=submit], .form-style-1_consultas_botones input[type=button], .form-style-1_consultas_botones button, .form-style-1_consultas_botones input[type=reset]{
    background: #4B99AD;
    padding: 8px 15px 8px 15px;
    border: none;
    color: #fff;
}
.form-style-1_consultas_botones input[type=submit]:hover, .form-style-1_consultas_botones input[type=button]:hover, .form-style-1_consultas_botones button:hover, .form-style-1_consultas_botones input[type=reset]:hover{
    background: #4691A4;
    box-shadow:none;
    -moz-box-shadow:none;
    -webkit-box-shadow:none;
}

.form-style-1_consultas .required{
    color:red;
}



/*  tabla consultas */

	
	
	#data_consultas {
		width: 100%;

font-size: 12px;
		border-collapse:collapse;

	text-align: center;  
			text-align: center;
	}
 


	#data_consultas a {


}

	#data_consultas thead, tbody{
	border:1px solid #999;
		width: 100%;
			
	}
	#data_consultas th{

			
		padding:8px;
		background:#F8F8F8
	}



	#data_consultas td {
	
		padding:10px;
			}	
	 
	 
	 
	#data_consultas tr:nth-child(even) {background: #edf6ff}
	#data_consultas tr:nth-child(odd) {background: #d9ecff}
	#data_consultas tfoot td{background: #ffffff}
#paginas-navegacion{font-size: 18px; text-align:center}
#paginas-navegacion a{
text-decoration: none;	
	}

#filtro_right{
	text-align: right;
	float: right;
margin-right: 30px;
padding:5px;
}
#filtro_left{
    padding: 5px;
    float: left;
    margin: 0px 20px;
}


/* share fichas */



#share {

		display: table;
width: 95%;
margin: 0px auto;
    }

  #share_row  {
    display: table-row;

	
    }

  #share_left {
	      display: table-cell;
		  width: 33%;
  }
  #share_right {
	      display: table-cell;
		  width: 33%;
		  text-align:right;
  }
  #share_middle {
    display: table-cell;
	width: 33%;
	text-align:center;
    }
	#share a {
    color: black;
	text-decoration: none;
} 


/* mobiliario urbano tabla */

table.mobiliario_urbano {
	font-family: verdana,arial,sans-serif;
	font-size:11px;
	color:#333333;
	border-width: 1px;
	border-color: #666666;
	border-collapse: collapse;
	width: 100%;
	text-align: center;
}
table.mobiliario_urbano th {
	border-width: 1px;
	padding: 8px;
	border-style: solid;
	border-color: #666666;
	background-color: #dedede;
}
table.mobiliario_urbano td {
	border-width: 1px;
	padding: 8px;
	border-style: solid;
	border-color: #666666;
	background-color: #ffffff;
}





/*  tabla dashboard */
#data {
width: 90%;
font-size: 12px;
margin: 0 auto;
}

#content{
text-align: center;  

	}
	
	

	
	
	
	#content table{
		border-collapse:collapse;



	
			text-align: center;
	}

	


	#content a {
text-decoration: none;

}

	#content table thead, tbody{
	border:1px solid #999;
		width: 100%;
			
	}
	
	#content table thead tr{
	border:1px solid #999;
		width: 100%;
			
	}
	#content table th{

			
		padding:8px;
		background:#F8F8F8
	}

#data table tr th .reducido
{
	width: 5%;
}

	#content table td {
	
		padding:10px;
			}	
nomebre_informes {
	text-align: left;
width:70%;

}



/* unvisited link */
.nombre a:link {
    color: inherit;
	}

/* visited link */
.nombre a:visited {
    color: inherit;
	}

/* mouse over link */
.nombre a:hover {
color: #39F;
	text-decoration: underline !important;
}

/* selected link */
.nombre a:active {
    color: #39F;
		text-decoration: underline !important;
}

	#content table tr:nth-child(even) {background: #edf6ff}
	#content table tr:nth-child(odd) {background: #d9ecff}
	#content table tfoot td{background: #ffffff}
#paginas-navegacion{font-size: 18px;}
	
	/* fin tabla */
	
	
	
	
	
	


/* ========================================
   GESTION_FICHAS.PHP - DISEÑO ULTRA-MINIMALISTA
   ======================================== */

/* Título principal GESTIÓN DE FICHAS */
body #contenedor_cuerpo h1 {
    color: #2d3748 !important;
    font-size: 1.8rem !important;
    font-weight: 400 !important;
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    border: none !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Formulario de filtros - Dashboard */
body #contenedor_cuerpo .form-style-1_dashboard {
    list-style: none !important;
    padding: 30px !important;
    margin: 0 0 40px 0 !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 30px !important;
    align-items: flex-end !important;
}

/* Items del formulario de filtros */
body #contenedor_cuerpo .form-style-1_dashboard li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: flex !important;
    flex-direction: column !important;
    min-width: 200px !important;
    flex: 1 !important;
}

/* Labels del formulario de filtros */
body #contenedor_cuerpo .form-style-1_dashboard label {
    color: #4a5568 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    margin: 0 0 8px 0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Selects y campos del formulario de filtros */
body #contenedor_cuerpo .form-style-1_dashboard select,
body #contenedor_cuerpo .form-style-1_dashboard input[type="text"] {
    padding: 10px 14px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.85rem !important;
    font-family: inherit !important;
    transition: border-color 0.15s ease !important;
    min-width: 180px !important;
}

/* Focus en campos de filtros */
body #contenedor_cuerpo .form-style-1_dashboard select:focus,
body #contenedor_cuerpo .form-style-1_dashboard input[type="text"]:focus {
    outline: none !important;
    border-color: #3182ce !important;
    box-shadow: 0 0 0 2px rgba(49, 130, 206, 0.1) !important;
}

/* Botones de filtros - Específicos por name y id */
body #contenedor_cuerpo button[name="borrar"],
body #contenedor_cuerpo button[name="nueva"],
body #contenedor_cuerpo #btnfiltrar,
body #contenedor_cuerpo input[name="borrar"],
body #contenedor_cuerpo input[name="nueva"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border: 1px solid #3182ce !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    margin: 0 12px 8px 0 !important;
    align-self: flex-start !important;
}

body #contenedor_cuerpo button[name="borrar"]:hover,
body #contenedor_cuerpo button[name="nueva"]:hover,
body #contenedor_cuerpo #btnfiltrar:hover,
body #contenedor_cuerpo input[name="borrar"]:hover,
body #contenedor_cuerpo input[name="nueva"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Área de botones con separación adicional */
body #contenedor_cuerpo .form-style-1_dashboard {
    position: relative !important;
}

/* Contenedor para los botones */
body #contenedor_cuerpo .form-style-1_dashboard::after {
    display: none !important;
}

/* Espacio adicional para elementos específicos */
body #contenedor_cuerpo button[name="borrar"],
body #contenedor_cuerpo button[name="nueva"] {
    margin-top: 20px !important;
}

/* Select de sugerencias del catastro */
body #contenedor_cuerpo select[name="catastro"] {
    padding: 10px 14px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.85rem !important;
    font-family: inherit !important;
    transition: border-color 0.15s ease !important;
    width: 320px !important;
    margin: 10px 0 !important;
}

/* Contador de total de fichas */
body #contenedor_cuerpo .form-style-1_dashboard div[style*="text-align: left"] {
    color: #718096 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    margin-top: 20px !important;
    padding: 15px 0 0 0 !important;
    border-top: 1px solid #e2e8f0 !important;
    width: 100% !important;
}

/* Tabla principal de datos */
body #contenedor_cuerpo table#data {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 30px 0 !important;
    background: #ffffff !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.04) !important;
    border: 1px solid #f0f4f8 !important;
}

/* Headers de la tabla */
body #contenedor_cuerpo table#data thead th {
    background: #f8fafc !important;
    color: #4a5568 !important;
    padding: 16px 12px !important;
    text-align: left !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    border-bottom: 2px solid #e2e8f0 !important;
    border-right: 1px solid #f1f5f9 !important;
}

/* Celdas de datos */
body #contenedor_cuerpo table#data tbody td {
    padding: 16px 12px !important;
    border-right: 1px solid #f1f5f9 !important;
    color: #4a5568 !important;
    font-size: 0.85rem !important;
    vertical-align: middle !important;
}

/* Enlaces en la tabla */
body #contenedor_cuerpo table#data tbody td a {
 
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.15s ease !important;
}

body #contenedor_cuerpo table#data tbody td a:hover {
    color: #2c5aa0 !important;
    text-decoration: underline !important;
}

/* Imágenes en la tabla (editar, check, etc.) */
body #contenedor_cuerpo table#data tbody td img {
    width: 16px !important;
    height: 16px !important;
    margin-right: 6px !important;
    vertical-align: middle !important;
    opacity: 0.7 !important;
    transition: opacity 0.15s ease !important;
}

body #contenedor_cuerpo table#data tbody td a:hover img {
    opacity: 1 !important;
}

/* Checkboxes */
body #contenedor_cuerpo table#data input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: #3182ce !important;
}

/* Footer de la tabla */
body #contenedor_cuerpo table#data tfoot td {
    background: #f8fafc !important;
    padding: 16px 12px !important;
    color: #718096 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    border-top: 2px solid #e2e8f0 !important;
}

/* Paginación */
body #contenedor_cuerpo #paginas-navegacion {
    text-align: center !important;
    margin: 30px 0 !important;
    padding: 20px 0 !important;
}

body #contenedor_cuerpo #paginas-navegacion a {
    color: #3182ce !important;
    text-decoration: none !important;
    padding: 12px 18px !important;
    margin: 0 4px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    font-size: 0.85rem !important;
    transition: all 0.15s ease !important;
    display: inline-block !important;
}

body #contenedor_cuerpo #paginas-navegacion a:hover {
    background: #f8fafc !important;
    border-color: #3182ce !important;
}

/* Mensaje de no encontrados */
body #contenedor_cuerpo #margen_inferior {
    text-align: center !important;
    padding: 40px 20px !important;
    color: #718096 !important;
    font-size: 0.9rem !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    margin: 20px 0 !important;
}

/* Responsive para gestión de fichas */
@media (max-width: 768px) {
    body #contenedor_cuerpo .form-style-1_dashboard {
        flex-direction: column !important;
        align-items: stretch !important;
    }
    
    body #contenedor_cuerpo .form-style-1_dashboard li {
        min-width: 100% !important;
    }
    
    body #contenedor_cuerpo table#data {
        font-size: 0.8rem !important;
    }
    
    body #contenedor_cuerpo table#data thead th,
    body #contenedor_cuerpo table#data tbody td {
        padding: 8px 4px !important;
    }
    
    body #contenedor_cuerpo table#data tbody td.nombre {
        max-width: 150px !important;
        word-break: break-word !important;
    }
    
    body #contenedor_cuerpo h1 {
        font-size: 1.5rem !important;
    }
}

/* Botones específicos: Quitar Filtros y Filtrar */
body #contenedor_cuerpo #filtro_right button,
body #contenedor_cuerpo .form-style-1_dashboard_botones button,
body #contenedor_cuerpo button[name="filtro"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border: 1px solid #3182ce !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    text-decoration: none !important;
    display: inline-block !important;
    box-shadow: none !important;
    text-shadow: none !important;
    font-family: inherit !important;
}

/* Hover para botones de filtro */
body #contenedor_cuerpo #filtro_right button:hover,
body #contenedor_cuerpo .form-style-1_dashboard_botones button:hover,
body #contenedor_cuerpo button[name="filtro"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
    color: #ffffff !important;
}

/* Botón "Quitar Filtros" - estilo secundario */
body #contenedor_cuerpo #filtro_right button[onclick*="window.location"],
body #contenedor_cuerpo button[onclick*="window.location"] {
    background: #ffffff !important;
    color: #4a5568 !important;
    border: 1px solid #e2e8f0 !important;
}

body #contenedor_cuerpo #filtro_right button[onclick*="window.location"]:hover,
body #contenedor_cuerpo button[onclick*="window.location"]:hover {
    background: #f8fafc !important;
    border-color: #cbd5e0 !important;
    color: #2d3748 !important;
}

/* Contenedor de botones de filtro */
body #contenedor_cuerpo #filtro_right {
    display: flex !important;
    gap: 12px !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 20px 0 0 0 !important;
    padding: 0 !important;
}

body #contenedor_cuerpo .form-style-1_dashboard_botones {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    border: none !important;
}

/* Override estilos antiguos específicos */
body #contenedor_cuerpo button[type="submit"],
body #contenedor_cuerpo button[type="button"] {
    background: linear-gradient(to bottom, #3182ce, #2c5aa0) !important;
    background: #3182ce !important;
    margin: 10px;
    border: 1px solid #3182ce !important;
    color: #ffffff !important;
    padding: 10px 20px !important;
    border-radius: 4px !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    text-decoration: none !important;
    text-shadow: none !important;
    box-shadow: none !important;
    font-family: inherit !important;
}

/* Especial para botón Quitar Filtros */
body #contenedor_cuerpo button[type="button"][onclick*="window.location"] {
    background: #ffffff !important;
    color: #4a5568 !important;
    border: 1px solid #e2e8f0 !important;
}

/* Responsive para gestión de fichas */
@media (max-width: 768px) {
    body #contenedor_cuerpo .form-style-1_dashboard {
        flex-direction: column !important;
        gap: 20px !important;
        padding: 20px !important;
    }
    
    body #contenedor_cuerpo .form-style-1_dashboard li {
        min-width: 100% !important;
        flex: none !important;
    }
    
    body #contenedor_cuerpo #filtro_right {
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
    }
    
    body #contenedor_cuerpo h1 {
        font-size: 1.5rem !important;
    }
    
    body #contenedor_cuerpo table#data {
        font-size: 0.8rem !important;
        overflow-x: auto !important;
        display: block !important;
        white-space: nowrap !important;
    }
    
    body #contenedor_cuerpo table#data thead,
    body #contenedor_cuerpo table#data tbody,
    body #contenedor_cuerpo table#data tr {
        display: table !important;
        width: 100% !important;
        table-layout: fixed !important;
    }
}

/* Mejor contenedor para evitar overflow */
body #contenedor_cuerpo {
    max-width: 100% !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
}

/* Formulario de filtros - contenedor principal */
body #contenedor_cuerpo .form-style-1_dashboard {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}

/* Evitar que los selects se salgan */
body #contenedor_cuerpo .form-style-1_dashboard select,
body #contenedor_cuerpo .form-style-1_dashboard input[type="text"] {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Submenú de navegación de fichas (Datos Básicos, Datos Físicos, etc.) */
body #contenedor_cuerpo .tab {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 0 !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    border-bottom: 1px solid #e2e8f0 !important;
    list-style: none !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* Labels del submenú de navegación */
body #contenedor_cuerpo .tab label {
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    display: block !important;
    position: relative !important;
}

/* Enlaces del submenú de navegación */
body #contenedor_cuerpo .tab label a {
    display: block !important;
    padding: 16px 24px !important;
    color: #718096 !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    border-bottom: 3px solid transparent !important;
    transition: all 0.15s ease !important;
    white-space: nowrap !important;
    position: relative !important;
    background: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Hover en enlaces del submenú */
body #contenedor_cuerpo .tab label a:hover {
    color: #4a5568 !important;
    background: #f8fafc !important;
    border-bottom-color: #cbd5e0 !important;
}

/* Pestaña activa */
body #contenedor_cuerpo .tab label#activa a,
body #contenedor_cuerpo .tab label#activa a:hover {
    color: #3182ce !important;
    border-bottom-color: #3182ce !important;
    background: #ffffff !important;
    font-weight: 600 !important;
}

/* Margen superior para el contenido después del submenú */
body #contenedor_cuerpo #margen_superior {
    margin-top: 0 !important;
    padding: 0 !important;
}

/* Responsive para el submenú de navegación */
@media (max-width: 768px) {
    body #contenedor_cuerpo .tab {
        flex-direction: row !important;
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
        scrollbar-width: none !important;
        -ms-overflow-style: none !important;
    }
    
    body #contenedor_cuerpo .tab::-webkit-scrollbar {
        display: none !important;
    }
    
    body #contenedor_cuerpo .tab label a {
        padding: 12px 16px !important;
        font-size: 0.8rem !important;
        min-width: 100px !important;
        text-align: center !important;
    }
}

/* Formularios de edición de fichas - Estilos ultra-minimalistas */
body #contenedor_cuerpo .form-style-1 {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff !important;
    border-radius: 8px !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
    padding: 30px !important;
}

/* Items del formulario */
body #contenedor_cuerpo .form-style-1 li {
    display: block !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    list-style: none !important;
}

/* Labels de los formularios */
body #contenedor_cuerpo .form-style-1 li label {
    display: block !important;
    margin: 0 0 8px 0 !important;
    padding: 0 !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    background: none !important;
    border: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Inputs de texto largos */
body #contenedor_cuerpo .form-style-1 input.field-long,
body #contenedor_cuerpo .form-style-1 input[class*="field-long"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Inputs de texto cortos */
body #contenedor_cuerpo .form-style-1 input.field-short,
body #contenedor_cuerpo .form-style-1 input[class*="field-short"] {
    width: 100% !important;
    max-width: 300px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Inputs divididos (más pequeños) */
body #contenedor_cuerpo .form-style-1 input.field-divided,
body #contenedor_cuerpo .form-style-1 input[class*="field-divided"] {
    width: 100% !important;
    max-width: 200px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
}

/* Select dropdowns */
body #contenedor_cuerpo .form-style-1 select.field-select,
body #contenedor_cuerpo .form-style-1 select[class*="field-select"] {
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
    appearance: none !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") !important;
    background-position: right 12px center !important;
    background-repeat: no-repeat !important;
    background-size: 16px !important;
    padding-right: 40px !important;
}

/* Textareas */
body #contenedor_cuerpo .form-style-1 textarea.field-textarea,
body #contenedor_cuerpo .form-style-1 textarea[class*="field-textarea"] {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 100px !important;
    padding: 12px 16px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    font-family: inherit !important;
    box-sizing: border-box !important;
    transition: all 0.15s ease !important;
    outline: none !important;
    box-shadow: none !important;
    resize: vertical !important;
}

/* Estados focus para todos los inputs */
body #contenedor_cuerpo .form-style-1 input:focus,
body #contenedor_cuerpo .form-style-1 select:focus,
body #contenedor_cuerpo .form-style-1 textarea:focus {
    border-color: #3182ce !important;
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
}

/* Estados hover para todos los inputs */
body #contenedor_cuerpo .form-style-1 input:hover,
body #contenedor_cuerpo .form-style-1 select:hover,
body #contenedor_cuerpo .form-style-1 textarea:hover {
    border-color: #cbd5e0 !important;
}

/* Botones de formulario */
body #contenedor_cuerpo .form-style-1 input[type="submit"],
body #contenedor_cuerpo .form-style-1 input[type="reset"],
body #contenedor_cuerpo .form-style-1 input[type="button"] {
    display: inline-block !important;
    padding: 12px 24px !important;
    margin: 8px 8px 0 0 !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.875rem !important;
    font-weight: 500 !important;
    font-family: inherit !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    outline: none !important;
    box-shadow: none !important;
    width: auto !important;
    max-width: none !important;
}

/* Botón submit (Guardar) */
body #contenedor_cuerpo .form-style-1 input[type="submit"][name="enviar"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #3182ce !important;
}

/* Hover en botones */
body #contenedor_cuerpo .form-style-1 input[type="submit"]:hover,
body #contenedor_cuerpo .form-style-1 input[type="reset"]:hover,
body #contenedor_cuerpo .form-style-1 input[type="button"]:hover {
    background: #f8fafc !important;
    border-color: #cbd5e0 !important;
}

body #contenedor_cuerpo .form-style-1 input[type="submit"][name="enviar"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Focus en botones */
body #contenedor_cuerpo .form-style-1 input[type="submit"]:focus,
body #contenedor_cuerpo .form-style-1 input[type="reset"]:focus,
body #contenedor_cuerpo .form-style-1 input[type="button"]:focus {
    box-shadow: 0 0 0 3px rgba(49, 130, 206, 0.1) !important;
}

/* Títulos de sección (h1) */
body #contenedor_cuerpo h1 {
    color: #2d3748 !important;
    font-size: 1.5rem !important;
    font-weight: 600 !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}

/* Mensajes de estado */
body #contenedor_cuerpo .form-style-1 .required {
    font-weight: 400 !important;
    display: block !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;
}

/* CSS que detecta mensajes de éxito automáticamente */
body #contenedor_cuerpo .form-style-1 label .required {
    /* Estilos por defecto ya están definidos arriba como rojos */
}

/* Clase específica para mensajes de éxito */
body #contenedor_cuerpo .form-style-1 .success-message {

    font-weight: 400 !important;
    display: block !important;
    padding: 12px 16px !important;

   
    border-radius: 6px !important;
    margin: 0 0 20px 0 !important;
}

/* Sugerencias de datos */
body #contenedor_cuerpo .icono {
    margin-left: 8px !important;
    vertical-align: middle !important;
    opacity: 0.7 !important;
    transition: opacity 0.15s ease !important;
}

body #contenedor_cuerpo .icono:hover {
    opacity: 1 !important;
}

/* Responsive para formularios */
@media (max-width: 768px) {
    body #contenedor_cuerpo .form-style-1 {
        padding: 20px !important;
    }
    
    body #contenedor_cuerpo .form-style-1 input.field-short,
    body #contenedor_cuerpo .form-style-1 input.field-divided {
        max-width: 100% !important;
    }
    
    body #contenedor_cuerpo .form-style-1 input[type="submit"],
    body #contenedor_cuerpo .form-style-1 input[type="reset"] {
        width: 100% !important;
        margin: 8px 0 !important;
    }
    
    body #contenedor_cuerpo h1 {
        font-size: 1.3rem !important;
    }
}

/* Botones de acción en tablas (Editar, Eliminar) */
body #contenedor_cuerpo table td button,
body #contenedor_cuerpo table td a[href*="editar"],
body #contenedor_cuerpo table td a[href*="eliminar"],
body #contenedor_cuerpo table td input[type="button"],
body #contenedor_cuerpo table td .btn-action {
    display: inline-block !important;
    padding: 6px 12px !important;
    margin: 2px 4px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 4px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    box-sizing: border-box !important;
    min-width: 60px !important;
    text-align: center !important;
    line-height: 1.4 !important;
    vertical-align: middle !important;
    font-family: inherit !important;
    outline: none !important;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
}

/* Botón Editar específico */
body #contenedor_cuerpo table td button[name*="editar"],
body #contenedor_cuerpo table td a[href*="editar"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #3182ce !important;
}

/* Botón Eliminar específico */
body #contenedor_cuerpo table td button[name*="eliminar"],
body #contenedor_cuerpo table td button[name*="borrar"],
body #contenedor_cuerpo table td a[href*="eliminar"] {
    background: #e53e3e !important;
    color: #ffffff !important;
    border-color: #e53e3e !important;
}

/* Hover en botones de tabla */
body #contenedor_cuerpo table td button:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

/* Hover específico para botón editar */
body #contenedor_cuerpo table td button[name*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Hover específico para botón eliminar */
body #contenedor_cuerpo table td button[name*="eliminar"]:hover,
body #contenedor_cuerpo table td button[name*="borrar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover {
    background: #c53030 !important;
    border-color: #c53030 !important;
}

/* Contenedor de acciones en tabla */
body #contenedor_cuerpo table td:last-child {
    text-align: center !important;
    padding: 8px 12px !important;
    white-space: nowrap !important;
}

/* Espaciado entre múltiples botones en la misma celda */
body #contenedor_cuerpo table td button + button,
body #contenedor_cuerpo table td a + button,
body #contenedor_cuerpo table td button + a,
body #contenedor_cuerpo table td a + a {
    margin-left: 6px !important;
}

/* Responsive para botones de tabla */
@media (max-width: 768px) {
    body #contenedor_cuerpo table td button,
    body #contenedor_cuerpo table td a[href*="editar"],
    body #contenedor_cuerpo table td a[href*="eliminar"] {
        padding: 4px 8px !important;
        font-size: 0.7rem !important;
        min-width: 50px !important;
    }
    
    body #contenedor_cuerpo table td:last-child {
        padding: 6px 8px !important;
    }
}

/* Botones de acción en tablas (Editar, Eliminar) - Estructura real */
body #contenedor_cuerpo table td span a[href*="editar"],
body #contenedor_cuerpo table td span a[href*="eliminar"],
body #contenedor_cuerpo table td a[href*="editar"],
body #contenedor_cuerpo table td a[href*="eliminar"] {
    display: inline-block !important;
    padding: 8px 12px !important;
    margin: 4px !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #4a5568 !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    cursor: pointer !important;
    transition: all 0.15s ease !important;
    box-sizing: border-box !important;
    min-width: 70px !important;
    text-align: center !important;
    line-height: 1.4 !important;
    vertical-align: middle !important;
}

/* Imagen dentro del botón editar */
body #contenedor_cuerpo table td span a[href*="editar"] img,
body #contenedor_cuerpo table td a[href*="editar"] img {
    margin-right: 4px !important;
    vertical-align: middle !important;
    width: 14px !important;
    height: 14px !important;
}

/* Estilo específico para botón Editar */
body #contenedor_cuerpo table td span a[href*="editar"],
body #contenedor_cuerpo table td a[href*="editar"] {
    background: #3182ce !important;
    color: #ffffff !important;
    border-color: #3182ce !important;
}

/* Estilo específico para botón Eliminar */
body #contenedor_cuerpo table td span a[href*="eliminar"],
body #contenedor_cuerpo table td a[href*="eliminar"] {
    background: #e53e3e !important;
    color: #ffffff !important;
    border-color: #e53e3e !important;
}

/* Hover en botones de tabla */
body #contenedor_cuerpo table td span a[href*="editar"]:hover,
body #contenedor_cuerpo table td span a[href*="eliminar"]:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover {
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15) !important;
}

/* Hover específico para botón editar */
body #contenedor_cuerpo table td span a[href*="editar"]:hover,
body #contenedor_cuerpo table td a[href*="editar"]:hover {
    background: #2c5aa0 !important;
    border-color: #2c5aa0 !important;
}

/* Hover específico para botón eliminar */
body #contenedor_cuerpo table td span a[href*="eliminar"]:hover,
body #contenedor_cuerpo table td a[href*="eliminar"]:hover {
    background: #c53030 !important;
    border-color: #c53030 !important;
}

/* Celda de acciones */
body #contenedor_cuerpo table td:last-child,
body #contenedor_cuerpo table th:last-child {
    text-align: center !important;
    padding: 10px 12px !important;
    white-space: nowrap !important;
}

/* Span contenedor de los botones */
body #contenedor_cuerpo table td span {
    display: inline-block !important;
}

/* Responsive para botones de tabla */
@media (max-width: 768px) {
    body #contenedor_cuerpo table td span a[href*="editar"],
    body #contenedor_cuerpo table td span a[href*="eliminar"],
    body #contenedor_cuerpo table td a[href*="editar"],
    body #contenedor_cuerpo table td a[href*="eliminar"] {
        padding: 6px 10px !important;
        font-size: 0.7rem !important;
        min-width: 60px !important;
        margin: 2px !important;
    }
    
    body #contenedor_cuerpo table td span a img {
        width: 12px !important;
        height: 12px !important;
        margin-right: 2px !important;
    }
}

/* Filtro para imágenes en botones con fondo de color */
body #contenedor_cuerpo table td button[name*="editar"] img,
body #contenedor_cuerpo table td .botton_link[name*="editar"] img,
body #contenedor_cuerpo table td .bottom_link[name*="editar"] img,
body #contenedor_cuerpo table td span a[href*="editar"] img,
body #contenedor_cuerpo table td a[href*="editar"] img {
    filter: brightness(0) invert(1) !important;
}

body #contenedor_cuerpo table td button[name*="borrar"] img,
body #contenedor_cuerpo table td .botton_link[name*="borrar"] img,
body #contenedor_cuerpo table td .bottom_link[name*="borrar"] img,
body #contenedor_cuerpo table td span a[href*="eliminar"] img,
body #contenedor_cuerpo table td a[href*="eliminar"] img {
    filter: brightness(0) invert(1) !important;
}

/* ========================================
   VER_FICHA.PHP - ESTILOS ULTRA-MINIMALISTAS
   ======================================== */

/* Título principal de la ficha */
body #display_contenido #titulo_ficha {
    margin: 0 0 40px 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
}

body #display_contenido #titulo_ficha h1 {
    color: #2d3748 !important;
    font-size: 1.75rem !important;
    font-weight: 600 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
}

/* Contenedores principales de datos */
body #display_contenido .ficha_container {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Celdas de contenido dentro de los contenedores */
body #display_contenido .ficha_cell {
    padding: 30px !important;
    background: none !important;
    border: none !important;
    margin: 0 !important;
}

/* Títulos de sección (h1 dentro de las celdas) */
body #display_contenido .ficha_cell h1 {
    color: #2d3748 !important;
    font-size: 1.25rem !important;
    font-weight: 600 !important;
    margin: 0 0 25px 0 !important;
    padding: 0 0 15px 0 !important;
    border-bottom: 2px solid #e2e8f0 !important;
    background: none !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Subtítulos h3 */
body #display_contenido .ficha_cell h3 {
    color: #4a5568 !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    margin: 0 0 20px 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    text-transform: none !important;
}

/* Imagen principal de la ficha */
body #display_contenido #ficha_img_principal {
    float: right !important;
    width: 200px !important;
    height: 150px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    margin: 0 0 20px 30px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid #e2e8f0 !important;
}

/* Listas de datos */
body #display_contenido .lista {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    background: none !important;
    border: none !important;
}

/* Items de las listas */
body #display_contenido .lista li {
    display: flex !important;
    align-items: flex-start !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    border-bottom: 1px solid #f1f5f9 !important;
    background: none !important;
    list-style: none !important;
    flex-wrap: wrap !important;
}

body #display_contenido .lista li:last-child {
    border-bottom: none !important;
}

/* Labels dentro de las listas */
body #display_contenido .lista li label {
    font-weight: 600 !important;
    color: #4a5568 !important;
    font-size: 0.875rem !important;
    min-width: 180px !important;
    flex-shrink: 0 !important;
    margin: 0 15px 0 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    display: inline-block !important;
}

/* Contenido de los valores */
body #display_contenido .lista li {
    color: #2d3748 !important;
    font-size: 0.875rem !important;
    line-height: 1.5 !important;
    flex: 1 !important;
}

/* Enlaces dentro de las listas */
body #display_contenido .lista li a {
    color: #3182ce !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: color 0.15s ease !important;
}

body #display_contenido .lista li a:hover {
    color: #2c5aa0 !important;
    text-decoration: underline !important;
}

/* Contenedores de mapas */
body #display_contenido .ficha_container_maps {
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    margin: 0 0 30px 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1) !important;
}

/* Mapas individuales */
body #display_contenido #map-situacion,
body #display_contenido #map-emplazamiento {
    width: 100% !important;
    height: 300px !important;
    border: none !important;
    border-radius: 0 0 8px 8px !important;
}

/* Contenedor centrado para mapas */
body #display_contenido .centrar {
    display: flex !important;
    gap: 20px !important;
    margin: 30px 0 !important;
    flex-wrap: wrap !important;
}

body #display_contenido .centrar .ficha_container_maps {
    flex: 1 !important;
    min-width: 300px !important;
    margin: 0 !important;
}

/* División en columnas */
body #display_contenido #columnas {
    columns: 2 !important;
    column-gap: 40px !important;
    margin: 0 !important;
}

body #display_contenido #columnas .lista {
    break-inside: avoid !important;
}

/* Área de compartir y descargas */
body #display_contenido #share {
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    margin: 40px 0 0 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}

body #display_contenido #share_row {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 30px !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
}

/* Área de botones de descarga */
body #display_contenido #share_middle {
    display: flex !important;
    gap: 20px !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Botones de descarga PDF */
body #display_contenido #share_middle a {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px 25px !important;
    background: #ffffff !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 8px !important;
    text-decoration: none !important;
    color: #4a5568 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    transition: all 0.15s ease !important;
    min-width: 140px !important;
    min-height: 100px !important;
    text-align: center !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.08) !important;
}

body #display_contenido #share_middle a:hover {
    background: #f8fafc !important;
    border-color: #cbd5e0 !important;
    transform: translateY(-1px) !important;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1) !important;
}

/* Iconos PDF en los botones */
body #display_contenido #share_middle a img {
    width: 32px !important;
    height: 32px !important;
    margin: 0 0 10px 0 !important;
    opacity: 0.8 !important;
    transition: all 0.15s ease !important;
}

body #display_contenido #share_middle a:hover img {
    opacity: 1 !important;
    transform: none !important;
    background: none !important;
}

/* Elementos laterales ocultos para mejor centrado */
body #display_contenido #share_left,
body #display_contenido #share_right {
    display: none !important;
}

/* Responsive para ver_ficha */
@media (max-width: 968px) {
    body #display_contenido .centrar {
        flex-direction: column !important;
    }
    
    body #display_contenido .centrar .ficha_container_maps {
        min-width: 100% !important;
    }
    
    body #display_contenido #columnas {
        columns: 1 !important;
    }
    
    body #display_contenido #ficha_img_principal {
        float: none !important;
        width: 100% !important;
        height: 200px !important;
        margin: 0 0 20px 0 !important;
    }
    
    body #display_contenido .ficha_cell {
        padding: 20px !important;
    }
    
    body #display_contenido .lista li label {
        min-width: 100% !important;
        margin: 0 0 5px 0 !important;
        font-weight: 600 !important;
    }
    
    body #display_contenido .lista li {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 15px 0 !important;
    }
    
    body #display_contenido #share_row {
        flex-direction: column !important;
        text-align: center !important;
        padding: 20px !important;
    }
    
    body #display_contenido #titulo_ficha h1 {
        font-size: 1.5rem !important;
    }
}

/* Mensajes de éxito y error específicos en formularios */
body #display_contenido .form-style-1 label.mensaje-exito,
body #contenedor_cuerpo .form-style-1 label.mensaje-exito {
    background: #f0fff4 !important;
    border: 1px solid #c6f6d5 !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;
    color: #22543d !important;
    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}


body #display_contenido .form-style-1 label.mensaje-error,
body #contenedor_cuerpo .form-style-1 label.mensaje-error {
    background: #fef2f2 !important;
    border: 1px solid #fed7d7 !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;
    color: #742a2a !important;
    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}

body #display_contenido .form-style-1 label.mensaje-error .required,


/* Script de detección automática de mensajes */
/* Este CSS busca elementos que contengan palabras específicas usando atributos personalizados */

/* Sobrescribir estilos de .required cuando hay mensajes de éxito */
body #display_contenido .form-style-1 label[title*="exitosa"],
body #display_contenido .form-style-1 label[title*="éxito"],
body #display_contenido .form-style-1 label[title*="exitoso"],
body #display_contenido .form-style-1 label[title*="correctamente"],
body #contenedor_cuerpo .form-style-1 label[title*="exitosa"],
body #contenedor_cuerpo .form-style-1 label[title*="éxito"],
body #contenedor_cuerpo .form-style-1 label[title*="exitoso"],
body #contenedor_cuerpo .form-style-1 label[title*="correctamente"] {
    background: #f0fff4 !important;
    border: 1px solid #c6f6d5 !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;
    color: #22543d !important;
    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}

/* Específicamente para el mensaje "Se han modificado los datos de manera exitosa" */
/* Usaremos un selector más específico que sobrescriba .required */
body #display_contenido .form-style-1 li:first-child label {


    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;

    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}



body #contenedor_cuerpo .form-style-1 li:first-child label {

    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;

    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}



/* Mensajes de error específicos */
body #display_contenido .form-style-1 label:contains("error"),
body #display_contenido .form-style-1 label:contains("Error"),
body #display_contenido .form-style-1 label:contains("no se"),
body #display_contenido .form-style-1 label:contains("No has"),
body #display_contenido .form-style-1 label:contains("no válido"),
body #display_contenido .form-style-1 label:contains("ya está registrado"),
body #contenedor_cuerpo .form-style-1 label:contains("error"),
body #contenedor_cuerpo .form-style-1 label:contains("Error"),
body #contenedor_cuerpo .form-style-1 label:contains("no se"),
body #contenedor_cuerpo .form-style-1 label:contains("No has"),
body #contenedor_cuerpo .form-style-1 label:contains("no válido"),
body #contenedor_cuerpo .form-style-1 label:contains("ya está registrado") {
    background: #fef2f2 !important;
    border: 1px solid #fed7d7 !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    margin: 0 0 20px 0 !important;
    color: #742a2a !important;
    font-weight: 500 !important;
    display: block !important;
    text-align: left !important;
}

body #display_contenido .form-style-1 label:contains("error") .required,
body #display_contenido .form-style-1 label:contains("Error") .required,
body #display_contenido .form-style-1 label:contains("no se") .required,
body #display_contenido .form-style-1 label:contains("No has") .required,
body #display_contenido .form-style-1 label:contains("no válido") .required,
body #display_contenido .form-style-1 label:contains("ya está registrado") .required,
body #contenedor_cuerpo .form-style-1 label:contains("error") .required,
body #contenedor_cuerpo .form-style-1 label:contains("Error") .required,
body #contenedor_cuerpo .form-style-1 label:contains("no se") .required,
body #contenedor_cuerpo .form-style-1 label:contains("No has") .required,
body #contenedor_cuerpo .form-style-1 label:contains("no válido") .required,
body #contenedor_cuerpo .form-style-1 label:contains("ya está registrado") .required {
    color: #e53e3e !important;
    margin-right: 8px !important;
}
body #display_contenido .form-style-1 label.mensaje-error .required {
    color: #e53e3e !important;
    margin-right: 8px !important;
}
