:root{--ink: #111c2e;--ink-2: #3c4a60;--ink-3: #6c7a90;--paper: #eef1f6;--card: #fff;--rule: #d8dfe9;--rule-2: #e8edf3;--cold: #7d8ea8;--warm: #c0691f;--done: #1c6b57;--cold-bg: #eaeef4;--warm-bg: #fbf0e4;--done-bg: #e5f0ec;--display: "Bricolage Grotesque", system-ui, sans-serif;--body: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--r: 10px;--shadow: 0 1px 2px rgba(17, 28, 46, .06), 0 8px 24px -12px rgba(17, 28, 46, .18)}*{box-sizing:border-box}html,body,#root{margin:0;padding:0}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit;cursor:pointer}:focus-visible{outline:2.5px solid var(--ink);outline-offset:2px;border-radius:3px}.gate{min-height:100vh;display:grid;place-items:center;padding:24px}.gate-card{width:100%;max-width:380px;background:var(--card);border:1px solid var(--rule);border-radius:var(--r);padding:32px;box-shadow:var(--shadow)}.mark{font-family:var(--display);font-weight:800;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0}.gate-card .mark{margin-bottom:24px}.gate h1{font-family:var(--display);font-weight:600;font-size:26px;letter-spacing:-.02em;margin:0 0 6px}.gate .sub{color:var(--ink-3);margin:0 0 24px;font-size:13px}label{display:block;font-size:12px;font-weight:600;color:var(--ink-2);margin:0 0 5px}input{width:100%;padding:10px 12px;border:1px solid var(--rule);border-radius:7px;font:inherit;background:#fbfcfe;margin-bottom:16px;color:var(--ink)}input:focus{outline:2px solid var(--ink);outline-offset:-1px;background:#fff}.btn{width:100%;padding:11px;border:0;border-radius:7px;background:var(--ink);color:#fff;font-weight:600}.btn:hover:not(:disabled){background:#1d2c45}.btn:disabled{opacity:.5;cursor:not-allowed}.msg{padding:10px 12px;border-radius:7px;font-size:13px;margin-bottom:16px;background:#fdeceb;color:#8f2c25;border:1px solid #f4cfcc}.top{background:var(--card);border-bottom:1px solid var(--rule);padding:14px 22px;display:flex;align-items:center;gap:18px;flex-wrap:wrap;position:sticky;top:0;z-index:20}.spacer{margin-left:auto}.who{font-size:12.5px;color:var(--ink-3);font-family:var(--mono)}.range{display:flex;gap:2px;background:var(--paper);padding:3px;border-radius:7px}.range button{border:0;background:none;padding:5px 11px;border-radius:5px;font-size:12.5px;color:var(--ink-3)}.range button[aria-pressed=true]{background:var(--card);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #111c2e14}.ghost{border:1px solid var(--rule);background:var(--card);padding:7px 13px;border-radius:7px;font-size:12.5px;font-weight:500}.ghost:hover{background:var(--paper)}.wrap{max-width:1240px;margin:0 auto;padding:22px}.funnel{display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;margin-bottom:20px}.stage{background:var(--card);border:1px solid var(--rule);border-radius:var(--r);padding:16px 18px 14px;text-align:left;display:flex;flex-direction:column;gap:10px;position:relative;transition:border-color .14s}.stage:hover{border-color:var(--ink-3)}.stage[aria-pressed=true]{border-color:var(--ink);box-shadow:var(--shadow)}.stage[aria-pressed=true]:after{content:"";position:absolute;left:18px;right:18px;bottom:-1px;height:3px;background:var(--ink);border-radius:3px 3px 0 0}.stage-n{font-family:var(--display);font-weight:800;font-size:40px;line-height:.9;letter-spacing:-.03em;font-variant-numeric:tabular-nums}.stage-label{font-size:12.5px;font-weight:600}.stage-hint{font-size:11.5px;color:var(--ink-3);line-height:1.35}.bar{height:5px;border-radius:3px;background:var(--rule-2);overflow:hidden}.bar i{display:block;height:100%;border-radius:3px;transition:width .5s cubic-bezier(.2,.7,.3,1)}.s-cold .stage-n{color:var(--cold)}.s-cold .bar i{background:var(--cold)}.s-warm .stage-n{color:var(--warm)}.s-warm .bar i{background:var(--warm)}.s-done .stage-n{color:var(--done)}.s-done .bar i{background:var(--done)}.drop{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0 12px;min-width:72px}.drop b{font-family:var(--mono);font-size:12.5px;color:var(--ink-2);font-variant-numeric:tabular-nums}.drop span{font-size:10px;color:var(--ink-3);letter-spacing:.05em;text-transform:uppercase;margin-top:2px}.drop svg{color:var(--rule);margin-bottom:4px}@media (max-width: 820px){.funnel{grid-template-columns:1fr;gap:8px}.drop{flex-direction:row;gap:8px;min-width:0;padding:2px 0}.drop svg{transform:rotate(90deg);margin:0}}.panel{background:var(--card);border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}.bar-row{display:flex;gap:12px;align-items:center;padding:13px 16px;border-bottom:1px solid var(--rule-2);flex-wrap:wrap}.search{position:relative;flex:1;min-width:190px}.search input{margin:0;padding-left:32px}.search svg{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--ink-3)}.count{font-size:12.5px;color:var(--ink-3);font-family:var(--mono)}.rows{max-height:calc(100vh - 400px);min-height:260px;overflow-y:auto}.row,.row-h{display:grid;grid-template-columns:1.4fr 1.1fr 1.5fr .8fr auto;gap:14px;align-items:center}.row{width:100%;text-align:left;background:none;border:0;border-bottom:1px solid var(--rule-2);padding:12px 16px}.row:hover{background:#f8fafc}.row-h{padding:9px 16px;border-bottom:1px solid var(--rule);background:#f8fafc;font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--ink-3);position:sticky;top:0;z-index:2}.nm{font-weight:600}.ph{font-family:var(--mono);font-size:12.5px;color:var(--ink-2)}.sv{font-size:12.5px;color:var(--ink-2)}.sv em{color:var(--ink-3);font-style:normal}.tm{font-family:var(--mono);font-size:11.5px;color:var(--ink-3);text-align:right;white-space:nowrap}.chev{color:var(--rule);flex-shrink:0}.tag{display:inline-block;padding:2px 7px;border-radius:4px;font-size:10.5px;font-weight:600;letter-spacing:.03em}.t-cold{background:var(--cold-bg);color:var(--cold)}.t-warm{background:var(--warm-bg);color:var(--warm)}.t-done{background:var(--done-bg);color:var(--done)}@media (max-width: 760px){.row,.row-h{grid-template-columns:1fr auto}.row-h span:nth-child(n+3),.row .sv,.row .chev{display:none}}.empty{padding:56px 24px;text-align:center;color:var(--ink-3)}.empty strong{display:block;font-family:var(--display);font-size:17px;color:var(--ink-2);font-weight:600;margin-bottom:5px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#111c2e52;z-index:40;opacity:0;pointer-events:none;transition:opacity .18s}.scrim.on{opacity:1;pointer-events:auto}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(520px,100%);z-index:50;background:var(--card);border-left:1px solid var(--rule);transform:translate(100%);transition:transform .24s cubic-bezier(.2,.7,.3,1);display:flex;flex-direction:column}.drawer.on{transform:none}.d-head{padding:16px 20px;border-bottom:1px solid var(--rule);display:flex;gap:12px;align-items:flex-start}.d-head h2{font-family:var(--display);font-size:19px;margin:0 0 3px;font-weight:600;letter-spacing:-.01em}.x{border:0;background:none;color:var(--ink-3);padding:4px;margin-left:auto;line-height:0}.x:hover{color:var(--ink)}.d-body{overflow-y:auto;flex:1}.d-sec{padding:16px 20px;border-bottom:1px solid var(--rule-2)}.d-sec h3{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin:0 0 10px}dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:5px 16px;font-size:13px}dt{color:var(--ink-3)}dd{margin:0;font-weight:500}.chat{display:flex;flex-direction:column;gap:7px;padding:16px 20px}.b{max-width:82%;padding:8px 11px;border-radius:11px;font-size:13px;white-space:pre-wrap;word-break:break-word}.b.in{align-self:flex-start;background:var(--paper);border-bottom-left-radius:3px}.b.out{align-self:flex-end;background:var(--done-bg);border-bottom-right-radius:3px}.b time{display:block;font-family:var(--mono);font-size:10px;color:var(--ink-3);margin-top:4px}@media (prefers-reduced-motion: reduce){*{transition:none!important;animation:none!important}}
