*{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f6f7f9;color:#1a1d21;line-height:1.5}.wrap{max-width:640px;margin:10vh auto 0;padding:0 1.5rem}h1{font-size:1.8rem;margin-bottom:.25rem}.tagline{color:#5b6470;margin-bottom:2rem}.card{background:#fff;border:1px solid #e3e6ea;border-radius:10px;padding:1.25rem 1.5rem;margin-bottom:1.5rem}.card h2{font-size:1.05rem;margin-bottom:.75rem}.card ul{list-style:none}.card li{padding:.25rem 0}.dot{display:inline-block;width:.65rem;height:.65rem;border-radius:50%;margin-right:.5rem}.dot.ok{background:#2eb872}.dot.fail{background:#e0475b}.muted{color:#8a93a0;font-size:.9rem}.error{color:#c22940;margin:.5rem 0}.nav{display:flex;align-items:center;gap:1.25rem;background:#fff;border-bottom:1px solid #e3e6ea;padding:.65rem 1.5rem}.nav a{color:#3c4652;text-decoration:none;padding:.25rem 0}.nav a.active{color:#0d5bd7;font-weight:600}.nav-badge{display:inline-block;min-width:18px;height:18px;padding:0 5px;margin-left:5px;border-radius:9px;background:#e0475b;color:#fff;font-size:.72rem;font-weight:700;line-height:18px;text-align:center;vertical-align:middle}.nav-brand{font-weight:700;margin-right:1rem}.nav-logout{margin-left:auto;background:none;border:none;color:#8a93a0;cursor:pointer;font-size:.9rem}.page{max-width:1200px;margin:0 auto;padding:1.5rem}.page-head{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.page-head h1{font-size:1.4rem}.filters{display:flex;gap:.5rem;margin-left:auto}.grid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:1rem;gap:1rem}@media (max-width:800px){.grid2{grid-template-columns:1fr}}button,input,select,textarea{font:inherit;padding:.45rem .6rem;border:1px solid #cdd3da;border-radius:6px;background:#fff}button{background:#0d5bd7;color:#fff;border-color:#0d5bd7;cursor:pointer}button:disabled{opacity:.5;cursor:default}label{display:block;margin-bottom:.75rem}label input{display:block;width:100%;margin-top:.25rem}.table,textarea{width:100%}.table{border-collapse:collapse;background:#fff;border:1px solid #e3e6ea;border-radius:8px}.table td,.table th{text-align:left;padding:.5rem .75rem;border-bottom:1px solid #eef0f3;font-size:.92rem}.table th{color:#5b6470;font-weight:600;background:#fafbfc}.table th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.table th.sortable:hover{color:#1f2937;background:#f1f3f5}.table tbody tr:hover{background:#f4f8ff;cursor:pointer}.table select{width:100%}.badge{padding:.15rem .5rem;border-radius:999px;font-size:.8rem;background:#eef0f3;white-space:nowrap}.badge.st-new{background:#e8f0fe;color:#0d5bd7}.badge.st-interested,.badge.st-replied{background:#e2f6ec;color:#14804a}.badge.st-do_not_touch,.badge.st-error,.badge.st-refused{background:#fdebee;color:#c22940}.badge.st-duplicate{background:#f3e8fd;color:#7a3ce0}.badge.risk-low{background:#e2f6ec;color:#14804a}.badge.risk-medium{background:#fef3e0;color:#b26a00}.badge.risk-high{background:#fdebee;color:#c22940}.badge.tier-ready{background:#e2f6ec;color:#14804a}.badge.tier-prospect{background:#e6f0fd;color:#0d5bd7}.badge.tier-contact_only{background:#fef3e0;color:#b26a00}.badge.tier-call_only{background:#eef0f3;color:#5a6472}.raw{background:#f6f7f9;padding:.5rem;border-radius:6px;font-size:.8rem;overflow-x:auto;max-height:320px}.toolbar{gap:.5rem;margin:1rem 0}.funnel-strip,.toolbar{display:flex;align-items:center;flex-wrap:wrap}.funnel-strip{gap:.35rem;margin:.8rem 0 1.1rem;padding:.6rem .75rem;background:#fafbfc;border:1px solid #eef0f3;border-radius:10px}.funnel-strip .funnel-pill,.funnel-strip button{background:transparent;border:1px solid transparent;color:#3c4652;padding:.3rem .6rem;border-radius:999px;font-size:.85rem;white-space:nowrap}.funnel-strip button{cursor:pointer}.funnel-strip button:hover{background:#eef0f3}.funnel-strip button.active{background:#0d5bd7;color:#fff}.funnel-strip button.active strong{color:#fff}.funnel-strip strong{color:#0d5bd7;font-weight:700}.funnel-strip button.active{border-color:#0d5bd7}.funnel-strip .funnel-pill,.funnel-strip .funnel-pill strong{color:#8a93a0}.funnel-arrow{color:#cdd3da;font-size:.8rem}.table tr.row-processing td{background:#eef4ff}.table tr.row-done td{background:#eafaf0}.table tr.row-stuck td{background:#fff6e6}.ok-msg{color:#14804a;background:#e2f6ec;padding:.5rem .75rem;border-radius:6px;margin:.5rem 0}button.kill-on{background:#e0475b;border-color:#e0475b}.action-bar{position:-webkit-sticky;position:sticky;bottom:0;left:0;right:0;display:flex;align-items:center;gap:1rem;flex-wrap:wrap;background:#fff;border-top:1px solid #e3e6ea;padding:.75rem 1.5rem;box-shadow:0 -2px 8px rgba(0,0,0,.06)}.action-bar .approve-group,.action-bar .send-group{display:flex;gap:.5rem}.action-bar .send-group{margin-left:auto}.action-bar .approve-group button{background:#eef0f3;color:#3c4652;border-color:#cdd3da}.pager{display:flex;gap:.75rem;align-items:center;margin-top:1rem}.props{display:grid;grid-template-columns:auto 1fr;grid-gap:.25rem .75rem;gap:.25rem .75rem;margin-bottom:.5rem}.props dt{color:#8a93a0}.login-wrap{max-width:380px}.login-form button{width:100%;margin-top:.5rem}.modal-overlay{position:fixed;inset:0;background:rgba(20,26,34,.45);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:50}.modal{background:#fff;border-radius:10px;padding:1.25rem 1.5rem;width:100%;max-width:620px;box-shadow:0 12px 40px rgba(0,0,0,.25);max-height:90vh;overflow-y:auto}.modal h2{margin:0 0 .25rem;font-size:1.15rem}.modal .field{display:block;margin-top:.9rem}.modal .field>span{display:block;color:#5b6470;font-size:.85rem;margin-bottom:.25rem}.modal .field input,.modal .field textarea{width:100%}.modal .field textarea{resize:vertical;line-height:1.5;font-family:inherit}.modal-actions{display:flex;gap:.6rem;margin-top:1.1rem}.modal-actions button.secondary,button.secondary{background:#eef0f3;color:#3c4652;border-color:#cdd3da}button.danger{background:#e0475b;border-color:#e0475b;color:#fff}.preview-body{white-space:pre-wrap;word-break:break-word;background:#fafbfc;border:1px solid #eef0f3;border-radius:8px;padding:.85rem 1rem;margin-top:.75rem;max-height:55vh;overflow-y:auto;font-family:inherit;font-size:.92rem;line-height:1.55}