/* אזור "משרות מדריכים" — כרטיס טריגר + מודאל סינון לפי עיר.
   משתמש בטוקנים המוגדרים ב-:root של index.html (var(--blue) וכו'). */

/* מיכל כרטיסי הקטגוריות (כרטיס לכל קטגוריה) */
.jobs-cards { display: flex; flex-direction: column; gap: 12px; margin-top: 16px; }

/* כרטיס טריגר לקטגוריה (בתוך .intro הכהה) */
.jobs-card {
  display: flex; flex-direction: column; gap: 4px; width: 100%; text-align: right;
  cursor: pointer; font-family: inherit; color: #fff;
  background: rgba(43,142,240,.12); border: 1.5px solid var(--blue); border-radius: 14px;
  padding: 15px 16px; transition: background .15s ease, transform .15s ease, box-shadow .15s ease;
}
.jobs-card:hover { background: rgba(43,142,240,.2); transform: translateY(-2px); box-shadow: 0 10px 26px rgba(43,142,240,.22); }
.jobs-card:focus-visible { outline: 3px solid #ffbf47; outline-offset: 2px; }
.jobs-card__title { font-weight: 800; font-size: 17px; color: #fff; }
.jobs-card__cue { font-size: 13px; color: var(--blue-2); font-weight: 600; }

/* מודאל */
.jf-overlay {
  position: fixed; inset: 0; z-index: 10050; display: none;
  align-items: center; justify-content: center; padding: 20px;
  background: rgba(4,12,32,.66); backdrop-filter: blur(2px);
  font-family: 'Rubik', system-ui, Arial, sans-serif;
}
.jf-overlay[data-open="true"] { display: flex; }
.jf-modal {
  position: relative; width: min(520px, 100%); max-height: 88vh; overflow-y: auto;
  background: #fff; color: var(--ink); border-radius: 18px; padding: 26px 26px 22px;
  box-shadow: 0 30px 80px rgba(0,0,0,.45);
}
.jf-close {
  position: absolute; inset-inline-end: 14px; top: 12px; background: none; border: 0;
  font-size: 22px; line-height: 1; color: #64708a; cursor: pointer; padding: 4px;
}
.jf-close:hover { color: var(--navy); }
.jf-close:focus-visible { outline: 3px solid #ffbf47; outline-offset: 2px; border-radius: 6px; }
.jf-modal h2 { margin: 0 0 4px; font-size: 22px; color: var(--navy); font-weight: 800; }
.jf-sub { margin: 0 0 18px; font-size: 14px; color: #64708a; }
.jf-city-label { display: block; font-size: 13px; font-weight: 600; color: var(--ink); margin-bottom: 6px; }
.jf-city {
  display: block; width: 100%; padding: 11px 13px; font-size: 15px; font-family: inherit;
  border: 1.5px solid var(--line-form); border-radius: 11px; background: #fff; color: var(--ink); cursor: pointer;
}
.jf-city:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 4px rgba(43,142,240,.14); }
.jf-city:disabled { opacity: .7; cursor: default; }

/* תוצאות (2+ משרות) */
.jf-results { margin-top: 16px; display: grid; gap: 10px; }
.jf-results-h { margin: 4px 0 2px; font-size: 13px; font-weight: 700; color: var(--faint-l, #97a2b8); color: #64708a; }
.jf-item {
  display: flex; flex-direction: column; gap: 3px; text-align: right; cursor: pointer; font-family: inherit;
  background: #fbfcfe; border: 1.5px solid var(--line-form); border-radius: 12px; padding: 13px 14px;
  transition: border-color .12s ease, background .12s ease, transform .12s ease;
}
.jf-item:hover { border-color: var(--blue); background: var(--blue-soft); transform: translateY(-1px); }
.jf-item:focus-visible { outline: 3px solid #ffbf47; outline-offset: 2px; }
.jf-item__title { font-weight: 700; font-size: 15.5px; color: var(--navy); }
.jf-item__desc { font-size: 13.5px; color: #5c6b85; line-height: 1.5; }

@media (max-width: 560px) {
  .jf-overlay { padding: 0; }
  .jf-modal { width: 100%; max-height: 100vh; height: 100%; border-radius: 0; padding: 24px 20px; }
}
