.jobs-page{overflow-wrap:anywhere;padding-block:.75rem 3rem}.jobs-hero{border-bottom:1px solid var(--border-subtle);max-width:none;margin-bottom:.5rem;padding-bottom:.5rem}.jobs-tag{color:var(--text-secondary);font-family:var(--font-mono);align-items:center;gap:.55rem;margin-bottom:.25rem;font-size:.875rem;font-weight:400;display:inline-flex}.jobs-tag svg{color:var(--brand-accent);width:1.2rem;height:1.2rem}.jobs-hero h1{letter-spacing:.015em;text-wrap:auto;max-width:100%;font-size:clamp(2rem,3vw,2.5rem);font-weight:400;line-height:1.2}.jobs-lead{color:var(--text-secondary);max-width:none;margin-top:.5rem;font-size:1rem;line-height:1.5}.jobs-meta{color:var(--text-secondary);flex-wrap:wrap;gap:.6rem 1.4rem;margin-top:.25rem;font-size:.875rem;display:flex}.jobs-meta span:before{content:"";background:var(--brand-accent);border-radius:50%;width:4px;height:4px;margin-right:.5rem;display:inline-block}.jobs-board{min-width:0;container:jobs-board/inline-size}.jobs-notice{border:1px solid var(--action-primary-border);background:var(--action-primary-subtle);color:var(--text-primary);border-radius:var(--radius-control);padding:1rem 1.25rem;line-height:1.6}.jobs-notice:not([hidden]){margin-bottom:2rem}.jobs-toolbar{justify-content:space-between;align-items:center;gap:.75rem;margin-block:0 .5rem;display:flex}.jobs-toolbar h2{font-size:1.125rem;font-weight:600}.jobs-toolbar p{color:var(--text-secondary);margin-top:0;font-size:.875rem}.jobs-toolbar>div{flex-wrap:wrap;align-items:baseline;gap:.25rem 1rem;min-width:0;display:flex}.jobs-button,.jobs-reset{border-radius:var(--radius-control);cursor:pointer;min-height:44px;padding:.65rem 1rem;font-weight:600}.jobs-button{border:1px solid var(--border-subtle);background:var(--surface-primary);white-space:normal;max-width:100%}.jobs-button:disabled{opacity:.55;cursor:wait}.jobs-filters{background:var(--surface-primary);border:1px solid var(--border-subtle);border-radius:var(--radius-card);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto auto auto;align-items:end;gap:.75rem;padding:.5rem;display:grid}.jobs-filters label{grid-template-columns:minmax(0,1fr);gap:.25rem;min-width:0;font-size:.9rem;font-weight:550;display:grid}.jobs-filters select{appearance:none;border:1px solid var(--border-strong);border-radius:var(--radius-control);background:var(--surface-primary);background-image:var(--select-indicator);width:100%;min-width:0;max-width:100%;min-height:44px;color:var(--text-primary);font:inherit;text-overflow:ellipsis;background-position:right .75rem center;background-repeat:no-repeat;background-size:1rem;padding:.5rem 2.25rem .5rem .75rem;font-size:1rem;overflow:hidden}.jobs-filters label>span{min-width:0}.jobs-filters .jobs-check{align-items:center;gap:.5rem;min-height:44px;display:flex}.jobs-check input{width:1.1rem;height:1.1rem;accent-color:var(--action-primary);flex-shrink:0}.jobs-reset{color:var(--action-primary);justify-content:center;align-items:center;gap:.4rem;display:flex}.jobs-reset svg{width:1rem;height:1rem}.jobs-results-meta{color:var(--text-secondary);justify-content:space-between;gap:1rem;margin-block:.5rem;font-size:.9rem;display:flex}.jobs-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:.75rem;display:grid}.job-card{border:1px solid var(--border-subtle);border-radius:var(--radius-card);background:var(--surface-primary);min-width:0;box-shadow:none;grid-template-columns:minmax(0,1fr);grid-template-areas:"heading""salary""employer""meta""footer";align-items:start;gap:.375rem;padding:1rem;display:grid}.job-card__heading{flex-wrap:wrap;grid-area:heading;align-items:baseline;gap:.375rem .75rem;min-width:0;display:flex}.job-card__tag{color:var(--action-primary);border-radius:var(--radius-card);font-size:.875rem;line-height:1.5;font-family:var(--font-mono);background:0 0;padding:0;font-weight:400}.job-card__tag:before{content:"/ ";color:var(--brand-accent)}.job-card h3{overflow-wrap:anywhere;min-width:0;font-size:1.25rem;font-weight:700;line-height:1.3}.job-card__employer{color:var(--text-secondary);overflow-wrap:anywhere;grid-area:employer;font-size:1rem;font-weight:550;line-height:1.45}.job-card__compensation{grid-area:salary;min-width:0;margin-block:.125rem}.job-card__salary{overflow-wrap:anywhere;font-size:1.125rem;font-weight:650;line-height:1.4}.job-card__salary--missing{color:var(--text-secondary);font-size:.9375rem;font-weight:400}.job-card__salary-details{color:var(--text-secondary);overflow-wrap:anywhere;margin-top:.25rem;font-size:.9375rem;line-height:1.45}.job-card__meta{color:var(--text-secondary);overflow-wrap:anywhere;grid-area:meta;font-size:.9375rem;line-height:1.45}.job-card__footer{flex-wrap:wrap;grid-area:footer;justify-content:space-between;align-items:center;gap:.25rem .75rem;margin-top:.25rem;font-size:.875rem;display:flex}.job-card__footer time{color:var(--text-secondary)}.job-card__footer a{text-underline-offset:.25em;color:var(--action-primary);background:var(--action-primary-subtle);border:1px solid var(--action-primary-border);border-radius:var(--radius-control);overflow-wrap:anywhere;place-self:end;align-items:center;min-height:44px;padding:.5rem .75rem;font-size:.9375rem;font-weight:650;display:inline-flex}@container jobs-board (width>=64rem){.jobs-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.job-card{flex-direction:column;align-items:stretch;display:flex}.job-card__footer{margin-top:auto;padding-top:.25rem}}.jobs-message{background:var(--surface-primary);border:1px dashed var(--border-subtle);border-radius:var(--radius-card);padding:2rem;line-height:1.6}.jobs-page :is(a,button,select,input):focus-visible{outline:2px solid var(--action-primary);outline-offset:3px}@media (hover:hover){.job-card__footer a:hover{text-decoration:underline}.jobs-button:hover,.jobs-reset:hover{background:var(--action-primary-subtle)}}@media (width<=1100px){.jobs-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.job-card{padding:1rem}}@media (width<=600px){.jobs-toolbar{flex-direction:column;align-items:flex-start}.jobs-filters{gap:.85rem;padding:1rem}.jobs-filters>label:not(.jobs-check){grid-column:1/-1}.jobs-filters .jobs-check{align-items:flex-start;font-size:.875rem}.jobs-reset{grid-column:1/-1}.jobs-results-meta{font-size:.875rem}}
