/* Candidate Advanced Job Search + sticky bar (candidate pages only). */
.candidate-layout .jat-search-sticky{position:sticky;top:0;z-index:1015;background:rgba(255,255,255,.97);border-bottom:1px solid #dbe1ea;box-shadow:0 4px 14px rgb(15 23 42 / .06);padding:8px 12px;margin-bottom:12px}
.candidate-layout .jat-search-collapsed{width:100%;display:flex;flex-wrap:wrap;align-items:center;gap:8px;border:1px solid #d0d7e2;border-radius:999px;background:#fff;padding:8px 14px;min-height:48px;text-align:start;cursor:pointer}
.candidate-layout .jat-search-collapsed:focus-visible{outline:2px solid #111827;outline-offset:2px}
.candidate-layout .jat-search-mobile-toggle{display:none;border-radius:9px;min-height:44px;padding:8px 12px}.candidate-layout .jat-search-mobile-toggle>span{flex:1;font-weight:700}.candidate-layout .jat-search-arrow-up{display:none}.candidate-layout .jat-search-mobile-toggle[aria-expanded=true] .jat-search-arrow-down{display:none}.candidate-layout .jat-search-mobile-toggle[aria-expanded=true] .jat-search-arrow-up{display:inline-block}
.candidate-layout .jat-search-collapsed-keyword{flex:1 1 120px;font-weight:600;color:#111827;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.candidate-layout .jat-search-chip,.candidate-layout .jobs-search-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:#f3f5f8;border:1px solid #e5e7eb;padding:4px 10px;font-size:.82rem;color:#374151}
.candidate-layout .jat-search-form.is-collapsed{display:none}
.candidate-layout .jat-search-form{display:grid;gap:12px;padding:10px 2px 4px}
.candidate-layout .jat-search-main{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(140px,.7fr) minmax(180px,1fr) minmax(160px,.8fr) auto;gap:10px;align-items:start}
.candidate-layout .jat-search-submit{min-height:44px;white-space:nowrap}
.candidate-layout .jat-search-advanced,.candidate-layout .jat-search-close{align-self:center;white-space:nowrap}
.candidate-layout .jat-job-type-locked{display:flex;align-items:center;gap:8px;background:#f3f5f8;color:#374151}
.candidate-layout .jat-country-picker{position:relative}
.candidate-layout .jat-country-trigger{width:100%;min-height:42px}
.candidate-layout .jat-country-panel{position:absolute;inset-inline-start:0;top:calc(100% + 4px);z-index:5;width:min(360px,90vw);background:#fff;border:1px solid #d0d7e2;border-radius:12px;padding:10px;box-shadow:0 10px 30px rgb(15 23 42 / .12)}
.candidate-layout .jat-country-all{display:flex;align-items:center;gap:8px;margin:8px 0 0;padding:6px 4px;border-bottom:1px solid #e5e7eb;font-weight:600;cursor:pointer}
.candidate-layout .jat-country-list{list-style:none;margin:8px 0 0;padding:0;max-height:220px;overflow:auto}
.candidate-layout .jat-country-list label{display:flex;align-items:center;gap:8px;padding:6px 4px;cursor:pointer}
.candidate-layout .jat-country-done{display:block;margin:9px 0 0 auto;min-width:76px}
.candidate-layout .jat-country-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}
.candidate-layout .jat-country-chip{display:inline-flex;align-items:center;gap:6px;background:#111827;color:#fff;border-radius:999px;padding:4px 10px;font-size:.78rem}
.candidate-layout .jat-country-chip button{border:0;background:transparent;color:#fff;padding:0;line-height:1;cursor:pointer}
.candidate-layout .jat-search-panel-wrap{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:18px;box-shadow:0 10px 28px rgb(15 23 42 / .08);margin:0 auto 24px;width:min(960px,100%)}
.candidate-layout .jat-search-quick{width:min(980px,100%);margin-inline:auto;padding:18px;background:#fff;border:1px solid #d8dde5;border-radius:14px;box-shadow:0 4px 14px rgb(15 23 42 / .06)}
.candidate-layout .jat-search-quick .jat-search-main{grid-template-columns:minmax(220px,1.5fr) minmax(145px,.65fr) minmax(190px,1fr) auto;align-items:start}
.candidate-layout .jat-search-quick .jat-search-form{padding:0}
.candidate-layout .jat-search-quick-actions{display:flex;justify-content:flex-end;margin-top:8px}
.candidate-layout .jat-search-quick-mobile-advanced{display:none;text-align:center;margin-top:8px}
.candidate-layout .jat-search-quick-toggle{display:none;width:100%;min-height:48px;align-items:center;gap:10px;padding:10px 14px;border:1px solid #343a40;border-radius:8px;background:rgba(255,255,255,.35);color:#111827;text-align:start;font-weight:700}
.candidate-layout .jat-search-quick-toggle span{flex:1}
.candidate-layout .jat-search-quick-toggle:focus-visible{outline:3px solid #886bb5;outline-offset:2px}
.candidate-layout .jat-search-optional{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:8px;border-top:1px solid #eef2f6}
.candidate-layout .jat-search-optional label{display:grid;gap:4px;font-size:.86rem;color:#4b5563}
.candidate-layout .jat-search-check{display:flex!important;align-items:center;gap:8px;grid-template-columns:none}
.candidate-layout .jat-default-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:8px}
.candidate-layout .jat-default-check{display:inline-flex;align-items:center;gap:7px;font-size:.88rem;color:#374151}
.candidate-layout .jat-default-status{font-size:.82rem;color:#b42318}
.candidate-layout .landing-search-section{padding-block:24px 8px}
.candidate-layout .jat-search-floating{position:fixed;right:18px;bottom:104px;z-index:1040}
.candidate-layout .jat-floating-toggle{width:56px;height:56px;border:0;border-radius:50%;display:flex;align-items:center;justify-content:center;gap:3px;background:#111827;color:#fff;box-shadow:0 10px 28px rgb(15 23 42 / .3)}
.candidate-layout .jat-floating-toggle:focus-visible{outline:3px solid #fff;outline-offset:2px}
.candidate-layout .jat-floating-arrow{font-size:.75rem}
.candidate-layout .jat-floating-panel{position:absolute;right:0;bottom:66px;width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid #d0d7e2;border-radius:18px;padding:16px;box-shadow:0 16px 44px rgb(15 23 42 / .24)}
.candidate-layout .jat-floating-panel[hidden]{display:none}
.candidate-layout .jat-floating-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.candidate-layout .jat-search-floating .jat-search-main{grid-template-columns:1fr}
.candidate-layout .jat-search-floating .jat-country-panel{inset-inline-start:auto;inset-inline-end:0;width:min(350px,calc(100vw - 50px))}
.candidate-layout .jat-search-floating .jat-default-actions{justify-content:space-between}
.candidate-layout .jobs-search-page{width:min(1120px,calc(100% - 32px));margin-inline:auto;padding:28px 0 60px}
.candidate-layout .jobs-search-hero{text-align:center;margin-bottom:22px}
.candidate-layout .jobs-search-hero h1{font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800;color:#111827;margin:0}
.candidate-layout .jobs-search-hero p{color:#5f6877;margin:.55rem 0 0}
.candidate-layout .jobs-search-errors{background:#fff1f0;border:1px solid #f5c2c0;border-radius:12px;padding:12px 14px;margin-bottom:16px;color:#b42318}
.candidate-layout .jobs-search-results-head{text-align:center;margin:8px 0 14px}
.candidate-layout .jobs-search-results-head h2{font-size:clamp(1.25rem,2.4vw,1.8rem);font-weight:750;margin:0}
.candidate-layout .jobs-search-chips,.candidate-layout .jobs-search-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:14px}
.candidate-layout .jobs-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.candidate-layout .jobs-empty{grid-column:1/-1;text-align:center;background:#fff;padding:32px;border:1px dashed #aaa;border-radius:12px}
.candidate-layout .job-feed-controls{display:grid;justify-items:center;gap:8px;min-height:70px;padding-top:18px}
.candidate-layout .job-feed-retry[hidden]{display:none}
html[dir=rtl] .candidate-layout .jat-search-collapsed,
html[dir=rtl] .candidate-layout .jat-search-main,
html[dir=rtl] .candidate-layout .jat-country-list label{text-align:start}
html[dir=rtl] .candidate-layout .jat-search-floating{right:auto;left:18px}
html[dir=rtl] .candidate-layout .jat-floating-panel{right:auto;left:0}
html[dir=rtl] .candidate-layout .jat-floating-arrow{transform:scaleX(-1)}
html[dir=rtl] .candidate-layout .jat-search-quick-toggle .bi-chevron-right{transform:scaleX(-1)}
@media(max-width:991.98px){
  .candidate-layout .jat-search-main{grid-template-columns:1fr 1fr}
  .candidate-layout .jat-search-quick .jat-search-main{grid-template-columns:1fr 1fr}
  .candidate-layout .jat-search-optional{grid-template-columns:1fr 1fr}
  .candidate-layout .jobs-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:575.98px){
  .candidate-layout .jat-search-sticky{padding:8px}
  .candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-mobile-toggle{display:flex;flex-wrap:nowrap}
  .candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-form{display:grid;max-height:760px;opacity:1;overflow:visible;padding-top:10px;transition:max-height .22s ease,opacity .18s ease,padding .22s ease}
  .candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-form.is-collapsed{display:grid;max-height:0;opacity:0;overflow:hidden;padding-block:0}
  .candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-main{grid-template-columns:minmax(0,1fr)}
  .candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-close{display:inline-flex;justify-content:center}
  .candidate-layout .jat-search-main{grid-template-columns:1fr}
  .candidate-layout .jat-search-quick{padding:12px;border-radius:10px}
  .candidate-layout .jat-search-quick-toggle{display:flex}
  .candidate-layout .jat-search-quick .jat-search-main{grid-template-columns:1fr}
  .candidate-layout .jat-search-quick .jat-search-form{padding-top:10px}
  .candidate-layout .jat-search-quick .jat-search-form.is-collapsed{display:none}
  .candidate-layout .jat-search-quick-actions{display:none}
  .candidate-layout .jat-search-quick-mobile-advanced{display:block}
  .candidate-layout .jat-search-optional{grid-template-columns:1fr}
  .candidate-layout .jobs-search-page{width:min(100% - 22px,1120px);padding-top:18px}
  .candidate-layout .jobs-search-page.has-search-results .jat-search-panel-wrap{display:none}
  .candidate-layout .jat-country-panel{position:fixed;inset:auto 10px 12px;width:auto;max-height:min(70dvh,520px);overflow:auto;overscroll-behavior:contain;z-index:1060}
  .candidate-layout .jat-country-done{position:sticky;bottom:0;width:100%;min-height:44px}
  .candidate-layout .jobs-card-grid{grid-template-columns:1fr}
  .candidate-layout .jat-search-collapsed-keyword{flex-basis:100%}
  .candidate-layout .jat-search-floating{right:12px;bottom:96px}
  html[dir=rtl] .candidate-layout .jat-search-floating{right:auto;left:12px}
  .candidate-layout .jat-floating-panel{padding:14px}
}
@media(min-width:576px){.candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-mobile-toggle{display:none}.candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-form.is-collapsed{display:grid}.candidate-layout .jat-search-sticky.is-mobile-collapsible .jat-search-close{display:none}}
@media(min-width:576px){.candidate-layout .jat-search-quick .jat-search-form.is-collapsed{display:grid}}
@media(min-width:320px){.candidate-layout .jat-search-panel-wrap{border-radius:18px}}
@media(min-width:375px){.candidate-layout .jobs-search-hero h1{letter-spacing:-.01em}}
@media(min-width:768px){.candidate-layout .jat-search-panel-wrap{padding:22px}}
