/**
 * Frontend styling for [workday_job_board] shortcode.
 * Inherits font family and container rhythm cleanly in Astra, Kadence, GeneratePress, Blocksy & Neve.
 */
.wij-container {
    max-width: 1140px;
    margin: 2rem auto;
    font-family: inherit;
    color: #1e293b;
}

.wij-header-bar {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.wij-title {
    margin: 0 0 0.25rem 0;
    font-size: 1.75rem;
    font-weight: 700;
    color: #0f2942;
}

.wij-subtitle {
    margin: 0;
    font-size: 0.95rem;
    color: #475569;
}

.wij-bookmark-filter-btn {
    padding: 0.6rem 1.1rem;
    border-radius: 6px;
    border: 1px solid #cbd5e1;
    background: #f8fafc;
    color: #0f2942;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

.wij-bookmark-filter-btn.active {
    background: #0d6e6e;
    color: #ffffff;
    border-color: #0d6e6e;
}

.wij-controls-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 0.85rem;
    margin-bottom: 1.25rem;
}

.wij-input,
.wij-select {
    width: 100%;
    padding: 0.65rem 0.85rem;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    font-size: 0.95rem;
    background: #ffffff;
    color: #1e293b;
}

.wij-role-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
}

.wij-pill {
    padding: 0.45rem 0.95rem;
    border-radius: 9999px;
    border: 1px solid #e2e8f0;
    background: #f1f5f9;
    color: #334155;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.wij-pill:hover {
    background: #e2e8f0;
}

.wij-pill.active {
    background: #0f2942;
    color: #ffffff;
    border-color: #0f2942;
}

.wij-jobs-feed {
    display: flex;
    flex-direction: column;
    gap: 0.85rem;
}

.wij-job-card {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1.15rem 1.35rem;
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    background: #ffffff;
    transition: border-color 0.15s ease;
}

.wij-job-card:hover {
    border-color: #0d6e6e;
}

.wij-job-title {
    margin: 0 0 0.35rem 0;
    font-size: 1.1rem;
    font-weight: 600;
    color: #0f2942;
}

.wij-job-meta {
    margin: 0;
    font-size: 0.875rem;
    color: #475569;
}

.wij-badge {
    display: inline-block;
    padding: 0.15rem 0.55rem;
    border-radius: 4px;
    background: #e6f4f1;
    color: #0d6e6e;
    font-size: 0.78rem;
    font-weight: 600;
    margin-left: 0.35rem;
}

.wij-job-actions {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.wij-star-btn {
    background: transparent;
    border: none;
    font-size: 1.45rem;
    line-height: 1;
    color: #f59e0b;
    cursor: pointer;
    padding: 0.25rem;
}

.wij-apply-btn {
    display: inline-block;
    padding: 0.55rem 1.1rem;
    border-radius: 6px;
    background: #0d6e6e;
    color: #ffffff !important;
    text-decoration: none !important;
    font-size: 0.875rem;
    font-weight: 600;
}

.wij-apply-btn:hover {
    background: #0f2942;
}


/* Candidate registration gate */
.wij-register-modal{position:fixed;inset:0;z-index:99999;background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;padding:18px;overflow:auto}
.wij-register-panel{position:relative;background:#fff;color:#172033;width:min(100%,480px);max-height:calc(100vh - 36px);overflow:auto;border-radius:14px;padding:24px;box-shadow:0 20px 70px rgba(0,0,0,.28)}
.wij-register-panel h3{margin:0 0 8px;font-size:1.35rem}
.wij-register-panel form{display:grid;gap:12px;margin-top:16px}
.wij-register-panel label{display:grid;gap:6px;font-weight:600}
.wij-register-panel input{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:7px;font:inherit}
.wij-register-message{margin:0;color:#b42318;font-size:.95rem}
.wij-register-login{display:inline-block;margin-top:14px}
.wij-register-close{margin-top:12px;border:0;background:transparent;text-decoration:underline;cursor:pointer}
.wij-register-panel button:disabled{opacity:.6;cursor:wait}


/* Candidate profile and alert forms */
.wij-profile{max-width:820px;margin:1.5rem auto;padding:1.25rem;border:1px solid #e2e8f0;border-radius:12px;background:#fff;color:#172033}.wij-profile h2,.wij-profile h3{color:#0f2942}.wij-profile form{margin:1rem 0}.wij-profile label{display:block}.wij-profile input:not([type=checkbox]){max-width:100%;width:min(100%,480px);padding:.65rem;border:1px solid #cbd5e1;border-radius:6px}.wij-profile button{padding:.55rem .9rem;border:0;border-radius:6px;background:#0d6e6e;color:#fff;cursor:pointer}.wij-profile-notice{padding:.7rem;background:#e6f4f1;border-radius:6px}


/* Imported job content and richer metadata */
.wij-job-card{align-items:flex-start}
.wij-job-card>div:first-child{flex:1 1 520px;min-width:0}
.wij-job-title a{color:inherit;text-decoration:none}
.wij-job-title a:hover{text-decoration:underline}
.wij-job-salary{margin:.55rem 0 .35rem;font-weight:700;color:#0d6e6e}
.wij-job-excerpt{margin:.45rem 0 0;color:#334155;font-size:.92rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.wij-job-extra{margin:.45rem 0 0;color:#64748b;font-size:.82rem}
.wij-details-btn{display:inline-block;padding:.5rem .8rem;border:1px solid #cbd5e1;border-radius:6px;color:#0f2942;text-decoration:none;font-size:.875rem;font-weight:600}
.wij-details-btn:hover{background:#f1f5f9}
.wij-job-actions{flex-wrap:wrap}

.wij-register-tabs{display:flex;gap:8px;margin:12px 0}.wij-register-tabs button{padding:8px 12px;border:1px solid #cbd5e1;border-radius:7px;background:#f8fafc;color:#172033;cursor:pointer}.wij-register-resend{margin-top:10px;padding:8px 12px;border:1px solid #0d6e6e;border-radius:7px;background:#fff;color:#0d6e6e;cursor:pointer}.wij-register-resend[hidden]{display:none}
