/* ==========================================================================
   Licitaciones · listado compacto
   Todo scopeado bajo .licitaciones para no chocar con el tema
   ========================================================================== */

.licitaciones{
  --lic-azul:#009fe3;
  --lic-navy:#12325c;
  --lic-texto:#5a6875;
  --lic-borde:#e3e9ef;
  --lic-suave:#f8fbfe;
  color:var(--lic-texto);
  font-size:15px;
  line-height:1.45;
}

.licitaciones *,
.licitaciones *::before,
.licitaciones *::after{ box-sizing:border-box; }

/* --- barra de filtros --------------------------------------------------- */
.licitaciones .lic-toolbar{
  background:#fff;
  border:1px solid var(--lic-borde);
  border-radius:10px 10px 0 0;
  padding:1rem;
}
.licitaciones .lic-campo{
  display:block;
  width:100%;
  height:calc(1.5em + 1rem + 2px);
  padding:.5rem .75rem;
  font-size:14px;
  color:var(--lic-navy);
  background:#fff;
  border:1px solid var(--lic-borde);
  border-radius:6px;
  -webkit-appearance:none;
  appearance:none;
}
.licitaciones select.lic-campo{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath fill='%235a6875' d='M0 0l5 6 5-6z'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right .75rem center;
  padding-right:2rem;
}
.licitaciones .lic-campo:focus{
  outline:0;
  border-color:var(--lic-azul);
  box-shadow:0 0 0 3px rgba(0,159,227,.15);
}

/* --- chips de estado ---------------------------------------------------- */
.licitaciones .lic-chip{
  display:inline-block;
  border:1px solid var(--lic-borde);
  background:#fff;
  border-radius:50px;
  padding:.3rem .85rem;
  margin:.6rem .35rem 0 0;
  font-size:13px;
  color:var(--lic-texto);
  cursor:pointer;
  transition:all .15s ease;
}
.licitaciones .lic-chip:hover{ border-color:var(--lic-azul); color:var(--lic-navy); }
.licitaciones .lic-chip.activo{ background:var(--lic-navy); border-color:var(--lic-navy); color:#fff; }
.licitaciones .lic-chip .n{ opacity:.65; margin-left:.35rem; }

/* --- lista -------------------------------------------------------------- */
.licitaciones .lic-lista{
  background:#fff;
  border:1px solid var(--lic-borde);
  border-top:0;
  border-radius:0 0 10px 10px;
}
.licitaciones .lic-item{
  border-top:1px solid var(--lic-borde);
  padding:.9rem 1rem;
  cursor:pointer;
  transition:background-color .12s ease;
}
.licitaciones .lic-item:hover,
.licitaciones .lic-item.abierto{ background:var(--lic-suave); }

.licitaciones .lic-region{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:38px;
  height:38px;
  border-radius:8px;
  background:#eef4f9;
  color:var(--lic-navy);
  font-weight:700;
  font-size:13px;
}

.licitaciones .lic-nombre{
  color:var(--lic-navy);
  font-weight:600;
  font-size:14.5px;
  line-height:1.35;
  margin:0 0 .2rem;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.licitaciones .lic-item.abierto .lic-nombre{ -webkit-line-clamp:unset; }

.licitaciones .lic-meta{ font-size:12.5px; color:#8a97a5; margin:0; }
.licitaciones .lic-meta span + span::before{ content:"·"; margin:0 .4rem; }
.licitaciones .lic-fecha{ font-size:12.5px; color:#8a97a5; margin:.25rem 0 0; white-space:nowrap; }

/* --- badge de estado ---------------------------------------------------- */
.licitaciones .lic-estado{
  display:inline-block;
  font-size:11.5px;
  font-weight:600;
  letter-spacing:.02em;
  text-transform:uppercase;
  padding:.25rem .6rem;
  border-radius:4px;
  white-space:nowrap;
}
.licitaciones .lic-estado--adjudicada{ background:#e6f5ec; color:#1c7a45; }
.licitaciones .lic-estado--publicada { background:#e4f4fc; color:#00688f; }
.licitaciones .lic-estado--cerrada   { background:#fdf1dd; color:#8a5a10; }
.licitaciones .lic-estado--desierta  { background:#fbe9ea; color:#9c2a33; }
.licitaciones .lic-estado--otro      { background:#eef0f3; color:#61707e; }

/* --- detalle ------------------------------------------------------------ */
.licitaciones .lic-detalle{ display:none; padding-top:.85rem; }
.licitaciones .lic-item.abierto .lic-detalle{ display:block; }
.licitaciones .lic-detalle dl{ margin:0; font-size:13px; }
.licitaciones .lic-detalle dt{ color:#8a97a5; font-weight:500; margin:0 0 .1rem; }
.licitaciones .lic-detalle dd{ color:var(--lic-navy); margin:0 0 .75rem; }
.licitaciones .lic-detalle a{ color:var(--lic-azul); }

/* --- pie y estados vacíos ----------------------------------------------- */
.licitaciones .lic-pie{ padding:1rem; text-align:center; border-top:1px solid var(--lic-borde); }
.licitaciones .lic-conteo{ font-size:12.5px; color:#8a97a5; margin:.5rem 0 0; }
.licitaciones .lic-vacio{ padding:2.5rem 1rem; text-align:center; color:#8a97a5; }
.licitaciones .lic-boton{
  border:1px solid var(--lic-borde);
  background:#fff;
  color:var(--lic-navy);
  border-radius:6px;
  padding:.5rem 1.25rem;
  font-size:14px;
  cursor:pointer;
}
.licitaciones .lic-boton:hover{ border-color:var(--lic-azul); }

/* --- respaldo sin JS ---------------------------------------------------- */
.licitaciones .lic-sinjs{ padding:1.5rem; text-align:center; color:#8a97a5; }

/* ==========================================================================
   Etiqueta de cambio climático
   ========================================================================== */
.licitaciones .lic-clima{
  display:inline-block;
  font-size:11.5px;
  font-weight:600;
  padding:.2rem .55rem;
  border-radius:4px;
  text-decoration:none;
}
.licitaciones .lic-clima:hover{ text-decoration:underline; }
.licitaciones .lic-clima--adaptacion{ background:#e3f2f7; color:#0f6076; }
.licitaciones .lic-clima--mitigacion{ background:#e8f4e4; color:#3f6b28; }

/* ==========================================================================
   Glosario (bloque que va en el contenido del artículo)
   ========================================================================== */
.glosario{
  --gl-navy:#12325c;
  --gl-borde:#e3e9ef;
  font-size:15px;
  line-height:1.5;
  color:#5a6875;
  margin:2rem 0;
}
.glosario details{
  background:#fff;
  border:1px solid var(--gl-borde);
  border-radius:10px;
  margin-bottom:.75rem;
  overflow:hidden;
}
.glosario summary{
  cursor:pointer;
  padding:1rem 1.15rem;
  font-weight:600;
  color:var(--gl-navy);
  list-style:none;
  position:relative;
  padding-right:2.5rem;
}
.glosario summary::-webkit-details-marker{ display:none; }
.glosario summary::after{
  content:"+";
  position:absolute;
  right:1.15rem;
  top:50%;
  transform:translateY(-50%);
  font-size:1.25rem;
  font-weight:400;
  color:#009fe3;
}
.glosario details[open] summary::after{ content:"\2013"; }
.glosario summary:hover{ background:#f8fbfe; }
.glosario .gl-cuerpo{ padding:0 1.15rem 1.15rem; }
.glosario .gl-cuerpo p{ margin:0 0 .85rem; }
.glosario table{ width:100%; margin:0; font-size:14px; }
.glosario table th{
  text-align:left;
  padding:.5rem .75rem;
  color:var(--gl-navy);
  border-bottom:1px solid var(--gl-borde);
  font-weight:600;
}
.glosario table td{ padding:.5rem .75rem; border-bottom:1px solid #f1f5f8; }
.glosario table td:first-child{ color:var(--gl-navy); font-weight:600; width:70px; }
.glosario .gl-titulo{ color:var(--gl-navy); font-weight:600; margin:1.25rem 0 .4rem; }
.glosario .gl-titulo:first-child{ margin-top:0; }
.glosario ul{ margin:0 0 .5rem; padding-left:1.15rem; }
.glosario ul li{ margin-bottom:.2rem; }
.glosario .gl-tag{
  display:inline-block;
  font-size:11.5px;
  font-weight:600;
  padding:.2rem .55rem;
  border-radius:4px;
  margin-right:.4rem;
}
.glosario .gl-tag--adaptacion{ background:#e3f2f7; color:#0f6076; }
.glosario .gl-tag--mitigacion{ background:#e8f4e4; color:#3f6b28; }
