:root { --ats-primary:#0d3b66; --ats-accent:#f4a261; }
body { font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; }
.ats-sidebar { width: 240px; min-height: 100vh; background: var(--ats-primary); position: sticky; top: 0; }
.ats-sidebar .nav-link { color: #cfe0f0; border-radius: 8px; padding: .5rem .75rem; margin-bottom: 2px; }
.ats-sidebar .nav-link:hover { background: rgba(255,255,255,.08); color: #fff; }
.ats-sidebar .nav-link.active { background: rgba(255,255,255,.16); color: #fff; font-weight: 600; }
@media (max-width: 768px){ .ats-sidebar{ width: 62px; } .ats-sidebar .fs-5 small, .ats-sidebar .nav-link span+*{ display:none } }
.stat-card { border:0; border-radius: 14px; box-shadow: 0 2px 10px rgba(0,0,0,.06); }
.stat-card .num { font-size: 2rem; font-weight: 700; }
.hero { background: linear-gradient(120deg,#0d3b66,#1d6fa5); color:#fff; border-radius:18px; }
.job-card { transition: transform .1s ease, box-shadow .1s ease; }
.job-card:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(0,0,0,.10); }
.kanban { display:flex; gap:12px; overflow-x:auto; padding-bottom:10px; }
.kanban-col { min-width:230px; background:#f1f4f8; border-radius:12px; padding:8px; }
.kanban-col h6 { font-size:.8rem; text-transform:uppercase; letter-spacing:.03em; color:#456; }
.kanban-card { background:#fff; border-radius:10px; padding:8px 10px; margin-bottom:8px; box-shadow:0 1px 4px rgba(0,0,0,.08); cursor:grab; }
.kanban-card.drag { opacity:.5; }
.score-pill { font-variant-numeric: tabular-nums; }
.timeline { list-style:none; padding-left:0; }
.timeline li { border-left:2px solid #dde; padding:0 0 14px 16px; position:relative; }
.timeline li::before { content:''; width:10px; height:10px; background:var(--ats-primary); border-radius:50%; position:absolute; left:-6px; top:3px; }
