/* ========================================
   Opportunity Listing Overrides
   ======================================== */

/* Tighten meta spacing */
ul.job_listings li.job_listing ul.meta {
    padding-left: 0;
    margin-left: 0;
}

ul.job_listings li.job_listing ul.meta {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 6px;
    padding: 0;
    margin: 0;
    list-style: none;
    width: auto;
    min-width: 180px;
    text-align: right;
}

ul.job_listings li.job_listing ul.meta li {
    float: none;
    width: auto;
    margin: 0;
    padding: 0;
    line-height: 1.3;
    font-size: 0.95rem;
    color: #7a7a7a;
}

/* Badge styling */
ul.job_listings li.job_listing ul.meta li.job-type {
    display: inline-block;
    align-self: flex-end;
    border-radius: 4px;
    padding: 4px 10px;
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.2;
    letter-spacing: 0.2px;
    margin: 0 0 2px 0;
    color: #fff;
    min-width: 0;
}

/* ========================================
   Base badge styling (applies everywhere)
   ======================================== */

.job_listing .job-type,
.single_job_listing .meta .job-type {
    font-size: 0.8rem;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0.2px;
    border: none;
    border-radius: 4px;
    margin-right: 6px;
    margin-bottom: 4px;
    color: #fff;
}

/* Employment types */
ul.job_listings li.job_listing ul.meta li.job-type.full-time,
.single_job_listing .meta li.job-type.full-time,
.meta li.job-type.full-time {
    background-color: #4A6572;
    color: #ffffff;
}

ul.job_listings li.job_listing ul.meta li.job-type.part-time,
.single_job_listing .meta li.job-type.part-time,
.meta li.job-type.part-time {
    background-color: #6B8794;
    color: #ffffff;
}

ul.job_listings li.job_listing ul.meta li.job-type.temporary,
.single_job_listing .meta li.job-type.temporary,
.meta li.job-type.temporary {
    background-color: #8DA3AD;
    color: #ffffff;
}

/* Academic types */
ul.job_listings li.job_listing ul.meta li.job-type.bachelors,
.single_job_listing .meta li.job-type.bachelors,
.meta li.job-type.bachelors {
    background-color: #5B7C99;
    color: #ffffff;
}

ul.job_listings li.job_listing ul.meta li.job-type.masters,
.single_job_listing .meta li.job-type.masters,
.meta li.job-type.masters {
    background-color: #4F6D8A;
    color: #ffffff;
}

ul.job_listings li.job_listing ul.meta li.job-type.phd,
.single_job_listing .meta li.job-type.phd,
.meta li.job-type.phd {
    background-color: #2F5D73;
    color: #ffffff;
}

ul.job_listings li.job_listing ul.meta li.job-type.postdoc,
.single_job_listing .meta li.job-type.postdoc,
.meta li.job-type.postdoc {
    background-color: #355C4B;
    color: #ffffff;
}

/* Internship */
ul.job_listings li.job_listing ul.meta li.job-type.internship,
.single_job_listing .meta li.job-type.internship,
.meta li.job-type.internship {
    background-color: #D9822B;
    color: #ffffff;
}

/* Research - standout badge */
ul.job_listings li.job_listing ul.meta li.job-type.research,
.single_job_listing .meta li.job-type.research,
.meta li.job-type.research {
    background-color: #00A8A8;
    color: #ffffff;
    font-weight: 700;
    border-radius: 4px;
    padding: 4px 10px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

/* ========================================
   Closing date styling
   ======================================== */

.single_job_listing .meta li.date strong,
.job_listing .meta li.date strong {
    color: #e85d75;
    font-weight: 600;
}

/* ========================================
   Hover polish (optional but nice)
   ======================================== */

ul.job_listings li.job_listing:hover {
    background-color: #f8f9fa;
    transition: background-color 0.2s ease;
}