/**
 * Job Card Design - Light Theme
 * Clean, minimal design with white background
 */

/* Custom fields / job types inside modern card */
.job-card-modern-custom-fields {
    margin-bottom: 8px !important;
}

.job-card-modern-custom-fields ul.jobsearch-custom-field {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.job-card-modern-custom-fields ul.jobsearch-custom-field li {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    color: #4b5563 !important;
}

.job-card-modern-jobtypes {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    align-items: center !important;
}

.job-card-modern-excerpt {
    font-size: 14px !important;
    color: #6b7280 !important;
    margin-bottom: 8px !important;
}

.job-card-modern-excerpt p {
    margin: 0 !important;
}

.job-card-modern-skills {
    margin-bottom: 8px !important;
}

/* Main Container */
.careerfy-featured-listing-modern .row,
.careerfy-featured-listing .row {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
}

/* ============================================
   CARD WRAPPER - LIGHT THEME
   ============================================ */
.careerfy-job-card-modern {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 16px !important;
    
    background: #fff !important;
    border-radius: 25px !important;
    border: 1px solid #e3e6ec !important;
    padding: 16px 20px !important;
    margin-bottom: 16px !important;
    box-shadow: 0 2px 6px rgba(15, 23, 42, 0.04) !important;
    transition: box-shadow 0.2s ease, border-color 0.2s ease !important;
    position: relative !important;
}

.careerfy-job-card-modern:hover {
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.08) !important;
    border-color: #d1d5db !important;
}

/* ============================================
   BADGES CONTAINER (Featured + Urgent)
   ============================================ */
.job-card-badges {
    position: absolute !important;
    top: 16px !important;
    right: 16px !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    z-index: 5 !important;
}

/* Featured badge - circle, fa-fire, bg #0a65fc */
.job-card-featured-badge {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #0a65fc !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    flex-shrink: 0 !important;
}

.job-card-featured-badge svg {
    margin: 0 !important;
    color: inherit !important;
}

/* Urgent badge - circle, crown SVG, same style */
.job-card-urgent-badge {
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    background: #0a65fc !important;
    color: #fff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    flex-shrink: 0 !important;
}

.job-card-urgent-badge svg {
    margin: 0 !important;
    color: inherit !important;
}

/* Heart (favorite) - third in badges, same 36px size */
.careerfy-job-card-heart {
    --cfy-heart-brand: #0a65fc;
    flex-shrink: 0 !important;
    margin: 0 !important;
    order: 3 !important;
}

.careerfy-job-card-heart .like-btn {
    margin: 0 !important;
}

.careerfy-job-card-heart .like-btn a,
.careerfy-job-card-heart a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 50% !important;
    border: 1px solid #ededed !important;
    color: #8bb300 !important;
    font-size: 14px !important;
    line-height: 1 !important;
    padding: 0 !important;
    text-decoration: none !important;
    background-color: transparent !important;
    -webkit-transition: all 0.4s ease-in-out !important;
       -moz-transition: all 0.4s ease-in-out !important;
        -ms-transition: all 0.4s ease-in-out !important;
         -o-transition: all 0.4s ease-in-out !important;
            transition: all 0.4s ease-in-out !important;
}

.careerfy-job-card-modern.featured {
    border: 1px solid #ffc107 !important;
    background: linear-gradient(180deg, #fffbf0 0%, #ffffff 100%) !important;
}

/* ============================================
   MAIN CONTENT AREA
   ============================================ */
.careerfy-job-card-main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    padding-right: 148px !important; /* Space for badges (3×36px + 2×8px gap + 16px margin) */
}

/* ============================================
   HEADER ROW - Title + Heart
   ============================================ */
.job-card-header-row {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
    flex-wrap: wrap !important;
}

.careerfy-job-card-heading {
    font-size: 22px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    flex: 1 !important;
    min-width: 0 !important;
}

.careerfy-job-card-heading a {
    color: #111827 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    display: block !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    border-radius: 0px !important;
}

.careerfy-job-card-heading a:hover {
    color: #2563eb !important;
}

/* Heart icon centering */
.careerfy-job-card-heart .like-btn a i,
.careerfy-job-card-heart a i {
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    -webkit-transition: all 0.4s ease-in-out !important;
       -moz-transition: all 0.4s ease-in-out !important;
        -ms-transition: all 0.4s ease-in-out !important;
         -o-transition: all 0.4s ease-in-out !important;
            transition: all 0.4s ease-in-out !important;
}

.careerfy-job-card-heart .like-btn a:hover,
.careerfy-job-card-heart .like-btn a:hover i,
.careerfy-job-card-heart a:hover,
.careerfy-job-card-heart a:hover i {
    background-color: var(--cfy-heart-brand) !important;
    color: #ffffff !important;
}

/* Активное состояние (в избранном) */
.careerfy-job-card-heart a.bookmark-active,
.careerfy-job-card-heart a.jobsearch-job-is-bookmarked,
.careerfy-job-card-heart .like-btn a.bookmark-active,
.careerfy-job-card-heart .like-btn a.jobsearch-job-is-bookmarked {
    background-color: var(--cfy-heart-brand) !important;
    color: #ffffff !important;
    border-color: var(--cfy-heart-brand) !important;
}

.careerfy-job-card-heart a.bookmark-active i,
.careerfy-job-card-heart a.jobsearch-job-is-bookmarked i,
.careerfy-job-card-heart .like-btn a.bookmark-active i,
.careerfy-job-card-heart .like-btn a.jobsearch-job-is-bookmarked i {
    color: #ffffff !important;
}

/* ============================================
   SALARY & EXPERIENCE ROW
   ============================================ */
.job-card-salary-row {
    display: flex !important;
    gap: 16px !important;
    align-items: center !important;
    margin-bottom: 8px !important;
    flex-wrap: wrap !important;
}

.careerfy-job-card-salary {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #333333 !important;
    line-height: 1.3 !important;
}

.job-card-experience {
    font-size: 13px !important;
    color: #4b5563 !important;
    background: #0a65fc12 !important;
    padding: 4px 8px !important;
    border-radius: 25px !important;
    display: inline-block !important;
}

/* ============================================
   COMPANY ROW (with badge)
   ============================================ */
.job-card-company-row {
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-bottom: 6px !important;
    font-size: 14px !important;
    color: #4b5563 !important;
}

.job-card-company-name {
    color: #111827 !important;
    font-weight: 500 !important;
}

.job-card-company-name a {
    color: #111827 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.job-card-company-name a:hover {
    color: #2563eb !important;
}

.job-company-badge {
    font-size: 14px !important;
    color: #0a65fc !important;
    cursor: help !important;
    position: relative !important;
}

.job-company-badge i {
    margin: 0 !important;
}

/* Tooltip "Проверенный работодатель" on hover */
.job-company-badge[title]:hover::after {
    content: attr(title) !important;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    bottom: 100% !important;
    margin-bottom: 6px !important;
    padding: 6px 10px !important;
    background: #111827 !important;
    color: #fff !important;
    font-size: 12px !important;
    white-space: nowrap !important;
    border-radius: 6px !important;
    z-index: 10 !important;
    pointer-events: none !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.15) !important;
}

/* ============================================
   LOCATION
   ============================================ */
.job-card-location {
    font-size: 14px !important;
    color: #4b5563 !important;
    margin-bottom: 8px !important;
    display: block !important;
    clear: both !important;
}

/* ============================================
   APPLY BADGE - GREEN / ORANGE
   ============================================ */
.job-card-apply-badge {
    display: block !important;
    clear: both !important;
    padding: 4px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    background: #e8f5e9 !important;
    color: #2e7d32 !important;
    margin-top: 6px !important;
    transition: all 0.2s ease !important;
    width: fit-content !important;
}

/* ============================================
   COMPANY LOGO
   ============================================ */
.careerfy-job-card-logo {
    position: absolute !important;
    bottom: 16px !important;
    right: 16px !important;
    flex-shrink: 0 !important;
    width: auto !important;
    height: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border-radius: 0 !important;
    overflow: hidden !important;
}

.careerfy-job-card-logo img {
    max-width: 64px !important;
    max-height: 64px !important;
    object-fit: contain !important;
}

/* ============================================
   RESPONSIVE
   ============================================ */
@media (max-width: 768px) {
    .careerfy-job-card-modern {
        padding: 14px 16px !important;
        gap: 12px !important;
    }
    
    .careerfy-job-card-main {
        padding-right: 120px !important; /* Smaller badges area on tablet */
    }
    
    .job-card-header-row {
        gap: 6px !important;
    }
    
    .careerfy-job-card-heading {
        font-size: 16px !important;
    }
    
    .job-card-salary-row {
        gap: 12px !important;
    }
    
    .careerfy-job-card-salary {
        font-size: 14px !important;
    }
    
    .careerfy-job-card-logo img {
        max-width: 56px !important;
        max-height: 56px !important;
    }
}

@media (max-width: 640px) {
    .careerfy-featured-listing-modern .row,
    .careerfy-featured-listing .row {
        gap: 10px !important;
    }
    
    .careerfy-job-card-modern {
        flex-direction: row !important;
        align-items: flex-start !important;
        padding: 12px 14px !important;
        margin-bottom: 12px !important;
    }
    
    .careerfy-job-card-main {
        padding-right: 108px !important; /* 3×32px + 2×6px gap on mobile */
    }
    
    .careerfy-job-card-logo {
        margin-left: 0 !important;
    }
    
    .careerfy-job-card-heading {
        font-size: 15px !important;
    }
    
    .job-card-header-row {
        align-items: flex-start !important;
        gap: 6px !important;
    }
    
    .careerfy-job-card-salary {
        font-size: 13px !important;
    }
    
    .job-card-salary-row {
        gap: 8px !important;
        margin-bottom: 6px !important;
    }
    
    .careerfy-job-card-logo img {
        max-width: 48px !important;
        max-height: 48px !important;
    }
    
    .job-card-badges {
        top: 12px !important;
        right: 12px !important;
    }
    
    .job-card-featured-badge,
    .job-card-urgent-badge {
        width: 32px !important;
        height: 32px !important;
    }
    
    .job-card-featured-badge svg,
    .job-card-urgent-badge svg {
        width: 16px !important;
        height: 16px !important;
    }
    
    .careerfy-job-card-heart a {
        width: 32px !important;
        height: 32px !important;
    }
}

/* ============================================
   Single job detail hero (view1 header)
   ============================================ */
figure.jobsearch-jobdetail-list.jobsearch-jobdetail-hero {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    position: relative !important;
}

.jobsearch-jobdetail-hero figcaption {
    float: none !important;
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    position: relative !important;
}

/* Favourite — как job-card-badges у карточек в списке */
.jobsearch-jobdetail-hero .jobdetail-hero-badges.job-card-badges {
    position: absolute !important;
    top: 6px !important;
    right: 4px !important;
    z-index: 6 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .jobdetail-fav-wrap {
    margin: 0 !important;
}

/* Hero: избранное — один круг на <a> 36×36 как кнопка «Поделиться»; обёртка .like-btn без рамки (не дублировать) */
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart .like-btn {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart .like-btn a,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.shortlist.careerfy-job-like,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.careerfy-job-like,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.jobsearch-add-job-to-favourite {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    border-radius: 50% !important;
    border: 1px solid var(--cfy-heart-brand) !important;
    background-color: #ffffff !important;
    color: var(--cfy-heart-brand) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    float: none !important;
    text-align: center !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a i {
    color: var(--cfy-heart-brand) !important;
    font-weight: 400 !important;
}

/* Перебить Careerfy / color.css (#13b5ea) */
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.careerfy-job-like:hover,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.careerfy-job-like:hover i,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.shortlist:hover,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.shortlist:hover i,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a:hover,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a:hover i {
    background-color: var(--cfy-heart-brand) !important;
    border-color: var(--cfy-heart-brand) !important;
    color: #ffffff !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.bookmark-active,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.jobsearch-job-is-bookmarked,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart .like-btn a.bookmark-active,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart .like-btn a.jobsearch-job-is-bookmarked {
    background-color: var(--cfy-heart-brand) !important;
    border-color: var(--cfy-heart-brand) !important;
    color: #ffffff !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.bookmark-active i,
.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart a.jobsearch-job-is-bookmarked i {
    color: #ffffff !important;
    font-weight: 400 !important;
}

.jobsearch-jobdetail-hero-title-row {
    display: block !important;
    width: 100% !important;
    margin-bottom: 14px !important;
}

.jobsearch-jobdetail-list.jobsearch-jobdetail-hero figcaption h2.jobsearch-jobdetail-hero-heading {
    width: auto !important;
    max-width: 100% !important;
}

.jobsearch-jobdetail-hero-heading {
    width: auto !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding-right: 96px !important;
    box-sizing: border-box !important;
}

.jobsearch-jobdetail-hero-inner {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: 100% !important;
    position: relative !important;
}

.jobsearch-jobdetail-hero-inner.jobdetail-hero-inner--has-corner-city {
    padding-bottom: 40px !important;
}

.jobsearch-jobdetail-hero-main {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: 100% !important;
}

.jobdetail-hero-city.jobdetail-hero-city--card-corner {
    position: absolute !important;
    bottom: 16px !important;
    right: 16px !important;
    left: auto !important;
    top: auto !important;
    margin: 0 !important;
    max-width: calc(100% - 32px) !important;
    z-index: 2 !important;
    display: inline-flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    color: #4b5563 !important;
    line-height: 1.35 !important;
    text-align: right !important;
    border-radius: 0 !important;
    overflow: visible !important;
}

.jobdetail-hero-city--card-corner .jobdetail-hero-city-text {
    overflow: visible !important;
    text-overflow: clip !important;
    white-space: normal !important;
    min-width: 0 !important;
    max-width: none !important;
    border-radius: 0 !important;
}

.jobdetail-hero-city--card-corner .jobdetail-hero-city-icon {
    flex-shrink: 0 !important;
    color: #6b7280 !important;
}

.jobdetail-company-meta-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 14px !important;
    margin-bottom: 12px !important;
}

.jobdetail-company-meta-row .job-card-company-row.jobdetail-company-row {
    margin-bottom: 0 !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-post-sector-row small.jobsearch-jobdetail-postinfo {
    font-style: normal !important;
    font-size: 14px !important;
    color: #374151 !important;
}

.jobdetail-salary-types-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px 16px !important;
    margin-bottom: 12px !important;
}

.jobdetail-salary-inline {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 15px !important;
    color: #111827 !important;
}

.jobdetail-salary-icon,
.jobdetail-types-head-icon,
.jobdetail-hero-city-icon,
.jobdetail-map-address-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: #6b7280 !important;
    border-radius: 0 !important;
    overflow: visible !important;
}

.jobdetail-types-head-icon svg,
.jobdetail-types-head-icon .jobdetail-icon-tabler {
    border-radius: 0 !important;
}

.jobdetail-icon-tabler {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 0 !important;
}

.jobdetail-types-wrap {
    display: inline-flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 8px 10px !important;
}

.jobdetail-types-inline .jobsearch-jobdetail-type,
.jobdetail-types-inline small {
    display: inline-block !important;
    vertical-align: middle !important;
}

/* Типы занятости в hero: единый фон #eaeaea ~40%, текст чёрный (inline style снимается в functions.php) */
.jobsearch-jobdetail-hero .jobdetail-types-inline a.jobsearch-jobdetail-type,
.jobsearch-jobdetail-hero .jobdetail-salary-types-row a.jobsearch-jobdetail-type {
    background-color: rgba(234, 234, 234, 0.4) !important;
    color: #000000 !important;
    font-size: 12px !important;
}

.jobdetail-experience-inline {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

.jobdetail-experience-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: #6b7280 !important;
}

.jobdetail-experience-value {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #374151 !important;
    font-style: normal !important;
    margin: 0 !important;
}

.jobdetail-services-after-tags {
    margin-top: 20px !important;
    margin-bottom: 8px !important;
}

.jobdetail-services-after-tags .jobdetail-job-id-li {
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    float: none !important;
}

.jobdetail-job-id-inline {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px !important;
    min-height: 32px !important;
}

.jobdetail-job-id-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    align-self: center !important;
    color: #6b7280 !important;
    line-height: 0 !important;
    height: 24px !important;
}

.jobdetail-job-id-icon svg {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    vertical-align: middle !important;
}

.jobdetail-services-after-tags .jobdetail-job-id-li small.jobdetail-job-id-value {
    display: inline-flex !important;
    align-items: center !important;
    align-self: center !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    line-height: 22px !important;
}

.jobdetail-job-id-value {
    font-size: 14px !important;
    font-weight: 400 !important;
    font-style: normal !important;
    color: #374151 !important;
}

.jobdetail-map-address-row {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 14px !important;
    color: #374151 !important;
    line-height: 1.45 !important;
    margin-bottom: 8px !important;
}

.jobdetail-map-address-icon {
    margin-top: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.jobdetail-map-address-row .jobdetail-map-address-text {
    display: inline-flex !important;
    align-items: center !important;
    min-width: 0 !important;
}

.jobdetail-fav-wrap {
    margin: 0 !important;
}

.jobdetail-hero-extra-stats {
    margin-top: 4px !important;
}

@media (max-width: 991px) {
    .jobsearch-jobdetail-hero .jobdetail-hero-badges.job-card-badges {
        top: 4px !important;
        right: 2px !important;
    }
}

@media (max-width: 768px) {
    .jobsearch-jobdetail-hero .jobdetail-hero-badges.job-card-badges {
        top: 2px !important;
        right: 0 !important;
    }

    .jobsearch-jobdetail-hero-heading {
        padding-right: 100px !important;
    }

    .jobdetail-hero-city--card-corner {
        bottom: 12px !important;
        right: 12px !important;
        max-width: calc(100% - 24px) !important;
    }

    .jobsearch-jobdetail-hero-inner.jobdetail-hero-inner--has-corner-city {
        padding-bottom: 44px !important;
    }
}

@media (max-width: 480px) {
    .jobsearch-jobdetail-hero .jobdetail-hero-badges.job-card-badges {
        top: 0 !important;
        right: 0 !important;
    }
}

/* Share (AddToAny) — кнопка как urgent badge, панель по клику */
.jobdetail-share-badge-wrap {
    position: relative !important;
    flex-shrink: 0 !important;
    order: 2 !important;
}

.jobsearch-jobdetail-hero .jobdetail-hero-badges .careerfy-job-card-heart {
    order: 3 !important;
}

.jobdetail-share-badge-btn.job-card-urgent-badge {
    border: none !important;
    cursor: pointer !important;
    padding: 0 !important;
    margin: 0 !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

.jobdetail-share-badge-svg {
    display: block !important;
    margin: 0 !important;
    color: inherit !important;
}

.jobdetail-share-dropdown {
    position: absolute !important;
    top: calc(100% + 10px) !important;
    right: 0 !important;
    left: auto !important;
    min-width: 260px !important;
    max-width: min(340px, 92vw) !important;
    padding: 12px 14px !important;
    background: #ffffff !important;
    border: 1px solid #e3e6ec !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.14) !important;
    z-index: 40 !important;
    text-align: left !important;
}

.jobdetail-share-dropdown .addtoany_shortcode {
    margin: 0 !important;
}

/* Строка «опубликовано» под адресом */
.jobdetail-hero-post-sector-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px 18px !important;
    margin-top: 10px !important;
    margin-bottom: 4px !important;
}

.jobdetail-postinfo-inline {
    display: inline-flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 6px !important;
}

.jobdetail-postinfo-icon {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    color: #6b7280 !important;
}

.jobdetail-postinfo-icon svg {
    border-radius: 0 !important;
}

.jobdetail-company-meta-row .jobdetail-company-sector-caret {
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
    color: #9ca3af !important;
    margin: 0 2px !important;
}

.jobdetail-company-meta-row .jobdetail-company-sector-caret svg {
    display: block !important;
}

.jobdetail-company-meta-row .post-in-category {
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #111827 !important;
}

.jobdetail-company-meta-row .post-in-category a {
    color: #111827 !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}

.jobdetail-company-meta-row .post-in-category a:hover {
    color: #2563eb !important;
    text-decoration: none !important;
}

/* Описание вакансии: читаемая вёрстка + дефис вместо маркера */
.jobsearch-jobdetail-content .jobsearch-description {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    clear: both !important;
    font-size: 16px !important;
    line-height: 1.65 !important;
    color: #374151 !important;
    overflow-wrap: anywhere !important;
    word-wrap: break-word !important;
}

.jobsearch-jobdetail-content .jobsearch-description p {
    margin-bottom: 1em !important;
    font-size: inherit !important;
    line-height: inherit !important;
    font-weight: 400 !important;
    color: inherit !important;
}

.jobsearch-jobdetail-content .jobsearch-description ul {
    margin: 0 0 1em 0 !important;
    padding: 0 !important;
}

.jobsearch-jobdetail-content .jobsearch-description ul li {
    list-style: none !important;
    float: none !important;
    width: 100% !important;
    position: relative !important;
    padding-left: 1.1em !important;
    margin-bottom: 0.5em !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

.jobsearch-jobdetail-content .jobsearch-description ul li:before {
    content: '-' !important;
    font-family: inherit !important;
    font-size: inherit !important;
    font-weight: 500 !important;
    line-height: inherit !important;
    color: #374151 !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
    border-radius: 0 !important;
}

/* Рекомендуемые вакансии: без логотипа в карточке */
.jobsearch-jobdetail-joblisting.jobsearch-joblisting-classic .jobsearch-joblisting-classic-wrap > figure {
    display: none !important;
}

.jobsearch-jobdetail-joblisting.jobsearch-joblisting-classic .jobsearch-joblisting-classic-wrap .jobsearch-joblisting-text {
    margin-left: 0 !important;
    width: 100% !important;
    float: none !important;
}

/* Сайдбар «вакансии компании»: скругление как у карточек */
.jobsearch_side_box.jobsearch_box_view_jobs > ul {
    border-radius: 25px 25px 0 0 !important;
    overflow: hidden !important;
}

.jobsearch_side_box.jobsearch_box_view_jobs .jobsearch_box_view_jobs_btn {
    border-radius: 0 0 25px 25px !important;
}

/* Сайдбар вакансий компании: заголовки вакансий — синий как основной акцент */
.jobsearch_side_box.jobsearch_box_view_jobs .jobsearch-pst-title a {
    color: #0a65fc !important;
    font-weight: 500 !important;
}

.jobsearch_side_box.jobsearch_box_view_jobs .jobsearch-pst-title a:hover {
    color: #0052cc !important;
    text-decoration: underline !important;
}

/* Рекомендуемые вакансии: типы работы — как теги навыков на странице вакансии */
.jobsearch-jobdetail-joblisting .jobsearch-job-userlist {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 10px !important;
    float: none !important;
    margin-top: 10px !important;
    justify-content: flex-end !important;
}

.jobsearch-jobdetail-joblisting .jobsearch-job-userlist a.jobsearch-option-btn {
    float: none !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
    text-align: center !important;
    color: #666 !important;
    background-color: #eaeaea !important;
    border: none !important;
    border-radius: 20px !important;
    box-shadow: none !important;
    transition: color 0.2s ease, background-color 0.2s ease !important;
}

.jobsearch-jobdetail-joblisting .jobsearch-job-userlist a.jobsearch-option-btn:hover {
    color: #fff !important;
    background-color: #0a65fc !important;
}

/* Hero: город — ссылка на выдачу (как ссылка компании: без подчёркивания) */
.jobdetail-hero-city-link {
    text-decoration: none !important;
}

.jobdetail-hero-city-link .jobdetail-hero-city-text {
    color: #111827 !important;
    font-weight: 500 !important;
    transition: color 0.2s ease !important;
}

.jobdetail-hero-city-link:hover .jobdetail-hero-city-text {
    color: #2563eb !important;
    text-decoration: none !important;
}
