/* Search controls and result browsing; maps and source evidence stay shared. */
:root{--accent:#254d43;--soft:#edf3e7;--border:#dfe6dc}
.nav{height:78px}.brand-name{font-size:22px}.brand-caption{font-size:9px}
.saved-nav{display:flex;align-items:center;gap:7px;border:1px solid var(--border);background:white;color:var(--green);border-radius:8px;padding:9px 13px;font-size:12px}
.saved-nav .icon{width:16px;height:16px}.saved-nav b{background:var(--soft);border-radius:12px;min-width:22px;text-align:center;padding:1px 5px;font-size:11px}.saved-nav[aria-pressed=true]{background:var(--green);color:white}.saved-nav[aria-pressed=true] b{color:var(--green)}
.hero.search-hero{display:block!important;padding:27px 0 23px!important}.hero-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.search-eyebrow{font-size:11px;letter-spacing:.05em;color:var(--sub);margin:0 0 7px}.hero.search-hero h1{font-size:30px;line-height:1.5;margin:0 0 5px;letter-spacing:.03em}.hero.search-hero .hero-copy{width:auto!important;font-size:12px}.hero-source-note{display:flex;gap:6px;align-items:center;font-size:11px;color:var(--sub);white-space:nowrap}.hero-source-note .icon{width:17px;height:17px}
.search-bar{display:grid;grid-template-columns:minmax(0,1fr) 240px auto;gap:12px;align-items:end;background:white;border:1px solid #c8d7c3;border-radius:11px;padding:13px 15px;margin-top:21px;box-shadow:0 3px 12px #254d4305}.search-bar label{font-size:10px;font-weight:600;display:block;margin-bottom:4px;color:var(--sub)}.search-bar input,.search-bar select{border:0;background:#f5f7f2;min-height:44px;font-size:14px}.search-bar input::placeholder{font-size:12px}.search-main-field{min-width:0}.search-submit{min-height:44px;padding:10px 22px;gap:8px;border-radius:7px;font-size:13px}.search-submit .icon{width:16px;height:16px}
.quick-searches{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-top:13px;font-size:10px;color:var(--sub)}.quick-searches>span{margin-right:3px}.quick-searches button{border:1px solid var(--border);background:transparent;border-radius:20px;padding:5px 11px;font-size:10px;color:var(--green)}.quick-searches button:hover{background:white;border-color:#8ca28a}
.jobs-layout{grid-template-columns:258px minmax(0,1fr);gap:25px;padding-top:24px!important}.search-panel{padding:19px 17px;top:16px;border-color:var(--border);border-radius:10px;scrollbar-width:thin;scrollbar-color:#b8c6b4 transparent;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px)}.panel-head{margin-bottom:19px}.panel-head h2{display:flex;gap:7px;align-items:center;font-size:14px}.panel-head h2 .icon{width:16px;height:16px}.panel-head>div{display:flex;align-items:center;gap:10px}.filter-close{display:none}.search-panel .field{margin-bottom:17px}.search-panel input[type=search],.search-panel select{font-size:12px;min-height:41px;padding:9px 10px}.search-panel .field label{font-size:11px}
.filter-section{border-top:1px solid var(--border);padding-top:15px;margin:0 0 17px}.filter-section>summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;font-size:12px;font-weight:650;margin-bottom:12px}.filter-section>summary::-webkit-details-marker{display:none}.filter-section>summary .icon{width:13px;height:13px}.filter-section[open]>summary .icon{transform:rotate(180deg)}.filter-section .field:last-child{margin-bottom:0}.filter-section .filter-hint{font-size:9px;margin-top:-5px}.filter-section .chips{gap:6px}.chip{font-size:10px;min-height:32px;padding:5px 8px}.chip-count{margin-left:4px;font-size:9px}.chip:disabled{opacity:.4;cursor:default}.chip:disabled:hover{border-color:#e2e7dd;background:white}.filter-section .chips+.field{margin-top:17px}.category-note{font-size:9px;line-height:1.7}.check-filter{display:flex;align-items:center;gap:7px;font-size:11px;cursor:pointer;margin-top:13px}.check-filter input{accent-color:var(--green);width:15px;height:15px}.only-button{font-size:11px;padding-top:15px;margin-top:2px}.filter-apply{display:none}
.coverage-summary{padding:11px 14px;margin-bottom:22px;background:#eef4e8;gap:3px 11px}.coverage-summary strong{font-size:21px}.coverage-summary span{font-size:11px}.coverage-summary small{font-size:9px}.results-head{align-items:center;margin-bottom:14px}.results-head h2{font-size:21px;margin:0}.section-kicker{font-size:10px;color:var(--sub);letter-spacing:.02em;margin:0 0 3px}.count{margin:6px 0 0}.count strong{font-size:25px}.count-detail{font-size:10px;margin-top:3px;line-height:1.7}.save-search{display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:var(--green);font-size:11px;padding:8px 0;white-space:nowrap}.save-search .icon{width:15px;height:15px}.save-search:disabled{opacity:.4;cursor:default}
.active-filters{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0 0 15px}.active-filter{display:flex;align-items:center;gap:6px;border:1px solid #cfddc9;border-radius:5px;background:var(--soft);color:var(--green);font-size:10px;padding:5px 8px;max-width:100%;overflow-wrap:anywhere}.active-filter .icon{width:12px;height:12px;flex-shrink:0}.active-filter-clear{font-size:10px;background:transparent;border:0;color:var(--sub);text-decoration:underline;padding:6px}.saved-searches{font-size:11px;background:white;border:1px solid var(--border);border-radius:7px;padding:10px 13px;margin-bottom:14px}.saved-searches>summary{cursor:pointer;font-weight:600}.saved-searches>p{font-size:9px;color:var(--sub);margin:8px 0 0}.saved-searches #saved-search-list{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.saved-search-item{display:flex;border:1px solid var(--border);border-radius:5px;overflow:hidden}.saved-search-item button{border:0;background:#f8faf5;color:var(--green);font-size:10px;padding:6px 8px}.saved-search-item button+button{border-left:1px solid var(--border)}.saved-search-item .icon{width:12px;height:12px}
.results-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;padding-block:12px;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.result-tools{gap:7px;justify-content:flex-start}.view-switch{padding:3px;border-radius:6px}.view-switch button{font-size:11px;padding:7px 10px}.view-switch .icon{width:13px;height:13px}.near-button{font-size:10px;min-height:36px;padding:7px 9px;gap:4px}.near-button .icon{width:13px;height:13px}.sort-field{display:flex;align-items:center;gap:7px;font-size:10px;color:var(--sub);white-space:nowrap}.sort-field select{min-height:34px;width:160px;appearance:auto;padding:6px 7px;font-size:11px;background:white}
.notice{font-size:10px;margin-bottom:16px;padding:10px 12px}.notice p{font-size:10px}.map-panel{margin-bottom:21px}.job-map{height:420px}.map-head{padding:12px 14px}.map-head h3{font-size:13px}.map-head p{font-size:10px;max-width:none}.map-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.map-actions .near-button{font-size:9px;min-height:31px;padding:5px 8px}.map-actions .near-button[aria-pressed=true]{background:var(--green);color:white}.map-range-note{font-size:10px;color:var(--sub);margin:0;padding:10px 14px;border-top:1px solid var(--line)}.map-range-note button{border:0;background:none;color:var(--green);text-decoration:underline;font-size:10px}.map-legend{font-size:9px;gap:7px 12px;padding:10px 14px}.map-caption{font-size:9px;padding:8px 14px}
.list-heading{font-size:12px}.list-heading p{font-size:9px}.list{gap:15px}.card{padding:20px;box-shadow:0 1px 2px #254d4304}.card-top{margin-bottom:13px;align-items:flex-start}.card-actions{display:flex;gap:8px;align-items:center}.card h3{font-size:17px;line-height:1.65;margin:0 0 7px}.job-title{font-size:12px;line-height:1.7;margin:0 0 9px;font-weight:500}.facility-kind{font-size:10px}.facility-icon{width:25px;height:25px}.facility-icon .icon{width:16px;height:16px}.badge{font-size:9px;padding:3px 6px}.save-job{border:1px solid transparent;background:transparent;color:#7d8b7d;border-radius:5px;display:flex;align-items:center;justify-content:center;gap:3px;min-height:31px;min-width:31px;padding:4px;font-size:9px}.save-job .icon{width:18px;height:18px}.save-job:hover{background:var(--soft)}.save-job[aria-pressed=true]{color:var(--green);background:var(--soft)}.save-job[aria-pressed=true] .icon{fill:#254d431c}.job-source{font-size:9px;margin:0 0 9px}.address{font-size:11px;line-height:1.7}.job-role{font-size:10px;margin:6px 0}.job-qualifier{font-size:10px;line-height:1.7}.job-conditions{display:block;padding:12px 13px;margin:13px 0;background:#f5f8f0;border:0;border-radius:6px}.salary-main{color:var(--green);font-size:17px;font-weight:650;line-height:1.7;overflow-wrap:anywhere;margin:0}.salary-main.unknown{font-size:12px;font-weight:400;color:var(--sub)}.salary-label{font-size:9px;color:var(--sub);font-weight:400;margin-bottom:2px;display:block}.condition-inline{display:flex;flex-wrap:wrap;gap:6px 12px;font-size:10px;color:var(--sub);margin:5px 0 0}.condition-inline strong{font-size:11px;display:inline}.condition-source{font-size:9px;margin-top:6px}.tags{margin-top:9px}.tag{font-size:9px;padding:2px 6px}.evidence{margin:12px 0;padding-top:10px}.ev{font-size:10px;line-height:1.8;-webkit-line-clamp:2}.evidence-label{font-size:8px}.evidence-toggle{font-size:9px}.job-deadline,.job-number{font-size:9px;margin-top:7px}.job-other-sources{font-size:9px;margin-bottom:11px}.card-meta{font-size:9px;margin-top:8px}.go{min-height:37px;font-size:11px;padding:8px}.card-map-button{font-size:9px;min-height:27px;margin-bottom:7px}.empty{padding:36px 20px}.empty-actions{display:flex;gap:9px;justify-content:center;flex-wrap:wrap;margin-top:8px}.empty-actions button{font-size:11px}.saved-unavailable{grid-column:1/-1;background:white;border:1px solid var(--border);border-radius:8px;padding:15px 18px;font-size:11px;color:var(--sub)}.saved-unavailable h3{font-size:12px;color:var(--green);margin:0 0 7px}.saved-unavailable ul{padding:0;list-style:none;margin:0}.saved-unavailable li{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:9px 0}.saved-unavailable a{text-decoration:underline}.saved-unavailable button{border:0;background:transparent;color:var(--sub);font-size:10px;white-space:nowrap}.saved-disclaimer{font-size:9px;margin-top:10px}
.toast{position:fixed;z-index:1600;left:50%;bottom:25px;transform:translateX(-50%);background:#254d43;color:white;border-radius:8px;box-shadow:0 6px 25px #254d4326;font-size:12px;padding:12px 20px;max-width:calc(100% - 32px);margin:0;text-align:center}.mobile-filter-bar,.filter-backdrop{display:none}
@media(max-width:1100px){.jobs-layout{grid-template-columns:236px minmax(0,1fr);gap:20px}.search-bar{grid-template-columns:minmax(0,1fr) 190px auto}.hero-source-note{display:none}.results-toolbar{align-items:flex-start;flex-wrap:wrap}.sort-field{margin-left:auto}.card{padding:17px}.search-panel{padding:17px 14px}}
@media(max-width:850px){.search-bar{grid-template-columns:minmax(0,1fr) 180px auto;gap:8px;padding:11px}.search-submit{padding:10px 13px;font-size:12px}.results-head{flex-direction:row;align-items:center;gap:10px}.results-head h2{font-size:19px}.save-search{font-size:10px;max-width:110px;white-space:normal;text-align:left}.sort-field{margin-left:0}.result-tools{width:auto}.job-map{height:360px}.map-head{align-items:flex-start;flex-direction:column;gap:10px}.map-actions{justify-content:flex-start}.list{grid-template-columns:1fr}.hero.search-hero h1{font-size:27px}.hero.search-hero .hero-copy{font-size:11px}}
@media(min-width:621px){.search-panel{overflow-y:auto;overscroll-behavior-y:contain}}
@media(max-width:620px){
 body{padding-bottom:82px}.nav{height:67px}.brand-name{font-size:19px}.brand-caption{font-size:8px}.nav-links{display:flex;gap:0}.nav-links>a{display:none}.saved-nav{font-size:10px;padding:7px 8px;gap:5px}.saved-nav .icon{width:14px;height:14px}.saved-nav b{font-size:9px;min-width:18px}.hero.search-hero{padding:22px 0 18px!important}.hero.search-hero h1{font-size:25px;line-height:1.55;margin-bottom:5px}.search-eyebrow{font-size:10px}.hero.search-hero .hero-copy{font-size:10px;line-height:1.8}.search-bar{grid-template-columns:1fr 106px;margin-top:16px;padding:11px;gap:9px;border-radius:9px}.search-main-field{grid-column:1/-1}.search-location-field{grid-column:1}.search-submit{font-size:12px;grid-column:2;min-height:42px;padding:9px 11px;gap:5px}.search-bar input,.search-bar select{font-size:16px;min-height:42px}.search-bar input::placeholder{font-size:11px}.search-bar label{font-size:9px}.search-bar .input-wrap .icon{top:13px}.search-bar .select-wrap::after{top:16px}.quick-searches{gap:6px;margin-top:11px}.quick-searches>span{display:none}.quick-searches button{font-size:9px;padding:4px 8px}.jobs-layout{display:block;padding-top:19px!important}.coverage-summary{padding:10px 12px;margin-bottom:17px;gap:2px 8px}.coverage-summary strong{font-size:20px}.coverage-summary span{font-size:10px}.coverage-summary small{font-size:8px}.results-head{align-items:flex-start}.results-head h2{font-size:19px}.section-kicker{font-size:9px}.count strong{font-size:24px}.count-detail{font-size:9px;max-width:225px}.save-search{font-size:10px;max-width:92px;align-items:flex-start;line-height:1.8}.save-search .icon{flex-shrink:0;margin-top:2px}.results-toolbar{gap:10px;padding-block:10px}.sort-field{width:100%;justify-content:flex-end;font-size:9px}.sort-field select{font-size:11px;min-height:32px;width:169px}.view-switch button{font-size:10px;padding:6px 9px}.near-button{font-size:10px;min-height:33px}.result-tools{width:100%;justify-content:space-between;gap:6px}.result-tools .view-switch{flex:0 1 auto}.active-filter{font-size:9px;padding:4px 7px}.active-filters{margin-bottom:12px}.map-head{padding:11px 12px;gap:9px}.map-head h3{font-size:12px}.map-head p{font-size:9px;max-width:none}.map-actions .near-button{font-size:9px;min-height:30px}.job-map{height:280px}.map-legend{font-size:8px;gap:6px 11px;padding:9px 11px}.map-caption{font-size:8px}.map-panel{margin-bottom:19px}.notice{font-size:9px;padding:9px 10px;margin-bottom:13px}.notice p{font-size:9px}.list-heading{font-size:11px}.list-heading p{font-size:8px}.card{padding:18px}.card h3{font-size:17px}.job-title{font-size:12px}.salary-main{font-size:18px}.ev{font-size:11px}.go{min-height:42px;font-size:12px}.save-job{min-width:34px;min-height:34px}.job-qualifier{font-size:10px}.toast{bottom:83px;font-size:11px;width:max-content}.mobile-filter-bar{display:block;position:fixed;z-index:950;left:0;right:0;bottom:0;background:#fffffff5;border-top:1px solid var(--border);padding:10px 18px calc(10px + env(safe-area-inset-bottom));backdrop-filter:blur(8px)}.mobile-filter-bar button{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:42px;border:0;border-radius:7px;background:var(--green);color:white;font-size:12px}.mobile-filter-bar .icon{width:16px;height:16px}.mobile-filter-bar b{display:inline-flex;align-items:center;justify-content:center;min-width:18px;background:#ffffff26;border-radius:10px;font-size:10px;padding:0 4px}.mobile-filter-bar #mobile-result-count{margin-left:auto;font-size:10px;opacity:.85}
 .search-panel{position:static;max-height:none;margin-bottom:22px;overflow:visible}.filters-ready .search-panel{display:none}.filters-open{overflow:hidden}.filters-open .filter-backdrop{display:block;position:fixed;inset:0;background:#122f286b;z-index:1200}.filters-open .search-panel{display:block;position:fixed;inset:12px 12px 0;width:auto;max-height:none;height:calc(100vh - 12px);height:calc(100dvh - 12px);z-index:1300;overflow-y:auto;overscroll-behavior:contain;border-radius:12px 12px 0 0;padding:17px 19px 0;margin:0;scrollbar-width:thin}.filter-close{display:flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;padding:5px;border:0;background:transparent;color:var(--green)}.filter-close .icon{width:19px;height:19px}.panel-head{position:sticky;top:-17px;background:white;z-index:2;margin:0 -19px 18px;padding:9px 19px 12px;border-bottom:1px solid var(--border)}.panel-head h2{font-size:16px}.search-panel input[type=search],.search-panel select{font-size:16px;min-height:43px}.search-panel .field label{font-size:12px}.filter-section>summary{font-size:13px}.filter-section .chip{font-size:12px;min-height:36px;padding:7px 10px}.filter-section .chip-count{font-size:10px}.filter-section .filter-hint,.category-note{font-size:10px}.check-filter,.only-button{font-size:12px}.filter-apply{display:block;position:sticky;bottom:0;margin:18px -19px 0;padding:13px 19px calc(13px + env(safe-area-inset-bottom));background:white;border-top:1px solid var(--border)}.filter-apply .primary{width:100%;justify-content:center;font-size:14px;min-height:44px}.about{margin-top:34px}.filter-section .field{margin-bottom:15px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Keep the search and first results close together. */
.hero.search-hero{padding-block:20px 18px!important}.hero.search-hero h1{font-size:27px}.search-bar{margin-top:15px;padding-block:11px}.quick-searches{margin-top:10px}
@media(max-width:620px){.hero.search-hero h1{font-size:23px}.hero.search-hero{padding-block:19px 16px!important}.search-bar{margin-top:13px}}

/* Readable labels, with compact search summaries above the vacancies. */
.filter-section>summary{font-size:13px}.filter-section .chip{font-size:12px}.chip-count{font-size:10px}.search-panel .field label{font-size:12px}.filter-hint,.filter-section .filter-hint,.category-note{font-size:10px}.check-filter,.only-button{font-size:12px}
.coverage-summary{padding:9px 13px;margin-bottom:16px}.coverage-summary strong{font-size:18px}.coverage-summary span{font-size:11px}.coverage-summary small{display:none}.count-detail{display:inline;margin-left:10px}.results-head{margin-bottom:12px}.active-filters{margin-bottom:12px}
.view-switch button,.near-button,.sort-field select{font-size:12px}.active-filter,.save-search{font-size:11px}.quick-searches button{font-size:11px}.facility-kind,.badge,.tag{font-size:10px}.address,.job-title,.job-qualifier,.job-role,.ev{font-size:12px}.evidence-label,.evidence-toggle,.job-source,.card-meta,.job-deadline,.job-number{font-size:10px}.go{font-size:13px;min-height:42px}.condition-inline{font-size:11px}.condition-inline strong{font-size:12px}.salary-label{font-size:10px}.salary-main{font-size:18px}
.card-long-text{margin:0}.card-long-text>summary{cursor:pointer;font-size:11px;color:var(--sub);line-height:1.8}.card-long-text>p{font-size:12px;line-height:1.8;color:var(--sub);margin:6px 0;overflow-wrap:anywhere}.card-long-text+*{margin-top:8px}
.salary-filter{margin-top:15px}.salary-filter-fields{display:grid;gap:7px}.salary-min-label{display:flex!important;align-items:center;gap:6px;font-weight:400!important}.salary-min-label input{width:100%;min-width:0;min-height:38px;border:1px solid var(--border);border-radius:5px;padding:7px 9px;font:inherit;color:var(--green)}.salary-min-label input:disabled{background:#f6f7f3}.salary-min-label span{font-size:10px;white-space:nowrap}
.about>div{min-width:0;flex:1}.employer-contact{flex:0 0 280px;padding:20px;background:white;border:1px solid var(--border);border-radius:9px}.employer-contact h3{font-size:14px;margin:0 0 10px}.employer-contact .go{margin-top:14px;font-size:12px}.employer-contact .employer-hours{font-size:11px;margin-top:9px}
@media(max-width:850px){.about{display:block}.employer-contact{margin-top:22px;max-width:430px}}
@media(max-width:620px){.coverage-summary span{font-size:10px}.count-detail{display:block;margin-left:0}.quick-searches button{font-size:10px}.active-filter{font-size:10px}.filter-section .chip{font-size:13px}.view-switch button,.near-button{font-size:11px}.search-panel .field label{font-size:12px}.ev{font-size:12px}.card-meta,.job-source{font-size:10px}}

.coverage-details{margin:10px 0 16px}.coverage-details summary{width:fit-content;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.coverage-details>p{margin-top:10px}

/* Show the effect of relaxing a condition before the user commits to it. */
.empty-alternatives{margin:20px auto;max-width:440px;text-align:left}.empty-alternatives>p{font-size:12px;color:var(--sub);margin-bottom:8px}.relax-filter{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;min-height:44px;border:1px solid var(--border);border-radius:7px;background:white;color:var(--green);font:inherit;font-size:12px;padding:10px 13px;margin-top:7px;text-align:left;cursor:pointer}.relax-filter span{overflow-wrap:anywhere}.relax-filter strong{white-space:nowrap}.relax-filter:hover{background:var(--soft);border-color:#9eb495}.relax-filter:focus-visible{outline:3px solid #7c9b55;outline-offset:2px}
