/**
 * Job List Plugin Styles
 * Uses theme colors via CSS custom properties with fallbacks
 */

/* Parent Container */
.job-list-container {
    width: 100%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 1em;
}

/* Job Listing Container */
.job-listing {
    border: 1px solid #d1deea;
    border-radius: 8px;
    padding: 16px;
    background-color: var(--jl-background, #fff);
    flex: 1 1 calc(33.333% - 0.67em);
    min-width: 250px;
    height: 360px;
    overflow-y: auto;
}

/* Job Title */
.job-listing h3 {
    margin: 0 0 1em 0;
    font-size: 18px;
    font-weight: bold;
    color: #0d5b93;
}

/* Field Labels */
.job-listing h4 {
    margin: 0.75em 0 0.25em 0;
    font-size: 18px;
    font-weight: 600;
    color: var(--jl-secondary, #555);
}

.job-listing b {
    font-weight: 600;
    color: var(--jl-secondary, #555);
}

/* Field Values */
.job-listing p {
    margin: 0 0 0.5em 0;
    line-height: 1.6;
    color: var(--jl-text-light, #666);
}

.job-listing div {
    margin: 0.5em 0;
    line-height: 1.6;
    color: var(--jl-text-light, #666);
}

/* Lists */
.job-listing ul {
    margin: 0.5em 0;
    padding-left: 1.5em;
    list-style-type: disc;
}

.job-listing li {
    margin: 0.25em 0;
    line-height: 1.6;
    color: var(--jl-text-light, #666);
}

/* Button */
.job-listing-button-wrapper {
    margin-top: 1em;
    padding-top: 1em;
    border-top: 1px solid var(--jl-border, #e0e0e0);
    text-align: center;
}

.job-listing-button {
    display: inline-block;
    padding: 10px 20px;
    background-color: #0d5b93;
    color: #fff;
    text-decoration: none;
    border-radius: 4px;
    font-weight: 600;
    text-align: center;
    transition: background-color 0.3s ease;
}

.job-listing-button:hover {
    background-color: #0a4a7a;
    color: #fff;
    text-decoration: none;
}

/* Responsive */
@media (max-width: 768px) {
    .job-listing h3 {
        font-size: 1.25em;
    }
    
    .job-listing h4 {
        font-size: 1em;
    }
}
