/* فرصت‌های شغلی هاگ — همهٔ قواعد زیر .hugc اسکوپ شده‌اند تا با قالب تداخل نکنند. */
.hugc{
  --hc-accent:#F59E1B; --hc-accent-hi:#FFB84D; --hc-accent-soft:#FDF1DD; --hc-accent-ink:#B45309;
  --hc-ink:#2E3D5C; --hc-ink-soft:#41527A; --hc-ink-deep:#22304A; --hc-ink-2:#3A4A6B;
  --hc-surface:#FFFFFF; --hc-surface-2:#EEF1F5; --hc-line:#E2E6EC; --hc-line-2:#D6DCE5;
  --hc-muted:#5F6672; --hc-ok-bg:#EAF6EC; --hc-ok-ink:#15803D; --hc-err:#991B1B; --hc-err-bg:#FDECEC;
  --hc-r:12px; --hc-rb:8px; --hc-pill:999px;
  --hc-ease:cubic-bezier(.16,.84,.44,1);
  font-family:inherit; color:var(--hc-ink-soft); line-height:1.7;
  max-width:920px; margin-inline:auto;
}
.hugc *,.hugc *::before,.hugc *::after{box-sizing:border-box}
.hugc h2,.hugc h3{color:var(--hc-ink); line-height:1.25; margin:0}
.hugc p{margin:0}
.hugc a{color:inherit; text-decoration:none !important}
.hugc svg{width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex:0 0 auto}
.hugc .hugc-sr{position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap}
.hugc :where(a,button,input,select,textarea):focus-visible{outline:none; box-shadow:0 0 0 3px rgba(245,158,11,.45); border-radius:var(--hc-rb)}

/* ---------- دکمه ---------- */
.hugc-btn{display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:46px;
  padding-inline:22px; border-radius:var(--hc-rb); font:inherit; font-size:15px; font-weight:500;
  border:1px solid transparent; cursor:pointer; transition:transform .16s var(--hc-ease), background .16s;
  text-decoration:none !important}
.hugc-btn-primary{background:var(--hc-accent); color:var(--hc-ink-deep); font-weight:600}
.hugc-btn-primary:hover{background:var(--hc-accent-hi); transform:translateY(-1px)}
.hugc-btn-ghost{background:var(--hc-surface); border-color:var(--hc-line); color:var(--hc-ink)}
.hugc-btn-ghost:hover{background:var(--hc-surface-2)}

/* ---------- سربرگ فهرست ---------- */
.hugc-head{display:flex; gap:26px; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; margin-bottom:26px}
.hugc-lede{font-size:16.5px; line-height:1.9; max-width:58ch}
.hugc-count{flex:0 0 auto; background:var(--hc-surface-2); border:1px solid var(--hc-line);
  border-radius:var(--hc-pill); padding:7px 16px; font-size:13.5px; color:var(--hc-muted); display:flex; gap:7px; align-items:baseline}
.hugc-count b{color:var(--hc-ink); font-size:16px; font-weight:700}

/* ---------- فیلتر ---------- */
.hugc-filters{display:flex; gap:16px; align-items:center; justify-content:space-between; flex-wrap:wrap; margin-bottom:20px}
.hugc-chips{display:flex; gap:8px; flex-wrap:wrap}
.hugc-chip{font:inherit; font-size:14px; background:var(--hc-surface); border:1px solid var(--hc-line);
  border-radius:var(--hc-pill); padding:8px 16px; cursor:pointer; color:var(--hc-ink-soft); transition:background .16s, color .16s, border-color .16s}
.hugc-chip:hover{border-color:var(--hc-line-2)}
.hugc-chip.is-on{background:var(--hc-ink); border-color:var(--hc-ink); color:#fff; font-weight:500}
.hugc-search{position:relative; display:flex; align-items:center; flex:1 1 220px; max-width:280px}
.hugc-search svg{position:absolute; inset-inline-start:13px; color:var(--hc-muted); width:16px; height:16px}
.hugc-search input{width:100%; font:inherit; font-size:14.5px; height:42px; padding-inline:38px 14px;
  border:1px solid var(--hc-line); border-radius:var(--hc-rb); background:var(--hc-surface); color:var(--hc-ink)}
.hugc-search input::placeholder{color:#8A93A2}

/* ---------- کارت شغل ---------- */
.hugc-jobs{list-style:none; margin:0; padding:0; border:1px solid var(--hc-line); border-radius:var(--hc-r); background:var(--hc-surface); overflow:hidden}
.hugc-job + .hugc-job{border-top:1px solid var(--hc-line)}
.hugc-job > a{display:flex; gap:18px; align-items:center; padding:20px 22px; transition:background .16s}
.hugc-job > a:hover{background:#FCFDFE}
.hugc-job-main{flex:1 1 auto; min-width:0}
.hugc-job h3{font-size:17px; font-weight:600; display:flex; align-items:center; gap:9px; flex-wrap:wrap}
.hugc-job p{font-size:14px; color:var(--hc-muted); margin-top:5px; line-height:1.7}
.hugc-job.is-closed > a{opacity:.62}
.hugc-tag{font-size:11.5px; font-weight:600; border-radius:var(--hc-pill); padding:2px 10px; line-height:1.7}
.hugc-tag-urgent{background:var(--hc-accent-soft); color:var(--hc-accent-ink)}
.hugc-tag-off{background:var(--hc-surface-2); color:var(--hc-muted)}
.hugc-meta{display:flex; gap:8px; flex-wrap:wrap; margin-top:11px; font-size:12.5px; color:var(--hc-muted)}
.hugc-meta span{background:var(--hc-surface-2); border-radius:var(--hc-pill); padding:3px 11px}
.hugc-meta-lg{margin-top:14px; font-size:13px}
.hugc-go{width:32px; height:32px; border-radius:50%; background:var(--hc-surface-2); display:grid; place-items:center; color:var(--hc-ink-soft); transition:background .16s, color .16s}
.hugc-job > a:hover .hugc-go{background:var(--hc-accent); color:var(--hc-ink-deep)}
.hugc-noresult{padding:34px 20px; text-align:center; color:var(--hc-muted); font-size:15px}
@media (max-width:560px){
  .hugc-job > a{padding:17px 16px; gap:12px}
  .hugc-job h3{font-size:16px}
  .hugc-go{width:28px; height:28px}
}

/* ---------- حالت خالی ---------- */
.hugc-empty{border:1px dashed var(--hc-line-2); border-radius:var(--hc-r); background:var(--hc-surface); padding:34px 30px; text-align:center}
.hugc-empty b{display:block; font-size:19px; color:var(--hc-ink); font-weight:600; margin-bottom:9px}
.hugc-empty p{font-size:15px; line-height:1.9; max-width:52ch; margin:0 auto 20px}

/* ---------- پیام‌ها ---------- */
.hugc-flash{display:flex; gap:11px; align-items:center; background:var(--hc-ok-bg); color:var(--hc-ok-ink);
  border:1px solid #CFE7D5; border-radius:var(--hc-rb); padding:14px 18px; font-size:14.5px; margin-bottom:24px}
.hugc-alert{background:var(--hc-err-bg); color:var(--hc-err); border:1px solid #F4D2D2; border-radius:var(--hc-rb);
  padding:12px 16px; font-size:14px; margin-bottom:18px}

/* ---------- صفحهٔ یک فرصت ---------- */
.hugc-back{display:inline-flex; align-items:center; gap:7px; font-size:14px; color:var(--hc-muted); margin-bottom:20px}
.hugc-back:hover{color:var(--hc-ink)}
.hugc-back svg{width:15px; height:15px}
.hugc-title{font-size:clamp(23px,3vw,31px); font-weight:700}
.hugc-sum{font-size:17px; color:var(--hc-ink-2); line-height:1.9; margin-top:18px; max-width:62ch}
.hugc-body{display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:30px; margin-top:34px;
  padding-top:30px; border-top:1px solid var(--hc-line)}
.hugc-block h3{font-size:15px; font-weight:600; margin-bottom:13px}
.hugc-block ul{list-style:none; margin:0; padding:0; display:grid; gap:9px}
.hugc-block li{position:relative; padding-inline-start:19px; font-size:14.5px; line-height:1.85}
.hugc-block li::before{content:""; position:absolute; inset-inline-start:0; top:10px; width:6px; height:6px; border-radius:50%; background:var(--hc-line-2)}
.hugc-block-reqs li::before{background:var(--hc-accent)}
.hugc-prose{grid-column:1/-1; font-size:15px; line-height:1.9}
.hugc-prose p + p{margin-top:12px}

.hugc-closed{margin-top:34px; background:var(--hc-surface-2); border:1px solid var(--hc-line); border-radius:var(--hc-r); padding:26px 28px}
.hugc-closed b{display:block; font-size:17px; color:var(--hc-ink); font-weight:600; margin-bottom:7px}
.hugc-closed p{font-size:14.5px; line-height:1.85; max-width:56ch; margin-bottom:18px}

.hugc-done{margin-top:34px; background:var(--hc-surface); border:1px solid #CFE7D5; border-radius:var(--hc-r); padding:32px 30px; text-align:center}
.hugc-done-ic{width:46px; height:46px; border-radius:50%; background:var(--hc-ok-bg); color:var(--hc-ok-ink); display:grid; place-items:center; margin:0 auto 14px}
.hugc-done-ic svg{width:22px; height:22px; stroke-width:2.6}
.hugc-done h3{font-size:21px; margin-bottom:10px}
.hugc-done p{font-size:15px; line-height:1.9; max-width:54ch; margin:0 auto 20px}

/* ---------- فرم ---------- */
.hugc-form{margin-top:34px; background:var(--hc-surface); border:1px solid var(--hc-line); border-radius:var(--hc-r); padding:28px 30px}
/* دام عسل: با left:-9999px در RTL، عرض قابل اسکرول سند ۱۰۳۷۴px می‌شد.
   کلیپ‌کردن به‌جای بیرون‌بردن. aria-hidden و tabindex=-1 هم روی خود فیلد هست تا اسکرین‌ریدر ردش کند. */
.hugc-hp{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden;
  clip:rect(0 0 0 0); clip-path:inset(50%); white-space:nowrap; border:0}
.hugc-form-head{display:flex; gap:20px; align-items:flex-start; justify-content:space-between; flex-wrap:wrap; margin-bottom:22px}
.hugc-form-head h3{font-size:19px; margin-bottom:5px}
.hugc-form-head p{font-size:13.5px; color:var(--hc-muted)}
.hugc-prog{flex:0 0 158px; text-align:end}
.hugc-prog i{display:block; height:5px; border-radius:3px; background:var(--hc-surface-2); overflow:hidden; margin-bottom:7px}
.hugc-prog b{display:block; height:100%; width:0; background:var(--hc-accent); border-radius:3px; transition:width .22s var(--hc-ease)}
.hugc-prog.is-full b{background:#4ADE80}
.hugc-prog span{font-size:12px; color:var(--hc-muted)}

.hugc-grid{display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px}
@media (max-width:620px){ .hugc-grid{grid-template-columns:minmax(0,1fr)} }
.hugc-f{display:flex; flex-direction:column; gap:6px; margin:0; min-width:0}
.hugc-f-wide{grid-column:1/-1}
.hugc-f label{font-size:14px; font-weight:500; color:var(--hc-ink)}
.hugc-f input[type=text],.hugc-f input[type=tel],.hugc-f input[type=email],.hugc-f textarea{
  font:inherit; font-size:15px; width:100%; padding:11px 14px; border:1px solid var(--hc-line);
  border-radius:var(--hc-rb); background:var(--hc-surface); color:var(--hc-ink); transition:border-color .16s}
.hugc-f input:hover,.hugc-f textarea:hover{border-color:var(--hc-line-2)}
.hugc-f textarea{resize:vertical; min-height:66px}
.hugc-f small{font-size:12.5px; color:var(--hc-muted); line-height:1.7}
.hugc-f em{font-style:normal; font-size:12.5px; color:var(--hc-err)}
.hugc-f.has-err input,.hugc-f.has-err textarea{border-color:#E3A5A5; background:#FFFBFB}

.hugc-radios{display:flex; gap:8px; flex-wrap:wrap}
.hugc-radio{position:relative; display:inline-flex}
.hugc-radio input{position:absolute; opacity:0; width:1px; height:1px}
.hugc-radio span{display:inline-block; font-size:14px; border:1px solid var(--hc-line); border-radius:var(--hc-pill);
  padding:9px 17px; cursor:pointer; color:var(--hc-ink-soft); transition:background .16s, border-color .16s, color .16s}
.hugc-radio span:hover{border-color:var(--hc-line-2)}
.hugc-radio input:checked + span{background:var(--hc-accent-soft); border-color:var(--hc-accent); color:var(--hc-accent-ink); font-weight:600}
.hugc-radio input:focus-visible + span{box-shadow:0 0 0 3px rgba(245,158,11,.45)}

.hugc-file{position:relative; display:flex; align-items:center; gap:11px; flex-wrap:wrap}
.hugc-file input[type=file]{position:absolute; inset:0; opacity:0; width:100%; height:100%; cursor:pointer}
.hugc-file-btn{display:inline-flex; align-items:center; font-size:14px; background:var(--hc-surface-2);
  border:1px solid var(--hc-line); border-radius:var(--hc-rb); padding:10px 16px; color:var(--hc-ink)}
.hugc-file:hover .hugc-file-btn{background:#E6EAF0}
.hugc-file-name{font-size:13px; color:var(--hc-muted); min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap}

.hugc-opt{margin-top:24px; padding-top:22px; border-top:1px dashed var(--hc-line-2)}
.hugc-opt-head{display:flex; gap:10px; align-items:baseline; flex-wrap:wrap; margin-bottom:16px}
.hugc-opt-head b{font-size:12px; font-weight:600; color:var(--hc-accent-ink); background:var(--hc-accent-soft);
  border-radius:var(--hc-pill); padding:3px 11px}
.hugc-opt-head span{font-size:13px; color:var(--hc-muted)}

.hugc-consent{margin-top:22px; font-size:14px; line-height:1.85}
.hugc-consent label{display:flex; gap:10px; align-items:flex-start; cursor:pointer}
.hugc-consent input{margin-top:5px; width:17px; height:17px; accent-color:var(--hc-accent); flex:0 0 auto}
.hugc-consent a{color:var(--hc-accent-ink); border-bottom:1px solid rgba(180,83,9,.32)}
.hugc-consent em{display:block; font-style:normal; font-size:12.5px; color:var(--hc-err); margin-top:5px}

.hugc-actions{display:flex; gap:16px; align-items:center; flex-wrap:wrap; margin-top:24px; padding-top:22px; border-top:1px solid var(--hc-line)}
.hugc-actions-note{font-size:13px; color:var(--hc-muted)}
@media (max-width:560px){
  .hugc-form{padding:22px 18px}
  .hugc-actions .hugc-btn{width:100%}
}
@media (prefers-reduced-motion:reduce){ .hugc *{transition:none !important} }
