.jobs-grid { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); 
    gap: 20px; 
    margin-top:20px;
}
.jobs-grid .alert {
    background-color: #00b6d7;
    color: #fff;
    padding: 10px;
    border-radius: 5px;
    margin-bottom: 20px;
}
.job-card { 
    border:1px solid #e2e8f0; 
    border-radius:12px; 
    padding:20px; 
    background:#fff; 
    box-shadow:0 2px 8px rgba(0,0,0,0.05);
    display:flex; 
    flex-direction:column; 
    justify-content:space-between;
}
.job-card h3 { 
    margin:0 0 10px; 
    font-size:18px; 
    color:#1a202c;
    min-height: 2lh;
}
.job-meta { 
    font-size:14px; 
    color: #4a5568; 
    margin-bottom:8px; 
    display:flex; 
    align-items:center; 
    gap:6px;
}
.job-tags span { 
    display:inline-block; 
    background: #f0fdff;
    color: #00b6d7; 
    font-size:12px; 
    font-weight:bold;
    padding:4px 8px; 
    border-radius:20px; 
    border: 1px solid #00b6d7;
    margin-right:6px;
}
.job-salary { 
    color:#00b6d7; 
    font-weight:bold; 
    margin:10px 0;
    font-size:16px;
}
.job-desc { 
    font-size:14px; 
    color:#2d3748; 
    margin:10px 0; 
    flex-grow:1;
}
.job-footer { 
    display:flex; 
    justify-content:space-between; 
    align-items:center; 
    font-size:14px; 
    color:#718096;
    margin-top:15px;
}
.job-footer button, 
.job-footer a { 
    background:#00b6d7; 
    color:white; 
    padding:8px 16px; 
    border:none; 
    border-radius:6px; 
    text-decoration:none; 
    cursor:pointer; 
    font-size:14px;
    transition: background 0.2s;
}
.job-footer button:hover, 
.job-footer a:hover { 
    background:#00b6d7; 
}
.job-modal {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,0.6);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
}
.job-modal-content {
    background: #fff;
    border-radius: 10px;
    padding: 20px;
    width: 90%;
    max-width: 900px;
    max-height: 90vh;
    overflow-y: auto;
    position: relative; 
}
.job-modal-close {
    position: absolute;
    top: 10px;
    right: 15px;
    font-size: 24px;
    cursor: pointer;
}
.form-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 15px;
    margin-bottom: 20px;
}
.form-grid label {
    display: block;
    font-weight: bold;
    margin-bottom: 5px;
}
.form-grid select {
    width: 100%;
    padding: 6px;
}
.form-actions {
  display: flex;
  align-items: center;      /* centra verticalmente */
  justify-content: center;  /* centra horizontalmente */
  gap: 10px;                /* espacio entre botones */
  margin-top: 10px;         /* opcional, para dar aire */
}

.form-actions button {
  background: #00b6d7;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.4;
  height: 42px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;      /* evita que se parta el texto */
}
.form-actions button:hover {
  color: #fff !important;
}

#limpiarFiltros {
  background: #6b7280; /* gris */
}

.select2-container .select2-selection--single {
  height: 42px !important;
  border-radius: 6px !important;
  border: 1px solid #ccc !important;
  display: flex !important;
  align-items: center !important;
  padding: 0 8px !important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  top: 0px !important;
  right: 8px !important;
}

.select2-container--open .select2-dropdown--below {
  margin-top: 5px !important;
  border: 1px #ccc solid !important;
  border-radius: 6px !important;
}

span.select2-dropdown .select2-search--dropdown .select2-search__field {
  height: 35px !important;
  padding: var(--has-classic-forms, 0 10px) !important;
  border-radius: var(--has-classic-forms, 2px) !important;
  border: 1px #ccc solid !important;
}

.ver-mas a {
  background: #00b6d7;
  color: #fff;
  border: none;
  padding: 10px 20px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 20px;
  line-height: 1.4;
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  margin: 30px 0;
  background-image: url(https://admin.saludirecta.com/assets/static/images/logosaluddirecta-blanco.png);
  background-repeat: no-repeat;
  background-position: 10px;
  background-size: 30px;
}

.ver-mas a:hover {
  background: #00798f;
  color: #fff;
}

.jobs-ultimas-vacantes{
  text-align: center;
  margin-top: 40px;
}

.jobs-ultimas-vacantes h2{
  font-weight: 700;
  color: #050505;
}