:root{--bg-deep:#070512;--bg-mid:#12102a;--neon-purple:#c850ff;--neon-purple-dim:#9333ea;--neon-cyan:#38bdf8;--neon-yellow:#ffb347;--text:#f4f4f8;--text-muted:#f4f4f89e;--surface:#120e24d1;--surface-hover:#1c1630eb;--border:#a855f738;--border-strong:#c850ff73;--glow-purple:0 0 24px #c850ff59;--glow-cyan:0 0 20px #38bdf840;color:var(--text);background-color:var(--bg-deep);background-image:radial-gradient(circle at 15% 10%, #9333ea38, transparent 42%), radial-gradient(circle at 85% 20%, #38bdf81f, transparent 38%), radial-gradient(circle at 50% 100%, #c850ff14, transparent 50%), linear-gradient(165deg, var(--bg-deep) 0%, var(--bg-mid) 55%, #0a0818 100%);min-height:100%;font-family:Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,Helvetica Neue,sans-serif;line-height:1.5}*{box-sizing:border-box}body{min-height:100vh;margin:0}a{color:inherit;text-decoration:none}.shell{min-height:100vh}.topbar{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#070512bf;justify-content:space-between;align-items:center;padding:.85rem 1.5rem;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:.55rem;font-size:1.35rem;font-weight:700;display:flex}.brand-icon{object-fit:cover;border-radius:50%;width:32px;height:32px}.brand-accent{color:var(--neon-purple);text-shadow:0 0 18px #c850ff8c}.topbar nav{align-items:center;gap:1rem;display:flex}.topbar nav a{color:var(--text-muted);font-size:.95rem;transition:color .15s}.topbar nav a:hover,.topbar nav a.active{color:var(--neon-cyan)}.topbar nav a.active{font-weight:600}.page{width:min(960px,100% - 2rem);margin:1.5rem auto 3rem}.page.narrow{width:min(440px,100% - 2rem);margin-top:3rem}.login-page{margin-top:1.25rem}.login-screen{background:radial-gradient(circle at 15% 10%, #9333ea2e, transparent 42%), radial-gradient(circle at 85% 90%, #38bdf81a, transparent 38%), var(--bg-deep);justify-content:center;align-items:center;min-height:100vh;padding:1.5rem 1rem;display:flex}.login-card{background:linear-gradient(#0e0b1cfa 0%,#080612fa 100%);border:1px solid #c850ff38;border-radius:1.15rem;width:min(480px,100%);overflow:hidden;box-shadow:0 24px 64px #0000008c,inset 0 0 0 1px #ffffff0a,0 0 48px #9333ea1f}.login-card-art{aspect-ratio:16/9;background:#030208;position:relative;overflow:hidden}.login-card-art img{object-fit:cover;object-position:center 75%;width:100%;height:100%;display:block}.login-card-art-fade{pointer-events:none;background:linear-gradient(#0000 35%,#08061266 70%,#080612f2 100%);position:absolute;inset:0}.login-card-body{text-align:center;padding:1.35rem 1.5rem 1.45rem}.login-title{letter-spacing:-.03em;margin:0 0 .35rem;font-size:1.5rem;line-height:1.15}.login-lead{color:var(--text-muted);margin:0 0 1.15rem;font-size:.9rem;line-height:1.45}.btn-google{color:#1f2937;cursor:pointer;background:#fff;border:1px solid #00000014;border-radius:.55rem;justify-content:center;align-items:center;gap:.65rem;width:100%;padding:.72rem 1rem;font-size:.95rem;font-weight:600;transition:box-shadow .15s,transform .1s;display:flex}.btn-google:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 20px #ffffff26}.btn-google:active:not(:disabled){transform:translateY(0)}.btn-google:focus-visible{outline:2px solid var(--neon-cyan);outline-offset:2px}.btn-google:disabled{opacity:.7;cursor:wait}.btn-google-icon{flex-shrink:0;width:20px;height:20px}.login-error{color:#fca5a5;background:#b91c1c1f;border:1px solid #f8717140;border-radius:.45rem;margin:.75rem 0 0;padding:.65rem .75rem;font-size:.85rem;line-height:1.4}@media (width<=480px){.login-card-body{padding:1.15rem 1.2rem 1.3rem}.login-title{font-size:1.35rem}}.login-hero{object-fit:contain;border-radius:.75rem;width:100%;max-height:140px;margin-bottom:1.25rem}.stack{gap:.75rem;display:grid}h1{letter-spacing:-.02em;font-size:1.75rem;font-weight:700}.page-header{margin-bottom:1.25rem}.page-header h1{margin:0}.page-header p{margin:.35rem 0 0;font-size:.95rem}.empty-state,.loading-state{background:var(--surface);border:1px solid var(--border);color:var(--text-muted);border-radius:.75rem;margin:0;padding:1.25rem 1.35rem}.filters{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;flex-wrap:wrap;gap:.5rem;margin-bottom:1.25rem;padding:.75rem;display:flex}.filters input{flex:12rem}.filters button{flex:none}input,button{font:inherit;border:1px solid var(--border);border-radius:.5rem;padding:.65rem .85rem}input{background:var(--surface);color:var(--text);min-width:0}input::placeholder{color:var(--text-muted)}input:focus{border-color:var(--border-strong);box-shadow:var(--glow-purple);outline:none}button{background:linear-gradient(135deg, var(--neon-purple-dim), var(--neon-purple));color:#fff;cursor:pointer;border:1px solid #c850ff80;font-weight:600;transition:box-shadow .15s,transform .1s}button:hover:not(:disabled){box-shadow:var(--glow-purple)}button:active:not(:disabled){transform:translateY(1px)}button.secondary{color:var(--text);border-color:var(--border-strong);background:0 0}button.secondary:hover:not(:disabled){background:var(--surface);box-shadow:var(--glow-cyan)}button.linkish{color:var(--text-muted);box-shadow:none;background:0 0;border:none;padding:0;font-weight:500}button.linkish:hover{color:var(--neon-cyan);box-shadow:none}.job-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.job-list li a{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;gap:.15rem;padding:1rem 1.1rem;transition:border-color .15s,box-shadow .15s,background .15s;display:grid}.job-list li a:hover{background:var(--surface-hover);border-color:var(--border-strong);box-shadow:var(--glow-purple)}.job-list li a strong{color:var(--text)}.job-list li a .job-meta,.job-list li a span{color:var(--text-muted);font-size:.9rem}.job-chips{flex-wrap:wrap;gap:.35rem;margin:.45rem 0 0;padding:0;list-style:none;display:flex}.job-chips li{color:var(--neon-cyan);background:#38bdf81a;border:1px solid #38bdf847;border-radius:999px;padding:.18rem .5rem;font-size:.72rem;font-weight:600}.back-link{color:var(--text-muted);margin-bottom:1rem;font-size:.9rem;transition:color .15s;display:inline-block}.back-link:hover{color:var(--neon-cyan)}.job-detail{max-width:720px}.job-detail-card{background:var(--surface);border:1px solid var(--border);border-radius:.85rem;padding:1.5rem 1.6rem;box-shadow:0 12px 40px #00000040}.job-detail-header h1{letter-spacing:-.02em;margin:0;font-size:1.85rem;line-height:1.2}.job-detail-company{color:var(--text);margin:.65rem 0 0;font-size:1rem}.job-detail-location:before{content:"·";color:var(--text-muted);margin:0 .45rem}.job-detail-badges{flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.job-detail-badges li{letter-spacing:.02em;color:var(--neon-cyan);background:#38bdf81a;border:1px solid #38bdf847;border-radius:999px;padding:.28rem .65rem;font-size:.78rem;font-weight:600}.job-detail-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin-top:1.35rem;padding-top:1.35rem;display:flex}.btn-apply{align-items:center;gap:.5rem;padding:.72rem 1.15rem;font-size:.95rem;font-weight:600;display:inline-flex}.btn-external-icon{opacity:.9;width:1rem;height:1rem}.btn-report{color:var(--text-muted);box-shadow:none;cursor:pointer;background:0 0;border:none;padding:.5rem .25rem;font-size:.88rem;font-weight:500}.btn-report:hover:not(:disabled){color:var(--neon-cyan);box-shadow:none}.job-detail-body{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.5rem}.job-detail-body h2{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .85rem;font-size:.95rem;font-weight:600}.job-description{color:#f4f4f8e0;font-size:.95rem;line-height:1.65}.job-description h3{color:var(--text);margin:1.25rem 0 .5rem;font-size:1rem;font-weight:600}.job-description h3:first-child{margin-top:0}.job-description p{margin:.5rem 0}.job-description ul,.job-description ol{margin:.5rem 0;padding-left:1.25rem}.job-detail-fallback{margin:1.25rem 0 0;font-size:.9rem}.actions{gap:.75rem;margin-top:1.25rem;display:flex}.pagination{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.75rem 1rem;margin:.75rem 0 1rem;display:flex}.pagination-summary{white-space:nowrap;margin:0;font-size:.85rem}.pagination-controls{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}.pagination-pages{align-items:center;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.pagination-page,.pagination-nav{background:var(--surface);min-width:1.75rem;color:var(--text);border:1px solid var(--border);border-radius:.4rem;padding:.25rem .5rem;font-size:.8rem;line-height:1.2}.pagination-page.is-current{background:linear-gradient(135deg, var(--neon-purple-dim), var(--neon-purple));color:#fff;box-shadow:var(--glow-purple);border-color:#0000}.pagination-ellipsis{opacity:.55;padding:0 .15rem;font-size:.8rem}.pagination button:disabled{opacity:.35;cursor:not-allowed;box-shadow:none}.metrics{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;display:grid}.metrics div{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;padding:1rem}.metrics dt{color:var(--text-muted);font-size:.85rem}.metrics dd{color:var(--neon-purple);margin:.25rem 0 0;font-size:1.5rem;font-weight:700}.muted{color:var(--text-muted)}.error{color:#f87171}.admin-nav{border-bottom:1px solid var(--border);gap:1.15rem;margin-bottom:1.25rem;display:flex}.admin-nav a{color:var(--text-muted);padding:.35rem 0 .7rem;font-size:.95rem}.admin-nav a.active{color:var(--neon-purple);box-shadow:inset 0 -2px 0 var(--neon-purple);font-weight:600}.profile-card,.company-detail-card{margin-bottom:1.5rem}.profile-card{background:var(--surface);border:1px solid var(--border);border-radius:.85rem;padding:1.35rem 1.5rem}.profile-name{margin:0;font-size:1.25rem;font-weight:700}.role-badge{letter-spacing:.02em;color:var(--neon-cyan);background:#38bdf81a;border:1px solid #38bdf847;border-radius:999px;margin-top:.85rem;padding:.22rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.section-title{letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .85rem;font-size:.95rem;font-weight:600}.external-link{color:var(--neon-cyan)}.external-link:hover{text-decoration:underline}.report-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.report-card{background:var(--surface);border:1px solid var(--border);border-radius:.75rem;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.1rem 1.2rem;display:flex}.report-title{font-weight:700}.report-title:hover{color:var(--neon-cyan)}.report-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.login-card-body>button{width:100%;margin-top:1.15rem}.suggest-card{background:var(--surface);border:1px solid var(--border);border-radius:.85rem;margin-top:2rem;padding:1.35rem 1.5rem}.suggest-card h2{margin:0 0 .35rem;font-size:1.1rem}.suggest-form{gap:.5rem;margin:1rem 0 .75rem;display:grid}.suggest-form button{justify-self:start}.my-requests{gap:.65rem;margin:1rem 0 0;padding:0;list-style:none;display:grid}.my-requests li{flex-wrap:wrap;align-items:center;gap:.45rem .75rem;font-size:.9rem;display:flex}.crawl-section{margin-top:2rem}.crawl-card{align-items:flex-start}.status-badge{letter-spacing:.02em;white-space:nowrap;color:var(--neon-cyan);background:#38bdf81a;border:1px solid #38bdf847;border-radius:999px;padding:.22rem .6rem;font-size:.75rem;font-weight:600;display:inline-block}.status-failing,.status-failed{color:#fca5a5;background:#b91c1c1f;border-color:#f8717147}.status-partial,.status-paused{color:var(--neon-yellow);background:#ffb3471a;border-color:#ffb3474d}
