/* کاریابی هوشمند (بخش عمومی سایت؛ همان پالت و شکل‌های site.css) */
.site .nav-career { display: inline-flex; align-items: center; gap: .35rem; }
.site .nav-career-ic { width: 1.05em; height: 1.05em; color: var(--hi); }
.site .nav-career[aria-current="page"] .nav-career-ic { color: var(--brand); }

.cr-eyebrow { display: inline-flex; align-items: center; gap: .45rem; margin: 0 0 .5rem; color: var(--hi); font-weight: 700; font-size: .9rem; }
.cr-eyebrow .ic { width: 1.1em; height: 1.1em; }
.cr-app .cr-eyebrow { color: var(--brand); }
.cr-h2 { font-size: 1.45rem; font-weight: 800; margin-bottom: 1.1rem; }
.cr-section { margin-top: 2.8rem; }

/* ── صفحه‌ی معرفی ── */
.cr-hero { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr); gap: 2rem; align-items: center; padding: clamp(1.5rem, 5vw, 3.2rem); border-radius: 28px; color: #fff; overflow: hidden;
  background: radial-gradient(640px 320px at 100% 0%, rgba(229, 185, 74, .28), transparent 62%), radial-gradient(520px 300px at 0% 100%, rgba(79, 195, 255, .30), transparent 60%), linear-gradient(135deg, #0A1836, #11306A 55%, #1B4DB0); }
.cr-hero h1 { font-size: clamp(1.7rem, 4.4vw, 2.85rem); line-height: 1.6; font-weight: 800; }
.cr-hero h1 span { background: linear-gradient(100deg, #FFE08A, #FFB86B); -webkit-background-clip: text; background-clip: text; color: transparent; }
.cr-hero-copy > p:not(.cr-eyebrow) { margin-top: 1rem; max-width: 60ch; color: rgba(255, 255, 255, .86); line-height: 2.05; }
.cr-actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-top: 1.5rem; }
.cr-mock { background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .24); border-radius: 20px; padding: 1.1rem; backdrop-filter: blur(8px); display: grid; gap: .9rem; box-shadow: 0 20px 50px rgba(3, 10, 30, .35); }
.cr-mock-head { display: flex; justify-content: space-between; align-items: center; }
.cr-mock-co { display: flex; gap: .8rem; align-items: center; }
.cr-mock-co small { display: block; color: rgba(255, 255, 255, .72); font-size: .78rem; }
.cr-mock-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; font-size: .88rem; }
.cr-mock-list li { display: flex; gap: .6rem; padding: .55rem .75rem; border-radius: 12px; background: rgba(255, 255, 255, .1); }

.cr-how { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; counter-reset: s; }
.cr-how li { position: relative; padding: 1.2rem; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.cr-how li > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50%; background: var(--brand); color: var(--on-brand); font-weight: 800; margin-bottom: .7rem; }
.cr-how h3, .cr-feat h3 { font-size: 1.02rem; margin-bottom: .3rem; }
.cr-how p, .cr-feat p { color: var(--ink-soft); font-size: .9rem; line-height: 1.95; }
.cr-feat { display: grid; grid-template-columns: repeat(auto-fit, minmax(230px, 1fr)); gap: 1rem; }
.cr-feat article { padding: 1.2rem; background: var(--card); border: 1px solid var(--line); border-radius: var(--radius); transition: transform .15s, box-shadow .15s; }
.cr-feat article:hover { transform: translateY(-3px); box-shadow: var(--shadow-md); }
.cr-feat article > span { display: grid; place-items: center; width: 48px; height: 48px; border-radius: 14px; font-size: 1.5rem; background: color-mix(in srgb, var(--hi) 24%, var(--card)); margin-bottom: .7rem; }
.cr-trust { margin-top: 2.8rem; padding: 1.5rem; border-radius: 20px; background: color-mix(in srgb, var(--brand) 7%, var(--card)); border: 1px solid color-mix(in srgb, var(--brand) 25%, var(--line)); }
.cr-trust ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .7rem; }
.cr-trust li { display: flex; gap: .7rem; align-items: flex-start; line-height: 1.9; }
.cr-trust .ic { color: var(--brand); margin-top: .35rem; }
.cr-faq { display: grid; gap: .6rem; }
.cr-faq details { background: var(--card); border: 1px solid var(--line); border-radius: 14px; padding: .2rem 1rem; }
.cr-faq summary { cursor: pointer; font-weight: 700; padding: .8rem 0; }
.cr-faq p { padding-bottom: .9rem; color: var(--ink-soft); line-height: 2; }
.cr-cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; margin-top: 2.8rem; padding: 1.6rem 2rem; border-radius: 22px; color: #fff; background: linear-gradient(135deg, #0A1836, #1B4DB0); }
.cr-cta p { color: rgba(255, 255, 255, .8); }

/* ── اپ ── */
.cr-top { display: flex; align-items: flex-end; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1.1rem; }
.cr-top h1 { font-size: clamp(1.4rem, 3.4vw, 2rem); }
.cr-top-actions { display: flex; gap: .5rem; flex-wrap: wrap; align-items: center; }
.cr-card { background: var(--card); border: 1px solid var(--line); border-radius: 20px; box-shadow: var(--shadow-sm); padding: clamp(1rem, 3vw, 1.6rem); }
.cr-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: 1.2rem; align-items: start; }
.cr-side { position: sticky; top: 84px; }
.cr-side h2, .cr-history h2 { font-size: 1.05rem; margin-bottom: .8rem; }
.cr-sum, .cr-review { margin: 0; display: grid; gap: .5rem; }
.cr-sum div, .cr-review div { display: flex; justify-content: space-between; gap: 1rem; padding: .55rem .8rem; border-radius: 12px; background: var(--card-2); }
.cr-sum dt, .cr-review dt { color: var(--ink-soft); font-size: .85rem; }
.cr-sum dd, .cr-review dd { margin: 0; font-weight: 700; text-align: end; overflow-wrap: anywhere; }
.cr-side-note { margin-top: .9rem; font-size: .8rem; line-height: 1.9; }
.cr-alert, .cr-error { padding: .75rem 1rem; border-radius: 12px; margin-bottom: 1rem; line-height: 1.9; background: var(--bad-bg, #FFE3E6); color: var(--bad, #C62F3C); }
.cr-alert { background: color-mix(in srgb, var(--hi) 22%, var(--card)); color: var(--ink); }
.cr-error[hidden] { display: none; }

.cr-stepper { list-style: none; display: grid; grid-template-columns: repeat(4, 1fr); gap: .4rem; margin: 0 0 1.4rem; padding: 0; }
.cr-stepper li { display: flex; align-items: center; gap: .5rem; padding: .5rem .6rem; border-bottom: 3px solid var(--line); color: var(--ink-soft); font-size: .85rem; font-weight: 700; }
.cr-stepper li span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 50%; background: var(--card-2); font-size: .78rem; flex: none; }
.cr-stepper li[aria-current="step"] { color: var(--brand); border-color: var(--brand); }
.cr-stepper li[aria-current="step"] span, .cr-stepper li.is-done span { background: var(--brand); color: var(--on-brand); }
.cr-stepper li.is-done { border-color: color-mix(in srgb, var(--brand) 45%, var(--line)); color: var(--ink); }
.cr-step h2 { font-size: 1.2rem; margin-bottom: 1rem; }
.cr-step[hidden] { display: none; }
.cr-field { display: grid; gap: .35rem; margin: 0 0 1rem; border: 0; padding: 0; min-width: 0; }
.cr-field > span, .cr-field > legend { font-weight: 700; font-size: .9rem; padding: 0; }
.cr-field b { color: var(--bad, #C62F3C); }
.cr-field em { font-style: normal; color: var(--ink-soft); font-weight: 400; font-size: .8rem; }
.cr-field input, .cr-field select, .cr-field textarea { width: 100%; min-height: 46px; padding: .6rem .9rem; border: 1px solid var(--edge); border-radius: 12px; background: var(--card); color: var(--ink); font: inherit; }
.cr-field textarea { resize: vertical; line-height: 1.9; }
.cr-field input:focus, .cr-field select:focus, .cr-field textarea:focus { outline: 0; border-color: var(--brand); box-shadow: 0 0 0 3px color-mix(in srgb, var(--brand) 20%, transparent); }
.cr-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.cr-narrow { max-width: 200px; }
.cr-levels { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: .6rem; }
.cr-opt, .cr-model, .cr-mode { position: relative; display: flex; cursor: pointer; }
.cr-opt input, .cr-model input, .cr-mode input, .cr-seg input { position: absolute; opacity: 0; inset: 0; width: 100%; height: 100%; margin: 0; cursor: pointer; }
.cr-opt > span, .cr-model-body, .cr-mode-body { flex: 1; }
.cr-opt > span { display: grid; gap: .1rem; padding: .7rem .9rem; border: 1px solid var(--edge); border-radius: 14px; background: var(--card); transition: border-color .15s, background .15s; }
.cr-opt small { color: var(--ink-soft); font-size: .78rem; }
.cr-opt input:checked + span, .cr-model input:checked ~ .cr-model-body, .cr-mode input:checked + .cr-mode-body { border-color: var(--brand); background: color-mix(in srgb, var(--brand) 8%, var(--card)); box-shadow: 0 0 0 2px color-mix(in srgb, var(--brand) 25%, transparent); }
.cr-opt input:focus-visible + span, .cr-model input:focus-visible ~ .cr-model-body, .cr-mode input:focus-visible + .cr-mode-body, .cr-seg input:focus-visible + span { outline: 3px solid var(--brand); outline-offset: 2px; }
.cr-seg { display: flex; flex-wrap: wrap; gap: .4rem; }
.cr-seg label { position: relative; }
.cr-seg span { display: inline-block; padding: .45rem 1rem; border: 1px solid var(--edge); border-radius: 999px; background: var(--card); font-size: .88rem; }
.cr-seg input:checked + span { background: var(--brand); border-color: var(--brand); color: var(--on-brand); font-weight: 700; }

.cr-reco { display: flex; gap: .8rem; padding: .9rem 1rem; border-radius: 14px; margin-bottom: 1rem; background: linear-gradient(135deg, color-mix(in srgb, var(--hi) 22%, var(--card)), var(--card)); border: 1px solid color-mix(in srgb, var(--hi) 50%, var(--line)); }
.cr-reco > span { font-size: 1.4rem; color: var(--hi); }
.cr-reco p { color: var(--ink-soft); font-size: .88rem; line-height: 1.9; }
.cr-models { display: grid; gap: .6rem; max-height: 380px; overflow-y: auto; padding: 2px; }
.cr-model { align-items: stretch; }
.cr-model-body { display: grid; gap: .3rem; padding: .75rem 1rem; padding-inline-end: 7.5rem; border: 1px solid var(--edge); border-radius: 14px; background: var(--card); transition: border-color .15s, background .15s; }
.cr-model-body small { color: var(--ink-soft); font-size: .78rem; }
.cr-badges { position: absolute; inset-block-start: .7rem; inset-inline-end: .8rem; display: grid; gap: .25rem; justify-items: end; pointer-events: none; }
.cr-meter { display: block; height: 6px; border-radius: 6px; background: var(--card-2); overflow: hidden; max-width: 220px; }
.cr-meter i { display: block; height: 100%; border-radius: 6px; background: linear-gradient(90deg, var(--brand), var(--hi)); }
.cr-tag { font-style: normal; display: inline-block; padding: .1rem .6rem; border-radius: 999px; background: var(--card-2); color: var(--ink-soft); font-size: .72rem; font-weight: 700; white-space: nowrap; }
.cr-tag.is-gold { background: var(--hi); color: #0B1B3F; }
.cr-tag.is-ok { background: var(--ok-bg, #DDF5EA); color: var(--ok, #138A5B); }
.cr-check { display: flex; gap: .6rem; align-items: flex-start; margin-top: 1rem; font-size: .9rem; cursor: pointer; }
.cr-check input { margin-top: .45rem; accent-color: var(--brand); }
.cr-modes { display: grid; grid-template-columns: 1fr 1fr; gap: .8rem; margin-bottom: 1.1rem; }
.cr-mode-body { display: grid; gap: .3rem; padding: 1rem; border: 1px solid var(--edge); border-radius: 16px; background: var(--card); transition: border-color .15s, background .15s; }
.cr-mode-body small { color: var(--ink-soft); line-height: 1.85; }
.cr-mode-ic { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 12px; background: color-mix(in srgb, var(--brand) 14%, var(--card)); color: var(--brand); }
.cr-note { display: flex; gap: .6rem; align-items: flex-start; padding: .8rem 1rem; border-radius: 12px; margin: 0 0 1rem; background: color-mix(in srgb, var(--brand) 7%, var(--card)); color: var(--ink-soft); font-size: .86rem; line-height: 1.95; }
.cr-note .ic { color: var(--brand); margin-top: .3rem; }
.cr-li { margin: 0 0 1rem; padding: 1rem; border: 1px dashed var(--edge); border-radius: 14px; }
.cr-link { background: none; border: 0; padding: 0; color: var(--bad, #C62F3C); cursor: pointer; font-size: .84rem; text-decoration: underline; }
.cr-nav { display: flex; gap: .6rem; justify-content: flex-end; margin-top: 1.4rem; padding-top: 1.1rem; border-top: 1px solid var(--line); }
.cr-nav [data-prev] { margin-inline-end: auto; }
.cr-nav .is-loading { opacity: .7; pointer-events: none; }
.cr-history ul { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.cr-history a { display: flex; align-items: center; gap: .8rem; padding: .7rem .9rem; border-radius: 12px; background: var(--card-2); }
.cr-history a:hover { background: color-mix(in srgb, var(--brand) 9%, var(--card-2)); }
.cr-history small { color: var(--ink-soft); margin-inline-start: auto; }

/* ── گزارش ── */
.cr-pill { display: inline-block; padding: .15rem .75rem; border-radius: 999px; font-size: .76rem; font-weight: 700; background: var(--card-2); color: var(--ink-soft); white-space: nowrap; }
.cr-pill.is-ok, .cr-pill.is-done { background: var(--ok-bg, #DDF5EA); color: var(--ok, #138A5B); }
.cr-pill.is-warn, .cr-pill.is-queued { background: var(--warn-bg, #FFF0C7); color: var(--warn, #8A5A00); }
.cr-pill.is-failed { background: var(--bad-bg, #FFE3E6); color: var(--bad, #C62F3C); }
.cr-pill.is-running { background: color-mix(in srgb, var(--brand) 14%, var(--card)); color: var(--brand); }
.cr-progress { margin-bottom: 1.2rem; }
.cr-bar { height: 10px; border-radius: 10px; background: var(--card-2); overflow: hidden; }
.cr-bar i { display: block; height: 100%; width: 0; border-radius: 10px; background: linear-gradient(90deg, var(--brand), var(--hi)); transition: width .5s ease; }
.cr-status { margin: .8rem 0; font-weight: 700; }
.cr-status.is-failed { color: var(--bad, #C62F3C); }
.cr-timeline { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.4rem; }
.cr-timeline li { display: flex; align-items: center; gap: .5rem; color: var(--ink-soft); font-size: .88rem; }
.cr-dot { width: 12px; height: 12px; border-radius: 50%; background: var(--edge); flex: none; }
.cr-timeline .is-done .cr-dot { background: var(--ok, #138A5B); }
.cr-timeline .is-active { color: var(--ink); font-weight: 700; }
.cr-timeline .is-active .cr-dot { background: var(--brand); animation: cr-pulse 1.2s ease-in-out infinite; }
.cr-timeline .is-failed .cr-dot { background: var(--bad, #C62F3C); }
@keyframes cr-pulse { 50% { transform: scale(1.5); opacity: .55; } }
.cr-companies { display: grid; gap: 1rem; }
.cr-co-head { display: flex; align-items: center; gap: .9rem; margin-bottom: 1rem; flex-wrap: wrap; }
.cr-co-title { flex: 1; min-width: 0; }
.cr-co-title h3 { font-size: 1.15rem; overflow-wrap: anywhere; }
.cr-co-title small { color: var(--ink-soft); }
.cr-ring { --p: 0; flex: none; display: grid; place-items: center; width: 54px; height: 54px; border-radius: 50%; background: conic-gradient(var(--brand) calc(var(--p) * 1%), var(--card-2) 0); position: relative; }
.cr-ring::before { content: ""; position: absolute; inset: 6px; border-radius: 50%; background: var(--card); }
.cr-ring i { position: relative; font-style: normal; font-weight: 800; font-size: .92rem; }
.cr-hero .cr-ring::before { background: #17306A; }
.cr-tabs { display: flex; gap: .3rem; overflow-x: auto; border-bottom: 1px solid var(--line); margin-bottom: 1rem; }
.cr-tab { background: none; border: 0; padding: .6rem 1rem; cursor: pointer; font-weight: 700; color: var(--ink-soft); border-bottom: 3px solid transparent; white-space: nowrap; }
.cr-tab.is-on { color: var(--brand); border-color: var(--brand); }
.cr-sec { margin-bottom: 1.3rem; }
.cr-sec h4 { font-size: 1rem; margin-bottom: .6rem; }
.cr-summary { line-height: 2.05; margin-bottom: 1rem; }
.cr-why { color: var(--ink-soft); font-size: .88rem; margin-bottom: .6rem; }
.cr-warn { padding: .6rem .9rem; border-radius: 12px; background: var(--warn-bg, #FFF0C7); color: var(--warn, #8A5A00); font-size: .88rem; line-height: 1.9; margin-bottom: 1rem; }
.cr-list { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.cr-list li { display: grid; gap: .25rem; padding: .75rem .9rem; border-radius: 12px; background: var(--card-2); line-height: 1.9; }
.cr-list small { color: var(--ink-soft); }
.cr-li-head { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; }
.cr-list blockquote { margin: .2rem 0; padding: .2rem .8rem; border-inline-start: 3px solid var(--hi); color: var(--ink-soft); font-size: .86rem; }
.cr-contacts { list-style: none; margin: 0 0 .8rem; padding: 0; display: grid; gap: .5rem; }
.cr-contacts li { display: flex; align-items: center; gap: .6rem; flex-wrap: wrap; padding: .55rem .8rem; border-radius: 12px; background: var(--card-2); }
.cr-contacts a, .cr-contacts li > span[dir] { flex: 1; min-width: 0; overflow-wrap: anywhere; color: var(--brand); }
.cr-cl { color: var(--ink-soft); font-size: .8rem; min-width: 5.5rem; }
.cr-foot { color: var(--ink-soft); font-size: .8rem; line-height: 1.9; margin-top: .6rem; }
.cr-msg { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; line-height: 2.05; padding: 1rem; border-radius: 14px; background: var(--card-2); margin: .5rem 0; }
.cr-msg-actions { display: flex; gap: .5rem; }
.cr-sources { list-style: none; margin: 0; padding: 0; display: grid; gap: .5rem; }
.cr-sources li { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; padding: .5rem .8rem; border-radius: 12px; background: var(--card-2); font-size: .88rem; }
.cr-sources .is-ok .cr-dot { background: var(--ok, #138A5B); }
.cr-sources .is-bad .cr-dot { background: var(--bad, #C62F3C); }
.cr-sources a { color: var(--brand); overflow-wrap: anywhere; }
.cr-sources small { color: var(--ink-soft); }
.cr-needs { display: grid; gap: .3rem; margin-bottom: 1rem; }

@media (max-width: 960px) {
  .cr-hero { grid-template-columns: 1fr; }
  .cr-how { grid-template-columns: 1fr 1fr; }
  .cr-layout { grid-template-columns: 1fr; }
  .cr-side { position: static; order: -1; }
}
@media (max-width: 600px) {
  .cr-how, .cr-row, .cr-modes { grid-template-columns: 1fr; }
  .cr-stepper li { font-size: 0; gap: 0; justify-content: center; }
  .cr-stepper li span { font-size: .8rem; }
  .cr-model-body { padding-inline-end: 1rem; padding-top: 2.2rem; }
  .cr-nav .btn { flex: 1; }
}
@media (prefers-reduced-motion: reduce) { .cr-timeline .is-active .cr-dot { animation: none; } .cr-bar i, .cr-feat article { transition: none; } }
@media print {
  .site-header, .site-footer, .cr-top-actions, .cr-nav, .breadcrumbs, .cr-needs { display: none !important; }
  .cr-card { box-shadow: none; break-inside: avoid; }
}
