:root{
  --bg:#0a0e13; --panel:#111721; --border:#1e2936; --text:#e6edf3; --muted:#8b98a5;
  --accent:#4da3ff; --green:#3fb950; --teal:#2dd4bf; --amber:#d4a72c;
  --red:#f85149; --gray:#8b98a5; --blue:#58a6ff; --orange:#db6d28;
}
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,system-ui,sans-serif;background:var(--bg);color:var(--text);line-height:1.5}
header{max-width:1100px;margin:0 auto;padding:26px 18px 6px}
h1{font-size:22px;font-weight:700}
.subtitle{color:var(--muted);font-size:13px;margin-top:3px}
#stats{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.chip{background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:4px 12px;font-size:12px;color:var(--muted);cursor:pointer;user-select:none}
.chip:hover{border-color:#33465c}
.chip.active{border-color:var(--accent);color:var(--text)}
.chip b{color:var(--text);margin-right:4px}
#controls{display:flex;flex-wrap:wrap;gap:8px;max-width:1100px;margin:14px auto 0;padding:0 18px}
#controls input[type=search]{flex:1;min-width:200px}
select,input,button,textarea{font:inherit;font-size:13px;background:var(--panel);border:1px solid var(--border);color:var(--text);border-radius:8px;padding:8px 10px;outline:none}
select:focus,input:focus,textarea:focus{border-color:var(--accent)}
button{cursor:pointer}
button:hover{border-color:#33465c}
#count{color:var(--muted);font-size:12px;align-self:center;margin-left:auto}
main{max-width:1100px;margin:16px auto 0;padding:0 18px 70px;display:flex;flex-direction:column;gap:12px}
.card{background:var(--panel);border:1px solid var(--border);border-radius:12px}
.card-top{padding:14px 16px;cursor:pointer}
.card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.title-row{display:flex;flex-direction:column;gap:1px;min-width:0}
.company{font-weight:700;font-size:15px}
.role{color:var(--muted);font-size:13px}
.badges{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 6px}
.badge{font-size:10.5px;font-weight:600;letter-spacing:.3px;padding:3px 8px;border-radius:999px;text-transform:uppercase;white-space:nowrap}
.pr-vh{background:rgba(63,185,80,.16);color:var(--green)}
.pr-h{background:rgba(45,212,191,.14);color:var(--teal)}
.pr-m{background:rgba(212,167,44,.14);color:var(--amber)}
.pr-l{background:rgba(139,152,165,.14);color:var(--gray)}
.sp-conf{background:rgba(63,185,80,.14);color:var(--green)}
.sp-pos{background:rgba(88,166,255,.14);color:var(--blue)}
.sp-unk{background:rgba(139,152,165,.12);color:var(--gray)}
.sp-unl{background:rgba(219,109,40,.14);color:var(--orange)}
.sp-no{background:rgba(248,81,73,.14);color:var(--red)}
.st-na{background:rgba(139,152,165,.12);color:var(--gray)}
.st-applied{background:rgba(63,185,80,.16);color:var(--green)}
.st-int{background:rgba(88,166,255,.16);color:var(--blue)}
.st-rej{background:rgba(248,81,73,.14);color:var(--red)}
.st-closed{background:rgba(139,152,165,.08);color:var(--gray);text-decoration:line-through}
.meta{color:var(--muted);font-size:12.5px}
.tech{color:var(--accent);font-size:12px;margin-top:6px;opacity:.9}
.cycle{white-space:nowrap;font-size:12px;border-color:#2a3b52}
.card-body{border-top:1px solid var(--border);padding:14px 16px;display:flex;flex-direction:column;gap:14px}
.desc{font-size:13.5px;color:#c9d4e0}
.sec h4{font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);margin-bottom:4px}
.sec p{font-size:13px;color:#c9d4e0;word-break:break-word}
.sec.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}
.controls{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.controls textarea{flex:1;min-width:220px;resize:vertical}
.updated{color:var(--muted);font-size:12px}
.links a{color:var(--accent);text-decoration:none;font-size:13px;margin-right:14px}
.links a:hover{text-decoration:underline}
#empty{max-width:1100px;margin:30px auto;padding:0 18px;color:var(--muted)}
footer{max-width:1100px;margin:0 auto;padding:0 18px 40px;color:var(--muted);font-size:12px}
footer code{color:var(--accent)}
@media(max-width:640px){
  .card-head{flex-direction:column}
  .cycle{align-self:flex-start}
  #controls select{flex:1 1 45%}
}