:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f0f2f5;--border: #e2e5ea;--text: #1b1f24;--muted: #6b7280;--accent: #2f6df6;--accent-ink: #ffffff;--warn: #c2410c;--danger: #dc2626;--ok: #15803d;--radius: 10px;--shadow: 0 1px 2px rgba(16, 24, 40, .06), 0 1px 3px rgba(16, 24, 40, .1)}@media(prefers-color-scheme:dark){:root{--bg: #0e1116;--surface: #171b22;--surface-2: #1f242c;--border: #2a2f38;--text: #e6e8eb;--muted: #97a0ad;--accent: #4c84ff;--warn: #fb923c;--danger: #f87171;--ok: #4ade80;--shadow: none}}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.45}button{font:inherit;cursor:pointer}input,select{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px}input:focus,select:focus{outline:2px solid var(--accent);outline-offset:-1px}a{color:var(--accent)}.splash,.gate{display:grid;place-items:center;height:100%;color:var(--muted)}.gate-card{display:flex;flex-direction:column;gap:12px;width:min(360px,90vw);padding:28px;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow)}.gate-card h1{margin:0;font-size:22px}.app{max-width:880px;margin:0 auto;padding:0 16px 64px}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:16px;padding:14px 0;margin-bottom:8px;background:var(--bg);border-bottom:1px solid var(--border)}.brand{font-weight:700;font-size:16px}.tabs{display:flex;gap:4px;margin-left:auto}.tab{border:1px solid transparent;background:transparent;color:var(--muted);padding:6px 12px;border-radius:8px}.tab.active{background:var(--surface);color:var(--text);border-color:var(--border);box-shadow:var(--shadow)}button.primary{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent);border-radius:8px;padding:7px 12px}.actions button,.gate-card button{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:8px;padding:7px 12px}.actions button.primary,.gate-card button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}button.warn{color:var(--warn)}button.ghost{background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--muted);padding:6px 10px}button:disabled{opacity:.55;cursor:default}.link{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline}.link.warn{color:var(--warn)}.bar{display:flex;align-items:center;justify-content:space-between;margin:8px 0 14px}.count{color:var(--muted);font-weight:600}.cards{display:flex;flex-direction:column;gap:12px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.card-head{display:flex;align-items:baseline;gap:10px}.subject{font-weight:650;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.when{color:var(--muted);font-size:12px;white-space:nowrap}.badge{font-size:11px;text-transform:uppercase;letter-spacing:.03em;padding:2px 7px;border-radius:999px;border:1px solid var(--border);color:var(--muted);white-space:nowrap}.badge.dir-inbound{color:var(--ok)}.badge.dir-outbound{color:var(--accent)}.badge.dir-event{color:var(--warn)}.meta{display:flex;flex-wrap:wrap;gap:4px 16px;margin:8px 0;color:var(--text);font-size:13px}.meta strong{color:var(--muted);font-weight:600;margin-right:4px}.snippet{margin:8px 0;color:var(--muted);border-left:3px solid var(--border);padding-left:10px}.attachments{font-size:12px;color:var(--muted);margin:4px 0}.candidates{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.candidate{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;padding:5px 12px;font-weight:600}.candidate:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.search{margin-top:10px;display:flex;flex-direction:column;gap:4px}.search-row{display:flex;gap:8px}.search-row input{flex:1}.hit{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:1px;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px}.hit:hover:not(:disabled){border-color:var(--accent)}.hit-name{font-weight:600}.hit-meta{font-size:12px;color:var(--muted)}.url-hit{color:var(--accent);font-weight:600}.filters{display:flex;gap:8px;margin-bottom:12px}.filters input{flex:1}.rows{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.row{display:grid;grid-template-columns:150px 180px 1fr 200px 56px;gap:12px;align-items:center;padding:10px 14px;border-top:1px solid var(--border);font-size:13px}.row:first-child{border-top:none}.row.head{color:var(--muted);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.03em;background:var(--surface-2)}.row .from,.row .subj{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row .when{font-variant-numeric:tabular-nums}.company-link{font-weight:600;text-decoration:none}.company-link:hover{text-decoration:underline}.skip-reason{color:var(--muted)}.row-action{text-align:right}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0d1280;display:grid;place-items:center;padding:20px;z-index:20}.modal{background:var(--surface);border:1px solid var(--border);border-radius:12px;width:min(720px,100%);max-height:85vh;overflow:auto;padding:18px 20px;box-shadow:0 20px 60px #0000004d}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.modal-meta{display:flex;flex-direction:column;gap:2px;font-size:13px;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:12px}.modal-meta strong{color:var(--muted);font-weight:600;margin-right:6px}.modal-body{white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.5;margin:0}.muted{color:var(--muted)}.small{font-size:12px}.pad{padding:16px}.error{background:color-mix(in srgb,var(--danger) 12%,transparent);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 35%,transparent);border-radius:8px;padding:8px 10px;margin:8px 0;font-size:13px}@media(max-width:640px){.row{grid-template-columns:1fr;gap:2px}.row.head{display:none}}
