:root {
    --primary-color: #2e7d32;
    --secondary-color: #81c784;
    --accent-color: #dc0d0a;
    --dark-color: #1b5e20;
    --light-color: #f1f8e9;
    --color-get: #2e7d32;  
    --color-post: #ff8f00;   
    --color-put: #1565c0;    
    --color-patch: #1565c0;  
    --color-delete: #c62828; 
    --color-head: #5d4037;   
    --color-options: #6a1b9a;
}

/* Fondo completo para el encabezado */
.swagger-ui .topbar {
    background:
        linear-gradient(135deg, #1b5e20, #2e7d32),
        url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" fill="%23ffffff20"><rect x="10" y="10" width="20" height="20"/><rect x="40" y="10" width="20" height="20"/><rect x="70" y="10" width="20" height="20"/><rect x="10" y="40" width="20" height="20"/><rect x="40" y="40" width="20" height="20"/><rect x="70" y="40" width="20" height="20"/><rect x="10" y="70" width="20" height="20"/><rect x="40" y="70" width="20" height="20"/><rect x="70" y="70" width="20" height="20"/></svg>');
    background-size: auto, 150px 150px;
    background-repeat: no-repeat, repeat;
    position: relative;
    overflow: hidden;
    padding: 20px 0;
}

/* Extender el pseudo-elemento para cubrir todo el ancho */
.swagger-ui .topbar:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" fill="%23ffffff10"><path d="M20,20 L30,20 L30,30 L20,30 Z M50,20 L60,20 L60,30 L50,30 Z M80,20 L90,20 L90,30 L80,30 Z M20,50 L30,50 L30,60 L20,60 Z M50,50 L60,50 L60,60 L50,60 Z M80,50 L90,50 L90,60 L80,60 Z M20,80 L30,80 L30,90 L20,90 Z M50,80 L60,80 L60,90 L50,90 Z M80,80 L90,80 L90,90 L80,90 Z"/></svg>');
    background-size: 100px 100px;
    opacity: 0.15;
    z-index: 0;
}

/* Asegurar que el contenido esté sobre el fondo */
.swagger-ui .topbar-wrapper {
    position: relative;
    z-index: 1;
}
.swagger-ui .topbar .topbar-wrapper img {
    /*content: url('https://upload.wikimedia.org/wikipedia/commons/3/3a/PCM-Agricultura.png');*/
    height: 40px;
}

.swagger-ui .info .title {
    color: var(--primary-color) !important;
    font-size: 28px !important;
}

.swagger-ui .btn.authorize {
    background-color: var(--accent-color) !important;
    color: var(--light-color);
    border-color: var(--accent-color) !important;
}
.swagger-ui .btn.authorize svg {
    fill: var(--light-color);
    stroke: var(--light-color);
    transition: all 0.3s ease;
}
.swagger-ui .opblock .opblock-summary {
    background: var(--light-color) !important;
}

/*.swagger-ui .opblock .opblock-summary-method {
    background: var(--primary-color) !important;
}*/

/*.swagger-ui .opblock.opblock-post .opblock-summary-method {
    background: var(--secondary-color) !important;
}*/

.swagger-ui .model-box {
    background: var(--light-color) !important;
}

body {
    background-color: #f5f5f5;
}

/* Fondo temático de parcelas */
.swagger-ui .topbar:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    width: 300px;
    height: 100%;
    background-image: url('https://img.freepik.com/foto-gratis/vista-terreno-desarrollo-inmobiliario-empresarial_23-2149916719.jpg?t=st=1744117070~exp=1744120670~hmac=6a975e4961f4287524b82316666a6d793eef385e829cd52d2836f9bb9c1935ce&w=1380');
    background-repeat: repeat;
    opacity: 0.1;
}

/* Estilos generales para los métodos */
.swagger-ui .opblock .opblock-summary-method {
    color: white !important;
    font-weight: bold;
    text-shadow: 0 1px 1px rgba(0,0,0,0.2);
    border-radius: 4px;
    min-width: 50px;
    text-align: center;
    padding: 5px 8px;
  }
  
  /* GET - Verde (Consultas) */
  .swagger-ui .opblock.opblock-get {
    border-color: var(--color-get);
  }
  .swagger-ui .opblock.opblock-get .opblock-summary-method {
    background-color: var(--color-get);
  }
  .swagger-ui .opblock.opblock-get .opblock-summary {
    background: rgba(46, 125, 50, 0.1);
  }
  
  /* POST - Naranja (Creación) */
  .swagger-ui .opblock.opblock-post {
    border-color: var(--color-post);
  }
  .swagger-ui .opblock.opblock-post .opblock-summary-method {
    background-color: var(--color-post);
  }
  .swagger-ui .opblock.opblock-post .opblock-summary {
    background: rgba(255, 143, 0, 0.1);
  }
  
  /* PUT/PATCH - Azul (Actualización) */
  .swagger-ui .opblock.opblock-put .opblock-summary-method,
  .swagger-ui .opblock.opblock-patch .opblock-summary-method {
    background-color: var(--color-put);
  }
  .swagger-ui .opblock.opblock-put,
  .swagger-ui .opblock.opblock-patch {
    border-color: var(--color-put);
  }
  .swagger-ui .opblock.opblock-put .opblock-summary,
  .swagger-ui .opblock.opblock-patch .opblock-summary {
    background: rgba(21, 101, 192, 0.1);
  }
  
  /* DELETE - Rojo (Eliminación) */
  .swagger-ui .opblock.opblock-delete {
    border-color: var(--color-delete);
  }
  .swagger-ui .opblock.opblock-delete .opblock-summary-method {
    background-color: var(--color-delete);
  }
  .swagger-ui .opblock.opblock-delete .opblock-summary {
    background: rgba(198, 40, 40, 0.1);
  }
  
  /* Efectos hover */
  .swagger-ui .opblock:hover .opblock-summary-method {
    opacity: 0.9;
    transform: scale(1.02);
    transition: all 0.2s ease;
  }
  
  /* Iconos personalizados para cada método */
  .swagger-ui .opblock .opblock-summary-method::before {
    content: "";
    display: inline-block;
    margin-right: 6px;
    vertical-align: middle;
    background-size: contain;
    background-repeat: no-repeat;
    width: 14px;
    height: 14px;
  }
  
  .swagger-ui .opblock-get .opblock-summary-method::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8zm1-13h-2v6h2V7zm0 8h-2v2h2v-2z"/></svg>');
  }
  
  .swagger-ui .opblock-post .opblock-summary-method::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z"/></svg>');
  }
  
  .swagger-ui .opblock-put .opblock-summary-method::before,
  .swagger-ui .opblock-patch .opblock-summary-method::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34a.9959.9959 0 0 0-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z"/></svg>');
  }
  
  .swagger-ui .opblock-delete .opblock-summary-method::before {
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="white" viewBox="0 0 24 24"><path d="M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z"/></svg>');
  }
  
  /* Fondo de los paneles de operación */
  .swagger-ui .opblock .opblock-section {
    background-color: rgba(241, 248, 233, 0.5); /* Verde claro agrícola */
    border-left: 3px solid;
  }
  
  .swagger-ui .opblock-get .opblock-section {
    border-left-color: var(--color-get);
  }
  
  .swagger-ui .opblock-post .opblock-section {
    border-left-color: var(--color-post);
  }
  
  .swagger-ui .opblock-put .opblock-section,
  .swagger-ui .opblock-patch .opblock-section {
    border-left-color: var(--color-put);
  }
  
  .swagger-ui .opblock-delete .opblock-section {
    border-left-color: var(--color-delete);
  }