:root{--bg:#07080d;--panel:rgba(12,16,24,0.85);--line:rgba(0,245,212,0.18);--line-strong:rgba(0,245,212,0.45);--text:#e8eefc;--muted:#8b97b3;--cyan:#00f5d4;--gold:#f5c518;--magenta:#ff2d95;--danger:#ff2d55;--ok:#3dffb0}*{box-sizing:border-box}body,html{margin:0;padding:0;background:radial-gradient(1200px 500px at 10% -10%,rgba(124,92,255,.16),transparent 55%),radial-gradient(900px 420px at 110% 10%,rgba(255,45,149,.12),transparent 50%),linear-gradient(180deg,#08090f,#07080d);background-attachment:fixed;color:var(--text);font-family:Segoe UI,system-ui,-apple-system,sans-serif;min-height:100vh}a{color:var(--cyan)}.topbar{display:flex;align-items:center;gap:14px;padding:16px 24px;border-bottom:1px solid var(--line);background:rgba(7,8,13,.9);position:-webkit-sticky;position:sticky;top:0;z-index:5}.brand{display:flex;flex-direction:column;line-height:1.2}.brand-name{font-size:19px;font-weight:700;letter-spacing:.16em}.brand-sub{font-size:13px;letter-spacing:.12em;color:var(--cyan);text-transform:uppercase}.shell{max-width:1180px;margin:0 auto;padding:26px 24px 60px}.page-title{font-size:24px;letter-spacing:.06em;margin:0 0 6px}.page-sub{color:var(--muted);margin:0 0 22px;font-size:15px}.notice{padding:16px 18px;border:1px solid var(--line);background:var(--panel);line-height:1.55}.notice.bad{border-color:rgba(255,45,85,.5);background:rgba(255,45,85,.08)}.notice code{font-family:Cascadia Code,Consolas,monospace;color:var(--cyan);font-size:13px}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));grid-gap:16px;gap:16px}.card{display:flex;flex-direction:column;gap:10px;padding:18px;border:1px solid var(--line);background:var(--panel);transition:border-color .16s ease,transform .16s ease}.card:hover{border-color:var(--line-strong);transform:translateY(-2px)}.card-role{font-size:18px;font-weight:600;margin:0}.card-company{color:var(--cyan);font-size:15px}.card-meta{color:var(--muted);font-size:14px;line-height:1.5}.card-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto;padding-top:6px}.btn{display:inline-block;padding:8px 13px;border:1px solid var(--line-strong);background:rgba(0,245,212,.08);color:var(--cyan);text-decoration:none;font-size:14px;letter-spacing:.04em}.btn:hover{background:rgba(0,245,212,.18);color:#fff}.btn.ghost{border-color:rgba(139,151,179,.4);background:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--text);background:rgba(139,151,179,.12)}.empty{padding:40px;text-align:center;border:1px dashed var(--line);color:var(--muted)}.detail-head{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start;margin-bottom:18px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);grid-gap:18px;gap:18px;align-items:start}@media (max-width:900px){.detail-grid{grid-template-columns:1fr}}.viewer{width:100%;height:78vh;background:#0a0d14}.side,.viewer{border:1px solid var(--line)}.side{padding:18px;background:var(--panel)}.side h2{font-size:15px;letter-spacing:.12em;text-transform:uppercase;color:var(--cyan);margin:0 0 10px}.side dl{margin:0 0 16px;display:grid;grid-template-columns:auto 1fr;grid-gap:5px 12px;gap:5px 12px;font-size:14px}.side dt{color:var(--muted)}.side dd{margin:0;overflow-wrap:anywhere}.job-details{white-space:pre-wrap;font-size:13.5px;line-height:1.55;color:var(--muted);max-height:420px;overflow:auto;padding:12px;border:1px solid var(--line);background:#0a0d14}.login-wrap{display:grid;place-items:center;min-height:60vh}.login-card{width:min(420px,100%);display:flex;flex-direction:column;padding:26px;border:1px solid var(--line);background:var(--panel)}.login-card label{margin:14px 0 6px;font-size:14px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.login-card input{background:#0b0f18;border:1px solid rgba(0,245,212,.2);color:var(--text);padding:11px 13px;font-size:16px;outline:none}.login-card .btn{margin-top:18px;text-align:center;cursor:pointer;font-size:15px}.btn.primary{border:0;background:linear-gradient(90deg,#00f5d4,#7c5cff);color:#071018;padding:12px 14px}.login-note{margin-top:14px;font-size:14px}