/* Search and listing styles are scoped to the Job Hunt workspace. */
.hunt-wrap {max-width:1240px;margin:0 auto;padding:32px clamp(16px,4vw,46px) 40px;color:#172640;font-family:var(--app-font);line-height:1.5;container-type:inline-size;}
.hunt-wrap h1,.hunt-wrap h2,.hunt-wrap h3,.hunt-wrap p {margin:0;}
.hunt-wrap .btn svg {width:16px;height:16px;}
.hunt-wrap button,.hunt-wrap input,.hunt-wrap select {font-family:inherit;}
.hunt-wrap [hidden] {display:none;}
.hunt-wrap :focus-visible {outline:2px solid #4a6bf0;outline-offset:3px;}
.hunt-sr {position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;}
.hunt-search-hero {position:relative;isolation:isolate;overflow:hidden;padding:clamp(18px,3vw,32px);border-radius:19px;color:#fff;background:radial-gradient(ellipse at 97% 1%,#3d62b8 0,transparent 58%),linear-gradient(115deg,#15274d,#254386);}
.hunt-hero-copy {position:relative;margin-bottom:20px;max-width:76%;}
.hunt-hero-copy h1,.hunt-fallback-title {font-size:clamp(31px,4vw,43px);font-weight:750;letter-spacing:-.045em;line-height:1.12;}
.hunt-hero-copy p {margin-top:8px;font-size:15px;color:#e3ecff;}
.hunt-hero-art {position:absolute;right:23px;top:-39px;width:252px;height:170px;pointer-events:none;z-index:-1;}
.hunt-hero-art i {position:absolute;inset:45px 5px 11px;border:1px solid #c0d3ff52;border-radius:50%;transform:rotate(-18deg);}
.hunt-hero-art i:nth-child(2) {inset:35px 21px 12px;border-style:dashed;transform:rotate(20deg);}
.hunt-hero-art span {position:absolute;top:54px;left:99px;display:grid;place-items:center;width:72px;height:68px;border:1px solid #b7ccff;border-radius:20px;background:linear-gradient(145deg,#a7bcff,#6b91f4 60%,#466bd7);box-shadow:2px 5px 0 #395bab,9px 17px 27px #101d4948;transform:perspective(520px) rotateY(-22deg) rotateZ(12deg);}
.hunt-hero-art svg {width:31px;height:31px;}
html[data-motion="on"] .hunt-hero-art span {animation:hunt-float 7.5s ease-in-out infinite;}
html[data-page-hidden="true"] .hunt-hero-art span {animation-play-state:paused;}
@keyframes hunt-float {50% {transform:perspective(520px) translateY(-5px) rotateY(-14deg) rotateZ(8deg);}}

.hunt-search-form {position:relative;padding:16px;border:1px solid #fff;border-radius:13px;background:#f9fbff;box-shadow:0 10px 23px #101e4640;color:#233a60;}
.hunt-search-form fieldset {min-width:0;padding:0;margin:0;border:0;}
.hunt-search-fields {display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr) auto;align-items:end;gap:12px;}
.hunt-field {display:grid;gap:5px;min-width:0;font-size:13px;font-weight:650;}
.hunt-field input,.hunt-field select {width:100%;min-width:0;min-height:43px;padding:8px 10px;border:1px solid #cdd9ed;border-radius:8px;background:#fff;color:#172640;font-size:14px;font-weight:500;}
.hunt-field input::placeholder {color:#62718a;}
.hunt-search-fields .btn {min-height:43px;gap:7px;white-space:nowrap;}
.hunt-search-form .hunt-search-help,.hunt-search-advanced p {margin-top:9px;color:#465d7d;font-size:12px;}
.hunt-freshness-filters {display:flex;flex-wrap:wrap;align-items:end;gap:8px 18px;margin-top:13px;padding-top:12px;border-top:1px solid #e1e9f7;}
.hunt-freshness-filters .hunt-field {min-width:158px;}
.hunt-freshness-filters select {min-height:37px;}
.hunt-open-filter {display:flex;align-items:center;gap:7px;min-height:37px;color:#233a60;font-size:13px;font-weight:650;cursor:pointer;}
.hunt-open-filter input {width:16px;height:16px;accent-color:#3156db;}
.hunt-freshness-filters > p {flex:1 1 235px;align-self:end;margin:0 0 6px;color:#465d7d;font-size:12px;}
.hunt-search-advanced {margin-top:7px;}
.hunt-search-advanced summary,.hunt-source-report summary {cursor:pointer;color:#38547e;font-size:13px;font-weight:650;}
.hunt-search-advanced summary svg,.hunt-source-report summary svg {display:inline-block;width:15px;height:15px;vertical-align:-3px;margin-right:4px;}
.hunt-search-advanced > div {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:12px;}

.hunt-other-boards {display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin-top:14px;padding:13px 15px;border:1px solid #dce6f4;border-radius:11px;background:#fff;}
.hunt-other-boards h2 {color:#21385d;font-size:14px;font-weight:700;}
.hunt-other-boards p {margin-top:2px;color:#4c6383;font-size:12px;}
#hunt-board-links {display:flex;flex-wrap:wrap;gap:6px;}
#hunt-board-links a {display:inline-flex;align-items:center;gap:4px;padding:5px 8px;border:1px solid #dce6f8;border-radius:6px;background:#f3f7ff;color:#2a4c9e;font-size:12px;font-weight:650;}
#hunt-board-links a:hover {border-color:#c5d5fb;background:#eaf1ff;}
#hunt-board-links svg {width:12px;height:12px;}

.hunt-scan {display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:10px 16px;margin-top:14px;padding:14px 15px;border:1px solid #d9e5fa;border-radius:11px;background:#edf3ff;}
.hunt-scan > div {flex:1 1 260px;min-width:0;}
.hunt-scan h2 {color:#21385d;font-size:15px;font-weight:700;}
.hunt-scan p {margin-top:3px;color:#405982;font-size:13px;}
.hunt-scan .hunt-scan-note {color:#4d6282;font-size:12px;}
.hunt-scan .hunt-scan-error {color:#8c3e32;font-weight:650;}
.hunt-scan progress {display:block;width:min(100%,440px);height:8px;margin:8px 0 5px;overflow:hidden;border:0;border-radius:6px;background:#dbe6fa;accent-color:#345ac0;}
.hunt-scan progress::-webkit-progress-bar {background:#dbe6fa;}
.hunt-scan progress::-webkit-progress-value {background:#345ac0;}
.hunt-scan progress::-moz-progress-bar {background:#345ac0;}
.hunt-scan .btn {min-height:38px;font-size:13px;white-space:nowrap;}

.hunt-resume-panel {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;margin-top:14px;padding:15px;border:1px solid #dce6f4;border-radius:11px;background:#f8faff;}
.hunt-resume-icon {display:grid;place-items:center;align-self:start;width:38px;height:38px;border-radius:10px;background:#e8efff;color:#3156ac;}
.hunt-resume-icon svg {width:20px;height:20px;}
.hunt-resume-copy h2 {color:#21385d;font-size:15px;font-weight:700;}
.hunt-resume-copy p {margin-top:2px;color:#4c6383;font-size:13px;overflow-wrap:anywhere;}
.hunt-resume-copy .hunt-resume-status {margin-top:5px;}
.hunt-resume-status strong {color:#253b60;}
.hunt-resume-copy .hunt-resume-error {color:#8c3e32;font-weight:650;}
.hunt-resume-actions {display:flex;flex-wrap:wrap;align-items:center;gap:7px;}
.hunt-resume-actions .btn {min-height:38px;padding:7px 11px;gap:6px;font-size:13px;}
.hunt-resume-actions .hunt-resume-upload {background:#edf2ff;border-color:#d9e4ff;color:#2447ad;}
.hunt-resume-actions .hunt-resume-upload:hover:enabled {background:#e0eaff;border-color:#c5d5fb;}
.hunt-resume-actions .btn:disabled {cursor:wait;opacity:.65;}

.hunt-results {margin-top:24px;}
.hunt-results-heading {display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:8px 14px;margin-bottom:13px;}
.hunt-results h2,.hunt-search-state h2 {color:#172640;font-size:23px;letter-spacing:-.035em;line-height:1.25;}
.hunt-result-context {margin-top:4px!important;color:#4d6282;font-size:13px;overflow-wrap:anywhere;}
.hunt-result-context:empty {display:none;}
.hunt-sort-label {color:#395790;background:#e9f0fc;padding:4px 9px;border-radius:6px;font-size:12px;font-weight:650;}
.hunt-wrap .hunt-search-edits {margin-bottom:12px;color:#3a5281;font-size:13px;}
.hunt-search-state,.hunt-search-alert {display:flex;align-items:center;gap:13px;padding:17px 18px;border:1px solid #dce6f4;border-radius:11px;background:#fff;color:#4a5e7a;font-size:14px;}
.hunt-search-state h3 {color:#21385d;font-size:16px;}
.hunt-search-state h2 + p,.hunt-search-state h3 + p {margin-top:3px;}
.hunt-fallback-title + .hunt-search-state {margin-top:15px;}
.hunt-state-icon,.hunt-company-mark {display:grid;place-items:center;flex-shrink:0;width:42px;height:42px;border:1px solid #dce7fa;border-radius:10px;background:#edf3fe;color:#3658a9;}
.hunt-state-icon svg,.hunt-company-mark svg {width:20px;height:20px;}
.hunt-search-alert {margin-bottom:12px;background:#fff5f3;border-color:#f1d9d4;color:#8c3e32;flex-wrap:wrap;}
.hunt-search-alert svg {width:18px;height:18px;flex-shrink:0;}
.hunt-search-alert p {flex:1 1 220px;}
.hunt-search-alert .btn {font-size:12px;}
.hunt-spinner {display:inline-block;flex-shrink:0;width:19px;height:19px;border:2px solid #cfddfa;border-top-color:#395ac6;border-radius:50%;animation:hunt-spin .9s linear infinite;}
.hunt-search-fields .hunt-spinner {width:15px;height:15px;border-color:#ffffff60;border-top-color:white;}
@keyframes hunt-spin {to {transform:rotate(360deg);}}

.hunt-source-report {margin:0 0 12px;color:#465c7d;font-size:13px;}
.hunt-source-report[open] {padding:10px 13px;border:1px solid #dce6f4;border-radius:9px;background:#fff;}
.hunt-source-report p {margin-top:6px;}
.hunt-source-report ul {max-height:175px;overflow:auto;list-style:none;padding:0;margin:8px 0 0;}
.hunt-source-report li {display:flex;justify-content:space-between;gap:8px;padding:4px 0;}

.hunt-job-list {display:grid;gap:10px;list-style:none;padding:0;margin:0;}
.hunt-job-card {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;padding:17px;border:1px solid #dce5f3;border-radius:12px;background:#fff;box-shadow:0 2px 8px #152a4d05;}
.hunt-company-mark {font-size:13px;font-weight:750;}
.hunt-job-title {display:flex;flex-wrap:wrap;align-items:center;gap:5px 9px;}
.hunt-job-copy h3 {color:#1c3158;font-size:17px;font-weight:700;line-height:1.35;overflow-wrap:anywhere;}
.hunt-resume-score {display:inline-flex;align-items:baseline;gap:4px;padding:3px 8px;border:1px solid #d9e4ff;border-radius:7px;background:#edf2ff;color:#264499;font-size:12px;font-weight:650;}
.hunt-resume-score strong {font-size:14px;font-variant-numeric:tabular-nums;}
.hunt-resume-details,.hunt-job-copy .hunt-resume-unavailable {margin-top:9px;color:#4d6282;font-size:12px;}
.hunt-resume-details summary {width:fit-content;max-width:100%;cursor:pointer;color:#315394;font-weight:650;}
.hunt-resume-details[open] {padding:7px 9px;border:1px solid #e1e9f8;border-radius:7px;background:#f8faff;}
.hunt-resume-details p {margin-top:5px;overflow-wrap:anywhere;}
.hunt-resume-details strong {margin-right:3px;color:#253b60;}
.hunt-job-company {margin-top:3px!important;color:#3c5274;font-size:14px;font-weight:650;}
.hunt-job-source {color:#536782;font-weight:450;}
.hunt-job-meta,.hunt-job-reasons,.hunt-job-freshness {display:flex;flex-wrap:wrap;align-items:center;gap:5px 8px;margin-top:7px;}
.hunt-job-meta {color:#4b607e;font-size:13px;}
.hunt-job-meta > span {display:flex;align-items:flex-start;gap:5px;min-width:0;overflow-wrap:anywhere;}
.hunt-job-meta svg {flex:0 0 14px;width:14px;height:14px;margin-top:2px;}
.hunt-work-mode,.hunt-job-reasons span {padding:2px 7px;border-radius:5px;background:#edf3fd;color:#375585;font-size:12px;font-weight:600;}
.hunt-job-reasons span {background:#edf6f2;color:#2c614c;}
.hunt-job-freshness {color:#4d6282;font-size:12px;}
.hunt-job-freshness .active {padding:2px 7px;border-radius:5px;background:#e7f5ed;color:#226143;font-weight:650;}
.hunt-job-summary {display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;margin-top:7px!important;color:#465d7c;font-size:13px;overflow-wrap:anywhere;}
.hunt-job-actions {align-self:center;display:grid;gap:7px;}
.hunt-job-actions .btn {min-height:40px;justify-content:center;}
.hunt-job-card .hunt-view-job {gap:7px;border-color:#d9e4ff;background:#edf2ff;color:#2447ad;white-space:nowrap;font-size:13px;}
.hunt-job-card .hunt-view-job:hover {background:#e0eaff;border-color:#c5d5fb;}
.hunt-more-jobs {display:flex;justify-content:center;margin-top:15px;}

@container (max-width:760px) {
 .hunt-search-fields {grid-template-columns:repeat(2,minmax(0,1fr));}
}
@container (max-width:480px) {
 .hunt-hero-copy {max-width:100%;}
 .hunt-hero-art {display:none;}
 .hunt-search-fields,.hunt-search-advanced > div {grid-template-columns:1fr;}
 .hunt-freshness-filters {align-items:start;}
 .hunt-resume-panel {grid-template-columns:auto minmax(0,1fr);}
 .hunt-resume-actions {grid-column:2;}
 .hunt-job-card {grid-template-columns:auto minmax(0,1fr);gap:10px;padding:14px;}
 .hunt-job-actions {grid-column:1/-1;display:flex;flex-wrap:wrap;}
 .hunt-job-actions .btn {flex:1 1 auto;}
 .hunt-search-state {flex-wrap:wrap;}
}
@media (prefers-reduced-motion: reduce) {
 html[data-motion="on"] .hunt-hero-art span,.hunt-spinner {animation:none;}
}
