/* ------------------------------- JOBS (LIST: ITEM) ------------------------------- */

.job_item {
    position: relative; display: flex; flex-direction: column; border: var(--surface-border); border-radius: 12px;
    background: var(--white-color); padding: 20px 20px 14px 20px; margin-bottom: 10px; transition: all 0.3s ease-in-out;
}
.job_item h2, .job_item h3 {display: inline; margin: 0; padding: 0; font: inherit; color: inherit;}
.job_item.promo {border: 1px solid var(--primary-color-2);}

.job_item_promo_chip {
    position: absolute; top: 14px; inset-inline-end: 16px; display: inline-flex; align-items: center; gap: 6px;
    padding: 4px 10px 4px 8px; border-radius: 8px; background: var(--primary-color-3); color: var(--white-color);
    font-size: 11px; font-weight: 600; line-height: 1.4; letter-spacing: 0.2px; user-select: none;
}
.job_item_promo_chip > i {font-size: 11px;}

/* head */

.job_item_head {display: flex;}
.job_item_head > div:nth-of-type(1) {display: flex; position: absolute; top: 20px; inset-inline-start: 20px;}
.job_item_head > div:nth-of-type(1) > .job_item_logo {min-width: 50px; width: 50px; height: 50px; border-radius: 3px;}
.job_item_head > div:nth-of-type(2) {width: 100%; padding-inline-start: 64px;}
.job_item_head > div:nth-of-type(2) > div:nth-of-type(1) {display: flex; align-items: center;}

.job_item > .job_item_desc {padding-top: 4px; padding-inline-start: 64px;}
.job_item > .job_item_desc > span {font-size: 14px; line-height: 1.35; max-width: 800px;}

.job_item_title {
    max-width: 500px; overflow: hidden; font-size: 18px; font-weight: 500; text-decoration: none; white-space: nowrap;
    text-overflow: ellipsis;
}
.job_item_title:hover {color: var(--primary-color-3);}

.job_item_social {display: flex; gap: 8px; margin-inline-start: auto; padding-inline-start: 10px;}
.job_item_social > a {
    display: flex; align-items: center; justify-content: center; width: 24px; min-width: 24px; height: 24px; border-radius: 13px;
    background: var(--primary-color-8); color: var(--primary-color-2); font-size: 16px; font-weight: 500; text-decoration: none;
    transition: all 0.3s ease-in-out;
}
.job_item_social > a > i {font-size: 13px; font-weight: 400;}
.job_item_social > a > i.icon_telegram {font-size: 11px;}
.job_item_social > a:hover {background: var(--primary-color-7);}

/* positions */

.job_item_positions {padding-top: 14px;}
.job_item:not(:has(.job_item_desc)) > .job_item_positions {padding-top: 26px;}

.job_item_position {display: flex; border: 1px solid var(--gray-color-10); border-bottom: 0; padding: 14px;}
.job_item_position:first-of-type {border-top-left-radius: 15px; border-top-right-radius: 15px;}
.job_item_position:last-of-type {
    border-bottom: 1px solid var(--gray-color-10); border-bottom-left-radius: 15px; border-bottom-right-radius: 15px;
}
.job_item_position > div:nth-of-type(1) {width: 100%;}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) {font-size: 14px; font-weight: 500;}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(1) {
    font-size: 15px; text-decoration: none; transition: all 0.3s ease-in-out;
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(1):hover {color: var(--primary-color-1);}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > span,
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(2) {
    padding-inline-start: 3px; color: var(--primary-color-3); font-size: 12px; text-decoration: none; white-space: nowrap;
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(2):hover {color: var(--primary-color-1);}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match {
    display: inline-block; margin-inline-start: 8px; padding: 2px 8px; border-radius: 10px; font-size: 11px; font-weight: 600;
    line-height: 1.4; vertical-align: middle; white-space: nowrap; cursor: help; user-select: none;
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.high {background: #2bb673; color: var(--white-color);}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.good {
    background: var(--primary-color-3); color: var(--white-color);
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.mid {
    background: #f6a700; color: var(--white-color);
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.low {
    background: var(--gray-color-10); color: var(--gray-color-3);
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(2) {
    padding-top: 6px; color: var(--gray-color-2); font-size: 13px; line-height: 1.5;
}
.job_item_position > div:nth-of-type(1) > div:nth-of-type(2) b {font-weight: 500;}
.job_item_position > div:nth-of-type(2) {padding-inline-start: 30px;}

.job_item_position_controls {display: flex; flex-direction: column;}
.job_item_position_controls > div:nth-of-type(1) > .btn_primary {width: 100%; min-width: 130px;}
.job_item_position_controls > div:nth-of-type(2) {display: flex; gap: 8px; padding-top: 8px;}
.job_item_position_controls > div:nth-of-type(2) > .btn_primary:nth-child(1) {min-width: 36px; padding: 0 14px;}
.job_item_position_controls > div:nth-of-type(2) > .btn_primary:nth-child(1) > i {
    position: relative; top: 0.5px; padding-inline-end: 0; font-size: 14px;
}
.job_item_position_controls > div:nth-of-type(2) > .btn_primary:nth-child(2) {min-width: calc(100% - 44px); padding: 0 14px;}

/* controls */

.job_item_controls {
    display: flex; justify-content: flex-end; align-items: center; gap: 18px; padding-top: 14px; padding-inline-end: 4px;
}
.job_item_controls > div {
    display: inline-flex; align-items: center; color: var(--gray-color-5); font-size: 13px; font-weight: 500;
    cursor: pointer; user-select: none; transition: color 0.2s ease-in-out;
}
.job_item_controls > div:hover {color: var(--primary-color-3);}
.job_item_controls > div > i {padding-inline-end: 4px; font-size: 14px; font-weight: 400;}
.job_item_controls > div > i.icon_hide {font-size: 15px;}
.job_item_controls > div > i.icon_favorite_2_fill {color: var(--primary-color-3);}

@media screen and (max-width: 768px) {
    .job_item {padding: 18px 20px 14px; margin: 0 -20px; border: none; border-radius: 0; background: var(--white-color);}
    .job_item + .job_item {border-top: 8px solid var(--gray-color-14a);}
    .job_item_promo_chip {top: 12px; inset-inline-end: 12px; padding: 4px 10px; font-size: 11px;}
    .job_item_promo_chip > i {font-size: 12px;}
    .job_item_head {gap: 12px;}
    .job_item_head > div:nth-of-type(1) {position: static;}
    .job_item_head > div:nth-of-type(1) > .job_item_logo {min-width: 48px; width: 48px; height: 48px; border-radius: 6px;}
    .job_item_head > div:nth-of-type(2) {padding-inline-start: 0;}
    .job_item_head > div:nth-of-type(2) > div:nth-of-type(1) {flex-direction: column; align-items: flex-start; gap: 8px;}
    .job_item_title {
        max-width: none; overflow: visible; font-size: 20px; font-weight: 500; line-height: 1.3; white-space: normal;
        text-overflow: clip;
    }
    .job_item_social {flex-wrap: wrap; gap: 8px; margin-inline-start: 0; padding-inline-start: 0;}
    .job_item_social > a {width: 30px; min-width: 30px; height: 30px; border-radius: 15px;}
    .job_item_social > a > i {font-size: 17px;}
    .job_item > .job_item_desc {padding-top: 12px; padding-inline-start: 0;}
    .job_item > .job_item_desc > span {font-size: 16px; line-height: 1.4;}
    .job_item_positions {padding-top: 14px;}
    .job_item_position {
        flex-direction: column; gap: 14px; padding: 14px 0; border-color: var(--gray-color-11);
        border-inline-start: none; border-inline-end: none;
    }
    .job_item_position:first-of-type {border-top-left-radius: 0; border-top-right-radius: 0;}
    .job_item_position:last-of-type {border-bottom-left-radius: 0; border-bottom-right-radius: 0;}
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) {
        display: flex; flex-wrap: wrap; align-items: center; gap: 6px 8px; font-size: 15px; font-weight: 600; line-height: 1.35;
    }
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(1) {
        font-size: 18px; font-weight: 500; line-height: 1.3;
    }
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > span,
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > a:nth-of-type(2) {font-size: 16px; font-weight: 500;}
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match {
        margin-inline-start: 0; padding: 3px 8px; font-size: 15px; font-weight: 500;
    }
    .job_item_position > div:nth-of-type(1) > div:nth-of-type(2) {margin-top: 8px; font-size: 16px; line-height: 1.4;}
    .job_item_position > div:nth-of-type(2) {padding-top: 4px; padding-bottom: 4px; padding-inline-start: 0;}
    .job_item_position_controls {flex-direction: row; gap: 8px;}
    .job_item_position_controls > div:nth-of-type(1) {flex: 1;}
    .job_item_position_controls > div:nth-of-type(1) > .btn_primary {width: 100%; min-width: 0;}
    .job_item_position_controls > div:nth-of-type(2) {flex-shrink: 0; padding-top: 0;}
    .job_item_position_controls > div:nth-of-type(2) > .btn_primary {min-width: 40px;}
    .job_item_position_controls > div:nth-of-type(2) > .btn_primary:nth-child(2) {min-width: 0; padding: 0 16px;}
    .job_item_controls {flex-wrap: wrap; gap: 10px 18px; padding-top: 14px; padding-inline-end: 0;}
    .job_item_controls > div {margin-inline-start: 0; font-size: 15px;}
    .job_item_controls > div > i {padding-inline-end: 6px; font-size: 15px;}
}

/* ------------------------------- JOBS (LIST: EMPTY) ------------------------------- */
/* Styles moved to components.css → EMPTY STATE. Use `.empty_state*` classes. */

/* ------------------------------- JOBS (PULSE) ------------------------------- */

#jobs_pulse {margin-top: 10px; border: var(--surface-border); border-radius: 12px; background: var(--white-color); padding: 18px 20px 20px;}

.jobs_pulse_head {display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px; margin-bottom: 14px;}
.jobs_pulse_title {color: var(--black-color); font-size: 16px; font-weight: 500; letter-spacing: -0.2px;}
.jobs_pulse_subtitle {color: var(--gray-color-5); font-size: 13px;}

.jobs_pulse_grid {display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px;}
.jobs_pulse_card {
    display: flex; flex-direction: column; min-height: 92px; padding: 14px 16px; border-radius: 10px;
    background: var(--primary-color-9);
}
.jobs_pulse_label {color: var(--gray-color-5); font-size: 13px; font-weight: 500;}
.jobs_pulse_value {
    margin-top: 6px; color: var(--black-color); font-size: 24px; font-weight: 500; line-height: 1.1; letter-spacing: -0.5px;
}
.jobs_pulse_value > span {margin-inline-start: 2px; color: var(--gray-color-5); font-size: 16px; font-weight: 500;}
.jobs_pulse_hint {margin-top: 6px; color: var(--gray-color-5); font-size: 12px; line-height: 1.35;}
.jobs_pulse_link {
    margin-top: 6px; color: var(--primary-color-3); font-size: 12px; text-decoration: none; transition: color 0.2s ease-in-out;
}
.jobs_pulse_link:hover {color: var(--primary-color-1);}

@media screen and (max-width: 768px) {
    .jobs_pulse_grid {grid-template-columns: 1fr;}
}

/* ------------------------------- JOB (APPLY) ------------------------------- */

.job_apply_form .input_group > div > textarea {background: var(--white-color);}
.job_apply_btn {
    display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; margin-top: 12px;
    transition: all 0.2s ease-in-out;
}
.job_apply_btn > i {font-size: 14px;}
.job_apply_note {margin-top: 10px; color: var(--gray-color-6); font-size: 11px; line-height: 1.45; text-align: center;}

.job_relevance_warning {
    margin: 10px 0 14px 0; padding: 14px; border-radius: 8px; background: var(--gray-color-15); color: var(--gray-color-2);
    font-size: 13px; line-height: 1.5;
}
.job_relevance_warning.level_ok {background: var(--green-color-5); color: var(--green-color-1);}
.job_relevance_warning.level_warning {background: var(--secondary-color-7); color: var(--secondary-color-2);}
.job_relevance_warning.level_danger {background: var(--red-color-4); color: var(--red-color-1);}
.job_relevance_warning.level_info, .job_relevance_warning.level_guest {background: var(--primary-color-9); color: var(--primary-color-3);}
.job_relevance_head {display: flex; align-items: center; justify-content: space-between; gap: 10px;}
.job_relevance_title {font-weight: 500;}
.job_relevance_percent {flex-shrink: 0; font-size: 15px; font-weight: 600;}
.job_relevance_reasons {margin: 8px 0 0 0; padding: 0; padding-inline-start: 18px; list-style: disc;}
.job_relevance_reasons > li {margin-top: 2px; list-style: inherit;}
.job_relevance_reasons > li::marker {color: currentColor;}
.job_relevance_hint {margin-top: 10px; font-size: 12px;}
.job_relevance_skills {display: flex; flex-wrap: wrap; gap: 8px; margin-top: 10px;}
.job_relevance_skills .technology_chip.dashed > span {
    padding: 5px 12px; padding-inline-start: 9px; border: none; border-radius: 15px;
    background: var(--white-color); color: inherit; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}
.job_relevance_skills .technology_chip.dashed > span > img {
    width: 16px; height: 16px; margin-inline-end: 6px; border-radius: 2px;
}
.job_relevance_skills .technology_chip.dashed > span::before {content: "+"; margin-inline-end: 5px; font-weight: 600; opacity: 0.55;}
.job_relevance_skills .technology_chip.dashed:hover {filter: none; transform: translateY(-1px);}
.job_relevance_skills .technology_chip.dashed:hover > span {box-shadow: 0 2px 6px rgba(0, 0, 0, 0.14);}
.job_relevance_boost {margin-top: 10px; font-weight: 500;}
.job_relevance_note {margin-top: 6px; font-size: 11px; opacity: 0.75;}
.job_relevance_link {display: inline-block; margin-top: 10px; color: inherit; font-weight: 500; cursor: pointer; text-decoration: underline;}

@media screen and (max-width: 1024px) {
    .job_apply_btn {height: 44px; margin-top: 14px; font-size: 15px; font-weight: 500;}
    .job_apply_btn > i {font-size: 16px;}
    .job_apply_note {margin-top: 12px; font-size: 12.5px; line-height: 1.5;}
    .job_relevance_warning {margin: 12px 0 16px; padding: 16px; font-size: 14px; line-height: 1.55;}
    .job_relevance_percent {font-size: 16px;}
    .job_relevance_hint {font-size: 13px;}
    .job_relevance_skills .technology_chip.dashed > span {padding: 6px 13px; padding-inline-start: 10px; border-radius: 16px; font-size: 12.5px;}
    .job_relevance_skills .technology_chip.dashed > span > img {width: 17px; height: 17px;}
    .job_relevance_note {font-size: 12px;}
}

@media screen and (max-width: 768px) {
    .job_apply_btn {justify-content: center; width: 100%; height: 50px; margin-top: 16px; font-size: 16px; font-weight: 600;}
    .job_apply_btn > i {font-size: 18px;}
    .job_apply_note {margin-top: 14px; font-size: 13.5px; line-height: 1.55;}
    .job_relevance_warning {margin: 14px 0 18px; padding: 18px; font-size: 15px; line-height: 1.6;}
    .job_relevance_percent {font-size: 17px;}
    .job_relevance_hint {font-size: 14px;}
    .job_relevance_skills {gap: 9px;}
    .job_relevance_skills .technology_chip.dashed > span {padding: 7px 14px; padding-inline-start: 11px; border-radius: 17px; font-size: 13.5px;}
    .job_relevance_skills .technology_chip.dashed > span > img {width: 18px; height: 18px; margin-inline-end: 7px;}
    .job_relevance_note {font-size: 13px;}
}

/* ------------------------------- JOB (APPLY SUCCESS) ------------------------------- */

.job_apply_success {
    display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px;
    min-height: 250px; padding: 8px; text-align: center;
}
.job_apply_success_icon {
    display: flex; align-items: center; justify-content: center; width: 64px; height: 64px; margin-bottom: 2px; border-radius: 50%;
    background: var(--secondary-color-8); animation: job_apply_success_pop 0.35s ease-out both;
}
.job_apply_success_icon > svg {width: 38px; height: 38px;}
.job_apply_success_icon_circle {stroke: var(--secondary-color-2); stroke-width: 2.5; opacity: 0.35;}
.job_apply_success_icon_check {
    stroke: var(--secondary-color-2); stroke-width: 3.5; stroke-linecap: round; stroke-linejoin: round; stroke-dasharray: 48;
    stroke-dashoffset: 48; animation: job_apply_success_draw 0.45s 0.15s ease-out forwards;
}
.job_apply_success_title {color: var(--black-color); font-size: 18px; font-weight: 600; letter-spacing: -0.2px;}
.job_apply_success_desc {max-width: 420px; color: var(--gray-color-4); font-size: 14px; line-height: 1.5;}
.job_apply_success_hint {
    display: inline-flex; align-items: center; gap: 8px; margin-top: 4px; padding: 6px 12px; border-radius: 20px;
    background: var(--gray-color-15); color: var(--gray-color-6); font-size: 12px;
}
.job_apply_success_hint > i {color: var(--gray-color-6); font-size: 12px;}

@keyframes job_apply_success_pop {0% {transform: scale(0.6); opacity: 0;} 100% {transform: scale(1); opacity: 1;}}
@keyframes job_apply_success_draw {to {stroke-dashoffset: 0;}}

@media screen and (max-width: 1024px) {
    .job_apply_success {min-height: 320px; gap: 12px;}
    .job_apply_success_icon {width: 72px; height: 72px;}
    .job_apply_success_icon > svg {width: 42px; height: 42px;}
    .job_apply_success_title {font-size: 19px;}
    .job_apply_success_desc {font-size: 15px; line-height: 1.55;}
    .job_apply_success_hint {margin-top: 6px; padding: 8px 14px; font-size: 13px;}
    .job_apply_success_hint > i {font-size: 14px;}
}

@media screen and (max-width: 768px) {
    .job_apply_success {min-height: 340px; gap: 14px;}
    .job_apply_success_icon {width: 80px; height: 80px;}
    .job_apply_success_icon > svg {width: 46px; height: 46px;}
    .job_apply_success_title {font-size: 21px;}
    .job_apply_success_desc {max-width: 460px; font-size: 16px; line-height: 1.6;}
    .job_apply_success_hint {margin-top: 8px; padding: 10px 16px; font-size: 14px;}
    .job_apply_success_hint > i {font-size: 15px;}
}

/* ------------------------------- JOB (APPLY LINK) ------------------------------- */

.job_apply_link_desc {margin-bottom: 16px; color: var(--gray-color-6); font-size: 13px; line-height: 1.5;}
.job_apply_link_options {display: flex; flex-direction: column; gap: 10px; margin-bottom: 16px;}
.job_apply_link_option {
    display: flex; align-items: center; gap: 14px; padding: 14px 16px; border: 1px solid var(--gray-color-13);
    border-radius: 12px; background: var(--gray-color-15); cursor: pointer; text-decoration: none;
    transition: all 0.18s ease-in-out;
}
.job_apply_link_option:hover {background: var(--gray-color-14); border-color: var(--primary-color-3);}
.job_apply_link_option:hover .job_apply_link_option_arrow {color: var(--primary-color-1); transform: translateX(2px);}
.job_apply_link_option_icon {
    display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 42px; height: 42px;
    border-radius: 10px; background: var(--primary-color-2); color: #fff; font-size: 18px;
}
.job_apply_link_option_icon.light {background: var(--gray-color-13); color: var(--gray-color-2);}
.job_apply_link_option_body {flex: 1; min-width: 0;}
.job_apply_link_option_title {margin-bottom: 2px; color: var(--gray-color-1); font-size: 14px; font-weight: 500;}
.job_apply_link_option_desc {color: var(--gray-color-6); font-size: 12px; line-height: 1.4;}
.job_apply_link_option_arrow {flex-shrink: 0; color: var(--gray-color-8); font-size: 16px; transition: all 0.18s ease-in-out;}

@media screen and (max-width: 1024px) {
    .job_apply_link_desc {margin-bottom: 18px; font-size: 14.5px; line-height: 1.55;}
    .job_apply_link_options {gap: 12px; margin-bottom: 18px;}
    .job_apply_link_option {gap: 14px; padding: 16px 18px; border-radius: 14px;}
    .job_apply_link_option_icon {width: 48px; height: 48px; border-radius: 12px; font-size: 20px;}
    .job_apply_link_option_title {font-size: 15.5px;}
    .job_apply_link_option_desc {font-size: 13.5px; line-height: 1.5;}
    .job_apply_link_option_arrow {font-size: 18px;}
}

@media screen and (max-width: 768px) {
    .job_apply_link_desc {margin-bottom: 20px; font-size: 15.5px; line-height: 1.6;}
    .job_apply_link_options {gap: 14px; margin-bottom: 20px;}
    .job_apply_link_option {gap: 16px; padding: 18px 20px; border-radius: 14px;}
    .job_apply_link_option_icon {width: 52px; height: 52px; border-radius: 14px; font-size: 22px;}
    .job_apply_link_option_title {margin-bottom: 4px; font-size: 17px;}
    .job_apply_link_option_desc {font-size: 14.5px; line-height: 1.55;}
    .job_apply_link_option_arrow {font-size: 20px;}
}

/* ------------------------------- JOB (IMPACT) ------------------------------- */

.job_impact_subtitle {margin: 8px 0 4px; color: var(--gray-color-4); font-size: 13px; font-weight: 400; line-height: 1.4;}

/* block */

.job_impact_block {margin-top: 20px; padding-top: 18px; border-top: 1px dashed var(--gray-color-11);}
.job_impact_block:first-of-type {margin-top: 14px; padding-top: 0; border-top: none;}
.job_impact_block_title {margin-bottom: 12px; color: var(--black-color); font-size: 14px; font-weight: 500;}
.job_impact_block_desc {margin-top: 8px; color: var(--gray-color-4); font-size: 12px; font-weight: 400; line-height: 1.4;}
.job_impact_block_breakdown {margin-top: 6px; color: var(--gray-color-3); font-size: 12px; font-weight: 500;}

/* metric */

.job_impact_metric {display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px;}
.job_impact_metric_value {color: var(--primary-color-3); font-size: 30px; font-weight: 700; line-height: 1; letter-spacing: -0.5px;}
.job_impact_metric_value > small {margin-inline-start: 1px; font-size: 18px; font-weight: 600;}
.job_impact_metric_delta {color: var(--gray-color-4); font-size: 12px; font-weight: 500;}

/* level */

.job_impact_level_flow {display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px;}
.job_impact_level_flow > i {color: var(--primary-color-3); font-size: 11px;}
.job_impact_level_from, .job_impact_level_to {
    display: inline-flex; align-items: center; padding: 5px 12px; border-radius: 14px; font-size: 13px; font-weight: 500;
}
.job_impact_level_from {background: var(--gray-color-14); color: var(--gray-color-4);}
.job_impact_level_to {background: var(--primary-color-3); color: var(--white-color); font-weight: 600;}

/* timeline */

.job_impact_timeline {display: flex; flex-direction: column; gap: 14px; padding-inline-start: 6px;}
.job_impact_timeline_step {position: relative; display: grid; grid-template-columns: 34px 1fr auto; align-items: center; gap: 0 12px;}
.job_impact_timeline_step:not(:last-child):before {
    content: ''; position: absolute; top: 50%; inset-inline-start: 13px; width: 2px; height: calc(100% + 14px);
    border-radius: 2px; background: linear-gradient(to bottom, var(--primary-color-3), var(--secondary-color-2)); opacity: 0.35;
}
.job_impact_timeline_node {
    z-index: 1; display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%;
    border: 2px solid var(--primary-color-3); background: var(--white-color); color: var(--primary-color-3);
}
.job_impact_timeline_node > i {font-size: 12px;}
.job_impact_timeline_step:first-child .job_impact_timeline_node {background: var(--primary-color-3); color: var(--white-color);}
.job_impact_timeline_step_last .job_impact_timeline_node {border-color: var(--secondary-color-2); color: var(--secondary-color-2);}
.job_impact_timeline_label {
    grid-column: 2; grid-row: 1; color: var(--gray-color-4); font-size: 12px; font-weight: 500; line-height: 1.3;
}
.job_impact_timeline_role {
    grid-column: 2 / span 2; grid-row: 2; color: var(--black-color); font-size: 14px; font-weight: 500; line-height: 1.3;
}
.job_impact_timeline_badge {
    grid-column: 3; grid-row: 1; align-self: center; padding: 4px 10px; border-radius: 12px; background: var(--primary-color-9);
    color: var(--primary-color-3); font-size: 11px; font-weight: 500; white-space: nowrap;
}

/* skills */

.job_impact_skills {display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px;}
.job_impact_chip_status {margin-inline-start: 4px; opacity: 0.85; font-size: 11px; font-weight: 600;}

/* chips */

.job_impact_chips {display: flex; flex-wrap: wrap; gap: 8px;}
.job_impact_next_role {
    display: inline-flex; align-items: center; padding: 5px 12px; border: 1px dashed var(--primary-color-5); border-radius: 14px;
    background: var(--white-color); color: var(--primary-color-3); font-size: 12px; font-weight: 500;
}

@media screen and (max-width: 1024px) {
    .job_impact_subtitle {margin: 10px 0 6px; font-size: 14px; line-height: 1.5;}
    .job_impact_block {margin-top: 22px; padding-top: 18px;}
    .job_impact_block_title {margin-bottom: 14px; font-size: 15px;}
    .job_impact_block_desc {margin-top: 10px; font-size: 13.5px; line-height: 1.5;}
    .job_impact_block_breakdown {margin-top: 8px; font-size: 13px;}
    .job_impact_metric {gap: 12px;}
    .job_impact_metric_value {font-size: 32px;}
    .job_impact_metric_value > small {font-size: 19px;}
    .job_impact_metric_delta {font-size: 13.5px;}
    .job_impact_level_flow {gap: 10px;}
    .job_impact_level_flow > i {font-size: 13px;}
    .job_impact_level_from, .job_impact_level_to {padding: 6px 14px; border-radius: 16px; font-size: 14.5px;}
    .job_impact_timeline {gap: 16px;}
    .job_impact_timeline_step {grid-template-columns: 36px 1fr auto; gap: 0 14px;}
    .job_impact_timeline_node {width: 32px; height: 32px;}
    .job_impact_timeline_node > i {font-size: 13px;}
    .job_impact_timeline_label {font-size: 13px;}
    .job_impact_timeline_role {font-size: 15.5px;}
    .job_impact_timeline_badge {padding: 4px 12px; font-size: 12.5px;}
    .job_impact_skills {gap: 10px 16px;}
    .job_impact_chip_status {font-size: 12px;}
    .job_impact_chips {gap: 10px;}
    .job_impact_next_role {padding: 6px 14px; border-radius: 16px; font-size: 13.5px;}
}

@media screen and (max-width: 768px) {
    .job_impact_subtitle {margin: 14px 0 10px; font-size: 16px; line-height: 1.6;}
    .job_impact_block {margin-top: 28px; padding-top: 24px;}
    .job_impact_block:first-of-type {margin-top: 18px;}
    .job_impact_block_title {margin-bottom: 16px; font-size: 18px;}
    .job_impact_block_desc {margin-top: 12px; font-size: 15.5px; line-height: 1.6;}
    .job_impact_block_breakdown {margin-top: 10px; font-size: 15px;}
    .job_impact_metric {gap: 10px 16px;}
    .job_impact_metric_value {font-size: 42px;}
    .job_impact_metric_value > small {font-size: 24px;}
    .job_impact_metric_delta {font-size: 15.5px;}
    .job_impact_level_flow {gap: 14px;}
    .job_impact_level_flow > i {font-size: 16px;}
    .job_impact_level_from, .job_impact_level_to {padding: 10px 20px; border-radius: 22px; font-size: 17px;}
    .job_impact_timeline {gap: 22px; padding-inline-start: 2px;}
    .job_impact_timeline_step {grid-template-columns: 44px 1fr; gap: 4px 16px;}
    .job_impact_timeline_step:not(:last-child):before {inset-inline-start: 21px; height: calc(100% + 22px);}
    .job_impact_timeline_node {width: 44px; height: 44px;}
    .job_impact_timeline_node > i {font-size: 18px;}
    .job_impact_timeline_label {font-size: 15px;}
    .job_impact_timeline_role {font-size: 19px;}
    .job_impact_timeline_badge {grid-column: 2; grid-row: 3; justify-self: start; margin-top: 8px; padding: 7px 14px; border-radius: 14px; font-size: 14px;}
    .job_impact_skills {gap: 12px 16px;}
    .job_impact_skills .technology_chip > img {width: 26px; height: 26px; margin-inline-end: 8px;}
    .job_impact_skills .technology_chip.dashed > span {padding: 9px 16px; border-radius: 16px; font-size: 16px;}
    .job_impact_skills .technology_chip > span > i {font-size: 16px;}
    .job_impact_chip_status {font-size: 15px;}
    .job_impact_chips {gap: 12px;}
    .job_impact_next_role {padding: 10px 20px; border-radius: 22px; font-size: 16px;}
}

/* ------------------------------- JOB (IMPACT GUEST) ------------------------------- */

.job_impact_guest {position: relative; overflow: hidden;}
.job_impact_guest_glow {
    position: absolute; top: -80px; inset-inline-end: -80px; width: 260px; height: 260px; border-radius: 50%;
    background: radial-gradient(circle, var(--primary-color-9) 0%, transparent 70%); pointer-events: none; z-index: 0;
}
.job_impact_guest > *:not(.job_impact_guest_glow) {position: relative; z-index: 1;}
.job_impact_guest_badge {
    display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; margin-bottom: 14px; border-radius: 14px;
    background: var(--primary-color-9); color: var(--primary-color-3); font-size: 13px; font-weight: 500;
}
.job_impact_guest_badge > i {font-size: 13px;}
.job_impact_guest_headline {
    margin-bottom: 10px; color: var(--black-color); font-size: 22px; font-weight: 600; line-height: 1.25; letter-spacing: -0.3px;
}
.job_impact_guest_desc {margin-bottom: 18px; color: var(--gray-color-4); font-size: 13px; font-weight: 400; line-height: 1.5;}

/* preview */

.job_impact_guest_preview {
    display: grid; grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px; margin-bottom: 18px; border-radius: 14px;
    background: linear-gradient(135deg, var(--primary-color-9), var(--gray-color-15));
}
.job_impact_guest_preview_card {padding: 10px 12px; border-radius: 10px; background: var(--white-color);}
.job_impact_guest_preview_label {
    margin-bottom: 6px; color: var(--gray-color-4); font-size: 11px; font-weight: 500; line-height: 1.3;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.job_impact_guest_preview_value {color: var(--primary-color-3); font-size: 22px; font-weight: 700; line-height: 1; letter-spacing: -0.4px;}
.job_impact_guest_preview_value > small {margin-inline-start: 1px; font-size: 14px; font-weight: 600;}
.job_impact_guest_blur {
    display: inline-block; color: transparent; text-shadow: 0 0 12px var(--primary-color-3); user-select: none;
    filter: blur(2px); -webkit-text-stroke: 0;
}

/* features */

.job_impact_guest_features {display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px;}
.job_impact_guest_feature {display: flex; align-items: center; gap: 12px;}
.job_impact_guest_feature_icon {
    display: flex; align-items: center; justify-content: center; flex-shrink: 0; width: 32px; height: 32px;
    border-radius: 10px; background: var(--primary-color-9); color: var(--primary-color-3); font-size: 14px;
}
.job_impact_guest_feature_text {color: var(--gray-color-1); font-size: 13px; font-weight: 500; line-height: 1.4;}

/* cta */

.job_impact_guest_cta {margin-bottom: 10px;}
.job_impact_guest_hint {text-align: center; color: var(--gray-color-4); font-size: 12px; font-weight: 400;}

@media screen and (max-width: 1024px) {
    .job_impact_guest_badge {margin-bottom: 16px; padding: 6px 14px; font-size: 14px;}
    .job_impact_guest_badge > i {font-size: 14px;}
    .job_impact_guest_headline {margin-bottom: 12px; font-size: 22px; line-height: 1.3;}
    .job_impact_guest_desc {margin-bottom: 20px; font-size: 14.5px; line-height: 1.55;}
    .job_impact_guest_preview {gap: 12px; padding: 16px; margin-bottom: 20px; border-radius: 16px;}
    .job_impact_guest_preview_card {padding: 12px 14px; border-radius: 12px;}
    .job_impact_guest_preview_label {margin-bottom: 8px; font-size: 12.5px;}
    .job_impact_guest_preview_value {font-size: 24px;}
    .job_impact_guest_preview_value > small {font-size: 15px;}
    .job_impact_guest_features {gap: 12px; margin-bottom: 22px;}
    .job_impact_guest_feature {gap: 14px;}
    .job_impact_guest_feature_icon {width: 40px; height: 40px; border-radius: 12px; font-size: 16px;}
    .job_impact_guest_feature_text {font-size: 14.5px; line-height: 1.5;}
    .job_impact_guest_cta {margin-bottom: 12px;}
    .job_impact_guest_hint {font-size: 13px;}
}

@media screen and (max-width: 768px) {
    .job_impact_guest_badge {margin-bottom: 20px; padding: 9px 18px; border-radius: 16px; font-size: 16px;}
    .job_impact_guest_badge > i {font-size: 16px;}
    .job_impact_guest_headline {margin-bottom: 16px; font-size: 27px; line-height: 1.3;}
    .job_impact_guest_desc {margin-bottom: 24px; font-size: 16.5px; line-height: 1.6;}
    .job_impact_guest_preview {grid-template-columns: 1fr; gap: 14px; padding: 20px; margin-bottom: 24px; border-radius: 18px;}
    .job_impact_guest_preview_card {padding: 18px 20px; border-radius: 16px;}
    .job_impact_guest_preview_label {margin-bottom: 12px; font-size: 15px;}
    .job_impact_guest_preview_value {font-size: 32px;}
    .job_impact_guest_preview_value > small {font-size: 19px;}
    .job_impact_guest_features {gap: 16px; margin-bottom: 26px;}
    .job_impact_guest_feature {gap: 18px;}
    .job_impact_guest_feature_icon {width: 52px; height: 52px; border-radius: 16px; font-size: 22px;}
    .job_impact_guest_feature_text {font-size: 16.5px; line-height: 1.55;}
    .job_impact_guest_cta {margin-bottom: 16px;}
    .job_impact_guest_hint {font-size: 15px;}
}

/* ------------------------------- JOB (SIMULAR) ------------------------------- */

.job_simular_tabs {
    position: relative; overflow: hidden; display: flex; gap: 6px; margin: 16px 0 14px; padding: 2px; border-radius: 12px;
    background: var(--gray-color-14);
}
.job_simular_tab {
    flex: 1; display: flex; align-items: center; justify-content: center; gap: 8px; padding: 6px 14px; border-radius: 10px;
    color: var(--gray-color-4); font-size: 13px; font-weight: 500; white-space: nowrap; cursor: pointer; user-select: none;
    transition: all 0.25s ease-in-out;
}
.job_simular_tab > i {font-size: 15px;}
.job_simular_tab:hover:not(.disabled):not(.active) {background: var(--white-color); color: var(--primary-color-3);}
.job_simular_tab.active {
    background: var(--white-color); color: var(--primary-color-3);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
}
.job_simular_tab.disabled {opacity: 0.45; color: var(--gray-color-5); cursor: not-allowed;}

.job_simular_pane {display: none;}
.job_simular_pane.active {display: block;}
.job_simular_pane > .job_item_positions {padding-top: 0;}

@media screen and (max-width: 1024px) {
    .job_simular_tabs {gap: 6px; margin: 4px 0 16px; padding: 5px; border-radius: 14px;}
    .job_simular_tab {
        flex-direction: column; gap: 6px; padding: 10px 6px; border-radius: 11px; font-size: 12.5px; line-height: 1.25;
    }
    .job_simular_tab > i {font-size: 19px;}
    .job_simular_tab > span {text-align: center; white-space: normal;}
}

@media screen and (max-width: 768px) {
    .job_simular_tabs {gap: 6px; margin: 4px 0 20px; padding: 6px; border-radius: 16px;}
    .job_simular_tab {gap: 9px; padding: 16px 8px; border-radius: 14px; font-size: 15px; line-height: 1.3;}
    .job_simular_tab > i {font-size: 26px;}
    .job_simular_tab.active {box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08), 0 1px 3px rgba(0, 0, 0, 0.05);}
}

/* ------------------------------- COMPANY (SALARIES) ------------------------------- */

.company_salaries_subtitle {margin: 8px 0 4px; color: var(--gray-color-4); font-size: 13px; font-weight: 400; line-height: 1.4;}

/* block */

.company_salaries_block {margin-top: 20px; padding-top: 18px; border-top: 1px dashed var(--gray-color-11);}
.company_salaries_block:first-of-type {margin-top: 14px; padding-top: 0; border-top: none;}
.company_salaries_block_title {
    display: flex; align-items: center; gap: 8px; margin-bottom: 12px; color: var(--black-color); font-size: 14px; font-weight: 500;
}
.company_salaries_block_title > i {color: var(--primary-color-3); font-size: 16px;}

/* metric */

.company_salaries_metric {display: flex; flex-wrap: wrap; align-items: baseline; gap: 10px;}
.company_salaries_metric_value {
    color: var(--primary-color-3); font-size: 30px; font-weight: 700; line-height: 1; letter-spacing: -0.5px;
}
.company_salaries_metric_delta {color: var(--gray-color-4); font-size: 12px; font-weight: 500;}
.company_salaries_metric_delta > b {color: var(--black-color); font-weight: 700;}

/* range */

.company_salaries_range {margin-top: 34px;}
.company_salaries_range_track {
    position: relative; height: 6px; margin: 20px 0 6px; border-radius: 4px;
    background: linear-gradient(90deg, var(--primary-color-5) 0%, var(--primary-color-3) 100%);
}
.company_salaries_range_marker {
    position: absolute; top: -5px; bottom: -5px; width: 3px; border-radius: 2px; background: var(--black-color);
    transform: translateX(-50%);
}
.company_salaries_range_marker_value {
    position: absolute; bottom: calc(100% + 4px); inset-inline-start: 50%; padding: 2px 6px; border-radius: 10px;
    background: var(--primary-color-3); color: var(--white-color); font-size: 11px; font-weight: 600; white-space: nowrap;
    transform: translateX(-50%);
}
.company_salaries_range_scale {
    display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 6px;
    color: var(--gray-color-4); font-size: 11px; font-weight: 500;
}
.company_salaries_range_scale_label {
    flex: 1; text-align: center; color: var(--gray-color-4); font-size: 11px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 0.4px;
}

/* bars */

.company_salaries_bars {display: flex; flex-direction: column; gap: 12px;}
.company_salaries_bar {display: flex; flex-direction: column; gap: 6px;}
.company_salaries_bar_head {display: flex; justify-content: space-between; align-items: baseline; gap: 10px;}
.company_salaries_bar_title {color: var(--black-color); font-size: 13px; font-weight: 500;}
.company_salaries_bar_range {color: var(--gray-color-4); font-size: 12px; font-weight: 500;}
.company_salaries_bar_track {position: relative; height: 8px; border-radius: 6px; background: var(--gray-color-14);}
.company_salaries_bar_fill {
    position: absolute; top: 0; bottom: 0; min-width: 4px; border-radius: 6px;
    background: linear-gradient(90deg, var(--primary-color-5) 0%, var(--primary-color-3) 100%);
}
.company_salaries_bar_median {
    position: absolute; top: -3px; bottom: -3px; width: 3px; border-radius: 2px; background: var(--black-color);
    transform: translateX(-50%);
}
.company_salaries_bar_dot {
    position: absolute; top: 50%; width: 12px; height: 12px; border: 2px solid var(--white-color); border-radius: 50%;
    background: var(--primary-color-3); box-shadow: 0 0 0 1px var(--gray-color-11); transform: translate(-50%, -50%);
}
.company_salaries_bar_meta {
    display: flex; justify-content: space-between; color: var(--gray-color-4); font-size: 11px; font-weight: 500;
}
.company_salaries_bar_meta_median > b {color: var(--black-color); font-weight: 600;}
.company_salaries_scale {
    display: flex; justify-content: space-between; margin-top: 10px; padding-top: 8px; border-top: 1px dashed var(--gray-color-11);
    color: var(--gray-color-4); font-size: 11px; font-weight: 500;
}

/* top */

.company_salaries_top {
    display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 14px;
    border-radius: 12px; background: var(--primary-color-9);
}
.company_salaries_top_title {color: var(--black-color); font-size: 13px; font-weight: 600;}
.company_salaries_top_salary {color: var(--primary-color-3); font-size: 14px; font-weight: 700;}

/* note */

.company_salaries_note {
    display: flex; align-items: center; gap: 6px; margin-top: 16px; padding-top: 12px;
    border-top: 1px dashed var(--gray-color-11); color: var(--gray-color-4); font-size: 11px; font-weight: 400;
}
.company_salaries_note > i {font-size: 13px;}

@media screen and (max-width: 1024px) {
    .company_salaries_subtitle {margin: 10px 0 6px; font-size: 14px; line-height: 1.5;}
    .company_salaries_block {margin-top: 22px; padding-top: 18px;}
    .company_salaries_block_title {font-size: 15px;}
    .company_salaries_block_title > i {font-size: 17px;}
    .company_salaries_metric {gap: 12px;}
    .company_salaries_metric_value {font-size: 24px;}
    .company_salaries_metric_delta {font-size: 13px;}
    .company_salaries_range {margin-top: 32px;}
    .company_salaries_range_marker_value {font-size: 13px;}
    .company_salaries_range_scale_label {font-size: 12px;}
    .company_salaries_bars {gap: 14px;}
    .company_salaries_bar {gap: 8px;}
    .company_salaries_bar_title {font-size: 14px;}
    .company_salaries_bar_range {font-size: 13px;}
    .company_salaries_bar_track {height: 10px;}
    .company_salaries_bar_meta {font-size: 12px;}
    .company_salaries_scale {font-size: 12px;}
    .company_salaries_top {padding: 12px 16px;}
    .company_salaries_top_title {font-size: 14px;}
    .company_salaries_top_salary {font-size: 15px;}
    .company_salaries_note {margin-top: 18px; padding-top: 14px; font-size: 12.5px; line-height: 1.5;}
    .company_salaries_note > i {font-size: 14px;}
}

@media screen and (max-width: 768px) {
    .company_salaries_subtitle {margin: 12px 0 8px; font-size: 15px; line-height: 1.55;}
    .company_salaries_block {margin-top: 24px; padding-top: 20px;}
    .company_salaries_block_title {font-size: 16px;}
    .company_salaries_block_title > i {font-size: 18px;}
    .company_salaries_metric {flex-wrap: wrap; gap: 8px 12px;}
    .company_salaries_metric_value {font-size: 26px;}
    .company_salaries_metric_delta {font-size: 14px;}
    .company_salaries_range {margin-top: 36px;}
    .company_salaries_range_marker_value {font-size: 14px;}
    .company_salaries_range_scale_label {font-size: 13px;}
    .company_salaries_bars {gap: 16px;}
    .company_salaries_bar {gap: 8px;}
    .company_salaries_bar_head {flex-wrap: wrap; gap: 4px 10px;}
    .company_salaries_bar_title {font-size: 15px;}
    .company_salaries_bar_range {font-size: 14px;}
    .company_salaries_bar_track {height: 12px;}
    .company_salaries_bar_meta {font-size: 13px;}
    .company_salaries_scale {font-size: 13px;}
    .company_salaries_top {flex-wrap: wrap; gap: 4px 12px; padding: 14px 18px;}
    .company_salaries_top_title {font-size: 15px;}
    .company_salaries_top_salary {font-size: 16px;}
    .company_salaries_note {margin-top: 20px; padding-top: 16px; font-size: 13.5px; line-height: 1.55;}
    .company_salaries_note > i {font-size: 15px;}
}

/* ------------------------------- MODAL JOB DETAILS ------------------------------- */

.modal_job_details {padding: 14px 16px 20px;}
.modal_job_details > .grid {padding: 0; grid-template-columns: 1.9fr 1fr; gap: 12px;}
.modal_job_details .section.v3 {padding: 18px 20px;}
.modal_job_details .page_chips_wrap {display: none;}

@media screen and (max-width: 1024px) {
    .modal_job_details {padding: 10px 14px 20px;}
    .modal_job_details > .grid {display: flex; flex-direction: column; gap: 16px;}
    .modal_job_details .section.v3 {padding: 0;}
    .modal_job_details .section.v3 + .section.v3 {margin-top: 0;}
    .modal_job_details .page_chips_wrap {display: block; margin-inline: -22px;}
}

@media screen and (max-width: 768px) {
    .modal_job_details > .grid {gap: 14px;}
    .modal_job_details .page_chips_wrap {margin-inline: -20px;}
}

/* ------------------------------- MODAL COMPANY DETAILS ------------------------------- */

.modal_company_details {padding: 14px 16px 20px;}
.modal_company_details > .grid {padding: 0; grid-template-columns: 1.9fr 1fr; gap: 12px;}
.modal_company_details .section.v3 {padding: 18px 20px;}
.modal_company_details .page_chips_wrap {display: none;}

@media screen and (max-width: 1024px) {
    .modal_company_details {padding: 10px 14px 20px;}
    .modal_company_details > .grid {display: flex; flex-direction: column; gap: 12px;}
    .modal_company_details .section.v3 {padding: 0;}
    .modal_company_details .page_chips_wrap {display: block; margin-inline: -22px;}
}

@media screen and (max-width: 768px) {
    .modal_company_details .page_chips_wrap {margin-inline: -20px;}
}

/* ------------------------------- JOB (HEADER) ------------------------------- */

@media screen and (max-width: 1024px) {
    .job_header .page_header_titlebar {display: flex; gap: 12px; align-items: center;}
    .job_header .page_header_title {flex: 1; min-width: 0;}
    .job_header .page_header_photo_inline {width: 56px; min-width: 56px; height: 56px; border-radius: 8px;}
}
@media screen and (max-width: 768px) {
    .job_header .page_header_photo_inline {width: 64px; min-width: 64px; height: 64px;}
}

/* ------------------------------- COMPANY (HEADER) ------------------------------- */

.company_header_menu_btn {min-width: 36px; padding: 0 8px;}
.company_header_menu_btn > i {padding-inline-end: 0;}

@media screen and (max-width: 1024px) {
    .company_header .page_header_titlebar {display: flex; gap: 12px; align-items: center;}
    .company_header .page_header_title {flex: 1; min-width: 0;}
    .company_header .page_header_photo_inline {width: 56px; min-width: 56px; height: 56px; border-radius: 8px;}
}
@media screen and (max-width: 768px) {
    .company_header .page_header_photo_inline {width: 64px; min-width: 64px; height: 64px;}
}

/* ------------------------------- COMPANY (JOBS) ------------------------------- */

.company_jobs_item {border: none; padding: 0; box-shadow: none; margin-top: 10px;}
.company_jobs_item > .job_item_positions {padding-top: 6px;}
.company_jobs_empty {padding: 20px; text-align: center; color: var(--gray-color-5);}

/* ------------------------------- COMPANY (TECHNOLOGIES) ------------------------------- */

.company_technologies > .page_compact_technologies {padding-top: 16px;}
.company_technologies > .page_compact_technologies > div.title.wide {width: 100%;}


/* ------------------------------- JOBS (FILTERS) ------------------------------- */

#jobs_filters_reset_btn_head {height: 32px;}

/* ------------------------------- JOBS (PROMO / ITEMS) ------------------------------- */

#job_promo, #job_items {padding-top: 11px;}

/* ------------------------------- JOBS (SEO) ------------------------------- */

#jobs_seo, #jobs_seo_root {margin-top: 10px;}

/* ------------------------------- JOBS (WINDOW REMOTE) ------------------------------- */

.jobs_window_remote_extra {padding-top: 22px;}
.jobs_window_remote_extra_label {font-size: 13px; font-weight: 500; padding-bottom: 8px;}
.modal_controls.compact {padding-top: 20px;}

/* ------------------------------- JOBS (WINDOW SORT) ------------------------------- */

.jobs_window_sort_body {padding-top: 20px;}

/* ------------------------------- JOB (MATCHING GRADIENT) ------------------------------- */

#page_matching_ring_gradient stop:nth-of-type(1) {stop-color: var(--primary-color-3);}
#page_matching_ring_gradient stop:nth-of-type(2) {stop-color: var(--secondary-color-4);}

/* ------------------------------- JOB (APPLY SUCCESS) ------------------------------- */

.job_apply_link_option_icon.light > .icon_user_4 {color: var(--primary-color-2);}

/* ------------------------------- JOB (WINDOW CREATE) ------------------------------- */

.modal_note.job_window_create_note {padding-top: 24px; padding-bottom: 0; max-width: 700px;}

/* ------------------------------- JOB (WINDOW PUBLISH) ------------------------------- */

.job_window_publish_intro {padding-top: 24px; font-size: 13px; font-weight: 500;}
.job_window_publish_block {margin-top: 20px; display: flex; border: 1px solid var(--primary-color-3); background: var(--primary-color-9); padding: 20px; border-radius: 8px;}
.job_window_publish_block_body {padding-inline-start: 20px; width: 100%;}
.job_window_publish_block_title {font-weight: 500; font-size: 13px;}
.job_window_publish_block_desc {padding-top: 10px; color: var(--gray-color-3); font-size: 13px; line-height: 1.3;}
.job_window_publish_block_price {display: flex; justify-content: end;}
.job_window_publish_block_price > span {font-weight: 500; font-size: 13px; white-space: nowrap;}

/* ------------------------------- JOB (WINDOW VERIFICATION UPSELL) ------------------------------- */

.job_upsell {padding-top: 6px;}
.job_upsell_hero {
    position: relative; overflow: hidden; padding: 28px 24px 26px; border-radius: 14px; text-align: center;
    background: linear-gradient(150deg, var(--primary-color-8) 0%, var(--primary-color-9) 60%, var(--white-color) 100%);
}
.job_upsell_glow {
    position: absolute; top: -70px; inset-inline-start: 50%; width: 240px; height: 240px; transform: translateX(-50%);
    background: radial-gradient(circle, var(--primary-color-6) 0%, transparent 70%); opacity: 0.55; pointer-events: none;
}
.job_upsell_hero > * {position: relative;}
.job_upsell_icon {
    display: inline-flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 16px;
    background: var(--white-color); color: var(--primary-color-3); font-size: 24px; box-shadow: 0 8px 20px rgba(8, 73, 133, 0.15);
}
.job_upsell_icon > i {padding-inline-end: 0;}
.job_upsell_eyebrow {
    margin-top: 16px; color: var(--primary-color-2); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px;
}
.job_upsell_title {margin-top: 8px; color: var(--black-color); font-size: 20px; font-weight: 600; line-height: 1.3; letter-spacing: -0.2px;}
.job_upsell_text {margin: 10px auto 0; max-width: 420px; color: var(--gray-color-3); font-size: 14px; line-height: 1.5;}

.job_upsell_levels {display: flex; align-items: stretch; gap: 12px; margin-top: 22px;}
.job_upsell_level {
    flex: 1 1 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 16px 12px;
    border: 1px solid var(--gray-color-12); border-radius: 12px; background: var(--white-color);
}
.job_upsell_level.next {border-color: var(--primary-color-3); background: var(--primary-color-9);}
.job_upsell_level_label {color: var(--gray-color-5); font-size: 11px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.3px;}
.job_upsell_level_value {margin-top: 6px; color: var(--black-color); font-size: 30px; font-weight: 700; line-height: 1;}
.job_upsell_level.next .job_upsell_level_value {color: var(--primary-color-3);}
.job_upsell_level_cap {margin-top: 4px; color: var(--gray-color-5); font-size: 12px;}
.job_upsell_arrow {display: flex; align-items: center; color: var(--gray-color-9); font-size: 14px;}
html[dir="rtl"] .job_upsell_arrow > i {transform: rotate(180deg);}

.job_upsell_benefits {display: flex; flex-direction: column; gap: 12px; margin-top: 22px;}
.job_upsell_benefit {display: flex; align-items: flex-start; gap: 12px;}
.job_upsell_benefit > i {
    flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; width: 26px; height: 26px; margin-top: 1px;
    border-radius: 50%; background: var(--green-color-5); color: var(--green-color-1); font-size: 12px; padding-inline-end: 0;
}
.job_upsell_benefit_title {color: var(--black-color); font-size: 14px; font-weight: 500; line-height: 1.3;}
.job_upsell_benefit_desc {margin-top: 3px; color: var(--gray-color-5); font-size: 13px; line-height: 1.45;}

.job_upsell .modal_controls {margin-top: 26px;}
.job_upsell .modal_controls .btn_primary > i {padding-inline-end: 8px;}

@media screen and (max-width: 768px) {
    .job_upsell_hero {padding: 24px 18px;}
    .job_upsell_title {font-size: 18px;}
    .job_upsell_levels {gap: 8px;}
    .job_upsell_level_value {font-size: 26px;}
}

/* ------------------------------- JOB (WINDOW SALARY) ------------------------------- */

.section_note.job_window_salary_note {padding-top: 20px; line-height: 1.3;}


/* ------------------------------- JOB (WINDOW STATUS) ------------------------------- */

.job_window_status_item {margin-bottom: 5px;}
.job_window_status_item > span:nth-of-type(2) {font-weight: 500;}

/* ------------------------------- DARK THEME ------------------------------- */


html.dark .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.high {background: var(--green-color-2); color: var(--white-color);}
html.dark .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.mid {background: var(--orange-color-1); color: var(--white-color);}
html.dark .job_item_position > div:nth-of-type(1) > div:nth-of-type(1) > .job_match.low {background: var(--gray-color-11); color: var(--gray-color-5);}


html.dark #jobs_pulse {background: var(--gray-color-14);}
html.dark .jobs_pulse_card {background: var(--gray-color-13);}

html.dark .job_apply_link_option {background: var(--gray-color-14); border-color: var(--gray-color-11);}
html.dark .job_apply_link_option:hover {background: var(--gray-color-13); border-color: var(--primary-color-5);}
html.dark .job_apply_link_option_icon.light {background: var(--gray-color-11); color: var(--gray-color-3);}

html.dark .job_impact_timeline_node {background: var(--gray-color-14); color: var(--primary-color-2);}
html.dark .job_impact_timeline_step:first-child .job_impact_timeline_node {background: var(--primary-color-3); color: var(--white-color);}
html.dark .job_impact_next_role {background: var(--gray-color-14);}
html.dark .job_impact_level_from {background: var(--gray-color-13);}

html.dark .job_impact_guest_preview {background: linear-gradient(135deg, var(--primary-color-8), var(--gray-color-13));}
html.dark .job_impact_guest_preview_card {background: var(--gray-color-14);}

html.dark .job_simular_tabs {background: var(--gray-color-13);}
html.dark .job_simular_tab:hover:not(.disabled):not(.active) {background: var(--gray-color-11);}
html.dark .job_simular_tab.active {
    background: var(--gray-color-11);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.5), 0 1px 2px rgba(0, 0, 0, 0.4);
}

html.dark .company_salaries_range_marker,
html.dark .company_salaries_bar_median {background: var(--gray-color-2);}
html.dark .company_salaries_bar_track {background: var(--gray-color-12);}
html.dark .company_salaries_bar_dot {border-color: var(--gray-color-13); box-shadow: 0 0 0 1px var(--gray-color-9);}
html.dark .company_salaries_top {background: var(--primary-color-8);}

@media screen and (max-width: 768px) {
    html.dark .job_item + .job_item {border-top-color: var(--gray-color-13);}
}
