.jrats-wrap{max-width:980px}
.jrats-card{background:#fff;border:1px solid #dcdcde;border-radius:10px;padding:16px}
.jrats-card h3{margin-top:0}


.jr-save-search-btn {
    width: 100%;
    margin-top: 10px;
    padding: 10px;
    background: #16a34a;
    color: #fff;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    transition: 0.2s;
}

.jr-save-search-btn:hover {
    background: #15803d;
}

.jr-saved-searches-box button {
    padding: 6px 10px;
    border: 1px solid #d1d5db;
    background: #f9fafb;
    border-radius: 6px;
    cursor: pointer;
    font-size: 12px;
}

.jr-saved-searches-box button:hover {
    background: #f3f4f6;
}
.jr-saved-searches-box {
    transition: all 0.2s ease;
}

.jr-saved-searches-box button {
    margin-left: 5px;
}

/* ============================================================
   Jobs List Shortcode — [jr_jobs_list] ENHANCED v5
   ============================================================ */

.jrats-jobs-count {
    margin: 16px 0 24px;
    font-weight: 600;
    color: #666;
    font-size: 15px;
}

.jrats-jobs-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* ---- Enhanced Job Card Container ---- */
.jrats-job-card-enhanced {
    background: #fff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: all 0.2s ease;
}

.jrats-job-card-enhanced:hover {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: #d1d5db;
}

/* ---- Top Section: Logo, Title, Match Badge ---- */
.jrats-job-card-enhanced__top {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 14px;
    position: relative;
}

.jrats-job-card-enhanced__logo {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    flex-shrink: 0;
    color: #fff;
}

.jrats-job-card-enhanced__title-section {
    flex: 1;
    min-width: 0;
}

.jrats-job-card-enhanced__title {
    margin: 0 0 6px 0;
    font-size: 18px;
    font-weight: 700;
    color: #1f2937;
    line-height: 1.3;
    word-break: break-word;
}

.jrats-job-card-enhanced__company {
    font-size: 14px;
    color: #6b7280;
    font-weight: 500;
}

.jrats-job-card-enhanced__match {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 56px;
    height: 56px;
    border-radius: 10px;
    color: #fff;
    font-weight: 700;
    font-size: 16px;
    flex-shrink: 0;
}

/* ---- Location & Experience Row ---- */
.jrats-job-card-enhanced__meta-row {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 12px;
    flex-wrap: wrap;
    font-size: 14px;
}

.jrats-job-card-enhanced__location {
    color: #6b7280;
    font-size: 14px;
}

.jrats-job-card-enhanced__experience {
    background: #f3f4f6;
    color: #374151;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 13px;
    font-weight: 600;
}

/* ---- Salary + Details Row ---- */
.jrats-job-card-enhanced__details-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
    flex-wrap: wrap;
    font-size: 14px;
}

.jrats-job-card-enhanced__salary {
    font-weight: 600;
    color: #1f2937;
    white-space: nowrap;
}

.jrats-job-card-enhanced__details {
    color: #6b7280;
    font-size: 13px;
}

/* ---- Benefits Section ---- */
.jrats-job-card-enhanced__benefits {
    background: #fffbf0;
    border-left: 4px solid #f59e0b;
    padding: 10px 12px;
    border-radius: 6px;
    margin-bottom: 12px;
    font-size: 13px;
    color: #92400e;
}

/* ---- Description ---- */
.jrats-job-card-enhanced__description {
    color: #6b7280;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 14px;
    max-height: 48px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

/* ---- Footer: Date + Button ---- */
.jrats-job-card-enhanced__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 12px;
    border-top: 1px solid #f3f4f6;
    flex-wrap: wrap;
}

.jrats-job-card-enhanced__date {
    color: #059669;
    font-size: 13px;
    font-weight: 500;
}

/* ---- Apply Button ---- */
.jrats-job-card-enhanced__btn {
    padding: 10px 24px;
    border: none;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.jrats-job-card-enhanced__btn--primary {
    background: #3b82f6;
    color: #fff;
}

.jrats-job-card-enhanced__btn--primary:hover {
    background: #2563eb;
    box-shadow: 0 4px 8px rgba(37, 99, 235, 0.3);
}

.jrats-job-card-enhanced__btn--primary:active {
    background: #1d4ed8;
}

.jrats-job-card-enhanced__btn--disabled {
    background: #e5e7eb;
    color: #9ca3af;
    cursor: default;
    opacity: 0.6;
}

/* ---- Mobile Responsive ---- */
@media (max-width: 768px) {
    .jrats-job-card-enhanced {
        padding: 16px;
    }

    .jrats-job-card-enhanced__top {
        flex-direction: column;
        align-items: flex-start;
    }

    .jrats-job-card-enhanced__match {
        position: absolute;
        top: 16px;
        right: 16px;
        width: 48px;
        height: 48px;
        font-size: 14px;
    }

    .jrats-job-card-enhanced__title {
        font-size: 16px;
        margin-right: 50px;
    }

    .jrats-job-card-enhanced__details-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .jrats-job-card-enhanced__footer {
        flex-direction: column;
        align-items: stretch;
    }

    .jrats-job-card-enhanced__btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .jrats-job-card-enhanced {
        padding: 12px;
    }

    .jrats-job-card-enhanced__title {
        font-size: 15px;
        margin-right: 45px;
    }

    .jrats-job-card-enhanced__match {
        width: 44px;
        height: 44px;
        font-size: 12px;
    }

    .jrats-job-card-enhanced__logo {
        width: 40px;
        height: 40px;
        font-size: 20px;
    }
}

/* ============================================================
   Company Profile — [jr_company_profile]
   ============================================================ */
.jrats-company-card{border:1px solid #e5e7eb;background:#fff;padding:24px;border-radius:10px;box-shadow:0 2px 8px rgba(0,0,0,0.04);}
.jrats-company-actions{margin-bottom:18px;}
.jrats-completion-card{margin-bottom:22px;padding:16px;border:1px solid #dbeafe;background:#f8fbff;border-radius:10px;}
.jrats-completion-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;}
.jrats-completion-sub{margin-top:4px;color:#6b7280;font-size:13px;}
.jrats-completion-score{font-size:24px;font-weight:700;color:#1d4ed8;}
.jrats-missing-wrap{margin-top:8px;}
.jrats-missing-list{margin:10px 0 10px 18px;padding:0;}
.jrats-completion-note{margin:10px 0 0;color:#374151;}
.jrats-company-header{display:flex;align-items:center;gap:18px;margin-bottom:20px;}
.jrats-company-logo img{width:72px;height:72px;border-radius:10px;object-fit:cover;}
.jrats-logo-placeholder{width:72px;height:72px;border-radius:10px;background:#2563eb;color:#fff;display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:700;}
.jrats-company-title h2{margin:0 0 6px;}
.jrats-company-meta{margin:0;color:#6b7280;}
.jrats-row{margin-bottom:12px;}
.jrats-about{margin-top:16px;}
.jrats-about p{margin:8px 0 0;}
.jrats-company-message{color:#b91c1c;}
.jrats-company-success{margin-bottom:16px;padding:10px 14px;border-radius:8px;background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0;}
/* ============================================================
   Jobs List — [jr_jobs_list] Card Hover Polish
   Each job renders inside .jrats-job-search-card.
   Ensures clear visual separation + hover darken.
   ============================================================ */

.jrats-jobs-list--cards {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.jrats-job-search-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 20px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: background-color .2s ease, box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}

.jrats-job-search-card:hover,
.jrats-job-search-card:active,
.jrats-job-search-card:focus-within {
    background: #f3f4f6;
    border-color: #cbd5e1;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

.jrats-job-search-card:hover .jrats-job-search-card__title a,
.jrats-job-search-card:active .jrats-job-search-card__title a,
.jrats-job-search-card:focus-within .jrats-job-search-card__title a {
    color: #1d4ed8;
}

@media (max-width: 768px) {
    .jrats-job-search-card {
        padding: 16px;
    }
    .jrats-job-search-card:hover,
.jrats-job-search-card:active,
.jrats-job-search-card:focus-within {
        transform: none;
    }
}