:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f1f3f6;--border: #e3e6eb;--text: #16181d;--text-2: #5b6270;--accent: #1f5fd6;--accent-ink: #ffffff;--accent-soft: #e8f0ff;--good: #137a4b;--good-soft: #e4f5ec;--warn: #9a5b00;--warn-soft: #fff3dc;--bad: #b42318;--bad-soft: #fde8e6;--info-soft: #eef1f5;--radius: 10px;--shadow: 0 1px 2px rgba(16, 24, 40, .05);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #0f1115;--surface: #171a20;--surface-2: #1e222a;--border: #2a2f39;--text: #e8eaee;--text-2: #9aa2b1;--accent: #6b9bff;--accent-ink: #0b1020;--accent-soft: #1c2742;--good: #5fd39b;--good-soft: #15291f;--warn: #f0b552;--warn-soft: #2d2412;--bad: #ff7b6e;--bad-soft: #321a18;--info-soft: #20252e;--shadow: none}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Inter,Roboto,Helvetica,Arial,sans-serif}a{color:var(--accent)}code{font:12px ui-monospace,SFMono-Regular,Menlo,monospace;background:var(--surface-2);padding:1px 5px;border-radius:4px}.muted{color:var(--text-2)}.small{font-size:12px}.app{max-width:1320px;margin:0 auto;padding:0 20px 40px}.topbar{display:flex;align-items:center;gap:24px;padding:16px 0;border-bottom:1px solid var(--border);flex-wrap:wrap}.brand{display:flex;gap:10px;align-items:center}.logo{color:var(--accent);font-size:22px}.brand-name{font-weight:650;font-size:16px}.brand-sub{color:var(--text-2);font-size:12px}.tabs{display:flex;gap:4px}.tabs a{padding:7px 12px;border-radius:8px;text-decoration:none;color:var(--text-2);font-weight:500}.tabs a.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow);border:1px solid var(--border)}.run-box{margin-left:auto;display:flex;align-items:center;gap:12px}.run-status{color:var(--text-2);font-size:13px}.pulse{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-right:6px;animation:pulse 1.2s infinite}@keyframes pulse{50%{opacity:.25}}.btn{border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px 14px;border-radius:8px;font:inherit;font-weight:550;cursor:pointer;text-decoration:none;display:inline-block}.btn.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn:disabled{opacity:.6;cursor:default}.btn-link{background:none;border:0;color:var(--accent);cursor:pointer;font:inherit;padding:0}.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:16px 0}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 16px;box-shadow:var(--shadow);display:flex;flex-direction:column}.kpi-num{font-size:22px;font-weight:650;font-variant-numeric:tabular-nums}.kpi-label{color:var(--text-2);font-size:12px}.kpi-low .kpi-num{color:var(--warn)}.banner{padding:10px 14px;border-radius:8px;margin:12px 0;display:flex;justify-content:space-between;gap:12px}.banner.error{background:var(--bad-soft);color:var(--bad)}.banner.info{background:var(--accent-soft)}.jobs-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.filters{position:sticky;top:12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow);max-height:calc(100vh - 24px);overflow:auto}.field{margin-bottom:16px;display:flex;flex-direction:column;gap:6px}.field>label:first-child,.label{font-size:12px;font-weight:600;color:var(--text-2);text-transform:uppercase;letter-spacing:.03em}input[type=search],select{width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit}.check{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--text);text-transform:none;letter-spacing:0;font-weight:400}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:4px 10px;font:inherit;font-size:12.5px;cursor:pointer;display:inline-flex;gap:6px;align-items:center}.chip.on{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.chip-count{font-size:11px;color:var(--text-2);font-variant-numeric:tabular-nums}.results-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.count{font-size:15px}.sort{display:flex;gap:8px;align-items:center;color:var(--text-2);font-size:13px}.sort select{width:auto}.job-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.job-row{width:100%;text-align:left;display:flex;gap:16px;justify-content:space-between;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;cursor:pointer;font:inherit;color:inherit;box-shadow:var(--shadow)}.job-row:hover,.job-row.selected{border-color:var(--accent)}.job-title{font-weight:620;font-size:15px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.job-company{margin-top:2px}.job-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center;color:var(--text-2);font-size:12.5px}.job-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;white-space:nowrap;color:var(--text-2);font-size:12.5px}.pill{background:var(--info-soft);border-radius:6px;padding:2px 8px;color:var(--text)}.pill.money,.pill.good{background:var(--good-soft);color:var(--good)}.pill.warn{background:var(--warn-soft);color:var(--warn)}.pill.info{background:var(--info-soft);color:var(--text-2)}.badge{font-size:11px;font-weight:650;border-radius:5px;padding:1px 6px;text-transform:uppercase;letter-spacing:.04em}.badge.new{background:var(--accent);color:var(--accent-ink)}.badge.updated{background:var(--warn-soft);color:var(--warn)}.badge.closed{background:var(--bad-soft);color:var(--bad)}.tag{margin-left:6px;font-size:11px;border:1px solid var(--border);border-radius:5px;padding:0 5px;color:var(--text-2)}.empty{text-align:center;padding:56px 20px;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius)}.empty h2{margin:12px 0 6px;font-size:18px}.empty p{color:var(--text-2);max-width:460px;margin:0 auto}.spinner{width:28px;height:28px;margin:0 auto;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.pager{display:flex;justify-content:center;gap:16px;align-items:center;margin-top:16px}.pager button{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:6px 12px;cursor:pointer;font:inherit}.pager button:disabled{opacity:.5;cursor:default}.drawer-backdrop{position:fixed;inset:0;background:#0a0e1659;display:flex;justify-content:flex-end;z-index:10}.drawer{width:min(720px,100%);height:100%;overflow:auto;background:var(--surface);padding:24px 28px 40px;position:relative;box-shadow:-8px 0 24px #0000001f}.drawer h2{margin:0 32px 4px 0;font-size:20px}.drawer h3{margin:22px 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2)}.drawer-company{color:var(--text-2)}.drawer-close{position:absolute;top:14px;right:16px;border:0;background:none;font-size:26px;color:var(--text-2);cursor:pointer}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 20px;margin:18px 0 12px}.facts div{display:flex;flex-direction:column}.facts dt{font-size:11.5px;color:var(--text-2)}.facts dd{margin:0}.apply{margin-top:16px}.description{white-space:pre-wrap;line-height:1.55}.sources{padding-left:18px}.sources li{margin-bottom:4px}.runs-page{display:flex;flex-direction:column;gap:20px;margin-top:4px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 18px;box-shadow:var(--shadow)}.card h2{margin:0 0 10px;font-size:16px}.card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:7px 10px;border-bottom:1px solid var(--border);vertical-align:top}th{color:var(--text-2);font-weight:600;font-size:12px}.num{text-align:right;font-variant-numeric:tabular-nums}.status-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px;background:var(--text-2)}.status-dot.success,.status-dot.working{background:var(--good)}.status-dot.running{background:var(--accent)}.status-dot.failed,.status-dot.error{background:var(--bad)}.status-dot.not_found,.status-dot.interrupted{background:var(--warn)}.log{margin-top:14px;background:var(--surface-2);border-radius:8px;padding:12px 14px}.log-head{display:flex;justify-content:space-between;margin-bottom:8px}.log ul{list-style:none;padding:0;margin:10px 0 0;max-height:320px;overflow:auto;font-size:12.5px}.log li{padding:3px 0}.lvl-warning{color:var(--warn)}.lvl-error{color:var(--bad)}.provider-stats{display:flex;flex-wrap:wrap;gap:10px}.pstat{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:12.5px}.foot{margin-top:28px;text-align:center}.tab-badge{margin-left:6px;background:var(--accent);color:var(--accent-ink);border-radius:999px;font-size:11px;padding:0 6px}.job-li{position:relative}.row-action{position:absolute;right:16px;bottom:12px;z-index:1;display:flex;gap:6px;align-items:center}.job-row{padding-bottom:18px}.queue-btn{border:1px solid var(--accent);color:var(--accent);background:var(--surface);border-radius:6px;padding:2px 8px;font:inherit;font-size:12px;cursor:pointer}.queue-btn:hover{background:var(--accent-soft)}.app-pill{font-size:12px;border-radius:6px;padding:2px 8px;background:var(--info-soft);color:var(--text-2)}.app-pill.queued{background:var(--accent-soft);color:var(--accent)}.app-pill.ready_to_submit{background:var(--warn-soft);color:var(--warn)}.app-pill.applied,.app-pill.interviewing,.app-pill.offer{background:var(--good-soft);color:var(--good)}.drawer-actions{display:flex;gap:10px;align-items:center;margin-top:16px;flex-wrap:wrap}.how ol{margin:0 0 8px;padding-left:20px}.how li{margin-bottom:4px}.row-ready td{background:var(--warn-soft)}.fill-notes{margin-top:4px;color:var(--text-2)}.notes-input,td input[type=date],td select{padding:5px 8px;border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);font:inherit;font-size:12.5px}td select{width:auto}.notes-input{width:100%;min-width:160px}.nowrap{white-space:nowrap;display:flex;gap:8px;align-items:center}.small-btn{padding:4px 10px;font-size:12px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 16px}.form-field{display:flex;flex-direction:column;gap:4px;font-size:12.5px;color:var(--text-2)}.form-field.wide{grid-column:span 2}.form-field input,.form-field textarea{padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:14px}.req{color:var(--bad);font-size:11px}.card-warn{border-color:var(--warn)}.checklist{margin:0;padding-left:0;list-style:none}.checklist li{padding:3px 0 3px 24px;position:relative}.checklist li:before{position:absolute;left:0}.checklist li.ok:before{content:"\2713";color:var(--good)}.checklist li.todo:before{content:"\25cb";color:var(--warn)}.save-bar{position:sticky;bottom:0;background:var(--bg);padding:12px 0;display:flex;gap:12px;align-items:center;border-top:1px solid var(--border)}.resume-panel{margin-top:22px;border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px;background:var(--surface-2)}.resume-panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.resume-panel-head h3{margin:0!important}.resume-report{margin-top:12px}.resume-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.match{display:flex;flex-direction:column}.match-num{font-size:24px;font-weight:650}.resume-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.req-group{display:flex;flex-wrap:wrap;gap:5px;align-items:center;margin:6px 0}.req-label{font-size:11.5px;color:var(--text-2);min-width:150px}.req-chip{font-size:12px;border-radius:6px;padding:1px 7px}.req-chip.bullet{background:var(--good-soft);color:var(--good)}.req-chip.skills_only{background:var(--accent-soft);color:var(--accent)}.req-chip.related{background:var(--info-soft);color:var(--text)}.req-chip.missing{background:var(--bad-soft);color:var(--bad)}.notes{margin:8px 0;padding-left:18px;font-size:13px}.changes{list-style:none;padding:0;margin:8px 0;font-size:12.5px}.changes li{padding:8px 0;border-bottom:1px solid var(--border)}.diff{display:flex;flex-direction:column;gap:2px;margin-top:4px}.diff .before{color:var(--bad);text-decoration:line-through;opacity:.8}.diff .after{color:var(--good)}.banner ul{margin:6px 0 0;padding-left:18px}@media(max-width:900px){.form-grid{grid-template-columns:1fr}.form-field.wide{grid-column:auto}.jobs-layout{grid-template-columns:1fr}.filters{position:static;max-height:none}.kpis{grid-template-columns:repeat(2,1fr)}.run-box{margin-left:0}}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login{width:min(380px,100%);display:flex;flex-direction:column;gap:14px}.login h1{margin:0;font-size:20px}
