:root{--bg: #f6f6f3;--panel: #fffffe;--ink: #14140f;--ink60: #14140f99;--ink40: #14140f66;--acid: #F2FF8E;--blue: #0741FF;--neg: #FF4D4D;--line: #14140f1a;--ok: #1a9e5f;--mono: ui-monospace, "Geist Mono", "SF Mono", Menlo, monospace;--ui: "Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--display: "Oxanium", var(--ui)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--ui);font-size:14px}a{color:var(--blue);text-decoration:none}button{font-family:var(--ui);cursor:pointer}::selection{background:var(--blue);color:#fff}input,select,textarea{font-family:var(--ui);font-size:13px;padding:7px 9px;border:1px solid var(--line);background:var(--panel);color:var(--ink);border-radius:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:0}.app{display:grid;grid-template-columns:210px 1fr;min-height:100vh}.sidebar{background:var(--ink);color:#f6f6f3;padding:18px 12px;display:flex;flex-direction:column;gap:4px}.brand{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:.5px;margin:4px 6px 18px}.brand b{color:var(--acid)}.nav{display:flex;flex-direction:column;gap:2px}.nav button{background:transparent;border:0;color:#f6f6f3cc;text-align:left;padding:8px 10px;font-size:13px;border-left:2px solid transparent}.nav button:hover{color:#fff;background:#ffffff10}.nav button.active{color:var(--ink);background:var(--acid);font-weight:600}.sidebar .foot{margin-top:auto;font-size:11px;color:#f6f6f366;padding:8px 6px}.main{padding:22px 26px;overflow:auto;max-height:100vh}.h1{font-family:var(--display);font-size:22px;font-weight:700;margin:0 0 2px}.sub{color:var(--ink60);font-size:12px;margin-bottom:18px}.card{background:var(--panel);border:1px solid var(--line);padding:16px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,0 100%)}.grid{display:grid;gap:12px}.stat{display:flex;flex-direction:column;gap:2px}.stat .n{font-family:var(--display);font-size:26px;font-weight:700}.stat .l{font-size:11px;color:var(--ink60);text-transform:uppercase;letter-spacing:.5px}table{width:100%;border-collapse:collapse;font-size:13px}th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:var(--ink60);padding:8px 10px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg)}td{padding:8px 10px;border-bottom:1px solid var(--line)}tr:hover td{background:#14140f06;cursor:default}.mono{font-family:var(--mono);font-size:12px}.tag{display:inline-block;padding:1px 7px;font-size:11px;border:1px solid var(--line);border-radius:999px}.tag.warm-replied,.tag.warm-interested{background:var(--acid);border-color:transparent}.tag.warm-pitched{background:#0741ff14;color:var(--blue);border-color:transparent}.tag.stage-redeemed,.tag.ok{background:var(--ok);color:#fff;border-color:transparent}.tag.bad{background:var(--neg);color:#fff;border-color:transparent}.btn{background:var(--ink);color:#fff;border:0;padding:8px 14px;font-size:13px;font-weight:600}.btn:hover{background:#000}.btn.primary{background:var(--acid);color:var(--ink)}.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn.blue{background:var(--blue);color:#fff}.btn:disabled{opacity:.4;cursor:not-allowed}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.spacer{flex:1}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px;align-items:center}.pager{display:flex;gap:8px;align-items:center;margin-top:12px;font-size:12px;color:var(--ink60)}.drawer-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#14140f55;display:flex;justify-content:flex-end;z-index:50}.drawer{width:560px;max-width:92vw;background:var(--bg);height:100%;overflow:auto;padding:22px;border-left:1px solid var(--line)}.kv{display:grid;grid-template-columns:130px 1fr;gap:6px 12px;font-size:13px;margin:10px 0}.kv .k{color:var(--ink60)}.timeline{font-size:12px}.timeline li{padding:6px 0;border-bottom:1px solid var(--line);list-style:none}.timeline ul{padding:0;margin:0}textarea{width:100%;min-height:90px}.login{display:grid;place-items:center;height:100vh}.login .card{width:340px}.banner{font-size:12px;padding:8px 12px;background:var(--acid);margin-bottom:14px;font-weight:600}.muted{color:var(--ink40)}.err{color:var(--neg);font-size:12px}.jobsdock{position:fixed;right:16px;bottom:16px;z-index:60;font-size:12px}.jobsdock .badge{background:var(--ink);color:#fff;padding:8px 14px;font-weight:700;cursor:pointer;display:inline-flex;gap:8px;align-items:center;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%)}.jobsdock .badge .dot{width:8px;height:8px;border-radius:999px;background:var(--acid)}.jobsdock .badge.idle .dot{background:var(--ink40)}.jobsdock .panel{width:420px;max-width:92vw;max-height:70vh;overflow:auto;background:var(--panel);border:1px solid var(--line);margin-bottom:8px;padding:12px}.jobrow{border-bottom:1px solid var(--line);padding:8px 0}.jobrow:last-child{border-bottom:0}.jbar{height:6px;background:var(--line);margin:6px 0;overflow:hidden}.jbar>i{display:block;height:100%;background:var(--blue)}.jbar>i.failed{background:var(--neg)}.jobitems{font-size:11px;margin:6px 0 2px;max-height:220px;overflow:auto}.jobitems li{padding:3px 0;border-bottom:1px solid var(--line);list-style:none}.jobitems ul{padding:0;margin:0}.jbar{position:relative}.jbar>span.ind{position:absolute;top:0;left:0;height:100%;width:35%;background:linear-gradient(90deg,transparent,var(--blue),transparent);animation:jslide 1.1s linear infinite}@keyframes jslide{0%{transform:translate(-120%)}to{transform:translate(385%)}}.jobrow .inflight{font-size:11px;color:var(--blue);margin-top:2px}.jobrow .inflight .pulse{animation:jpulse 1s ease-in-out infinite}@keyframes jpulse{0%,to{opacity:.35}50%{opacity:1}}
