:root{color-scheme:light;--blue: #2563eb;--cobalt: #1d4ed8;--indigo: #4f46e5;--amber: #f5a524;--bg: #f0eee9;--surface: #ffffff;--ice: #eaf2ff;--ink: #0f172a;--ink-muted: #475569;--ink-faint: #7b8798;--line: #dddad2;--line-faint: #e9e7e1;--success: #15803d;--success-soft: #dcfce7;--danger: #c2264b;--danger-soft: #ffe4e6;--font-head: "Sora", "Segoe UI", system-ui, sans-serif;--font-body: "Inter", "Segoe UI", system-ui, sans-serif;--r-card: 16px;--r-sm: 10px;--r-row: 9px;--r-pill: 999px;--sidebar: 232px;--detail: 360px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 14px/1.55 var(--font-body);-webkit-font-smoothing:antialiased}button{font:inherit;cursor:pointer}a{color:var(--cobalt)}:focus-visible{outline:2px solid var(--cobalt);outline-offset:2px}.shell{display:flex;height:100%}.sidebar{display:flex;flex-direction:column;flex:none;width:var(--sidebar);padding:18px 14px;background:var(--bg);border-right:1px solid var(--line)}.brand{display:flex;align-items:center;padding:0 8px;margin-bottom:22px}.tile{display:grid;place-items:center;flex:none;width:30px;height:30px;border-radius:7px;background:var(--cobalt);color:#fff}.tile svg{width:17px;height:auto;display:block}.nav{display:flex;flex-direction:column;gap:2px}.nav-item{display:flex;align-items:center;gap:10px;height:34px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--ink-muted);text-align:left;width:100%}.nav-item:hover{background:#e8e5de}.nav-item[aria-current=page]{background:var(--ice);color:var(--cobalt);font-weight:600}.nav-item .glyph{display:inline-flex;width:18px;height:18px;align-items:center;justify-content:center;flex:none}.nav-item span{font-size:13px}.nav-foot{margin-top:auto}.who{display:flex;align-items:center;gap:9px;padding:10px;margin-top:8px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-faint);min-width:0}.who span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.main{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--surface)}.topbar{display:flex;align-items:center;gap:14px;padding:18px 24px 14px;flex:none}.title{font:600 20px/1.2 var(--font-head);letter-spacing:-.01em;margin:0}.spacer{margin-left:auto}.toolbar{display:flex;align-items:center;gap:10px;padding:0 24px 14px;flex:none}.search{display:flex;align-items:center;gap:8px;height:34px;padding:0 11px;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-faint);flex:1;max-width:320px}.search input{border:0;outline:0;font:inherit;font-size:13px;color:var(--ink);background:transparent;width:100%}.search input::placeholder{color:var(--ink-faint)}.filters{display:flex;gap:6px}.chip{height:30px;padding:0 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);color:var(--ink-muted);font-size:12.5px}.chip:hover{border-color:#c9c5bb}.chip[aria-pressed=true]{background:var(--ice);border-color:transparent;color:var(--cobalt);font-weight:600}.btn{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 14px;border:1px solid transparent;border-radius:var(--r-sm);font-size:13px;font-weight:500;white-space:nowrap;flex:none}.btn svg{flex:none}.btn-primary{background:var(--blue);color:#fff}.btn-primary:hover{background:var(--cobalt)}.btn-primary:disabled{background:#9db8ef;cursor:not-allowed}.btn-secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn-secondary:hover{background:#faf9f7}.btn-ghost{background:transparent;color:var(--ink-muted);padding:0 10px}.btn-ghost:hover{background:#f3f1ec}.list-wrap{flex:1;min-height:0;display:flex}.list{flex:1;min-width:0;overflow-y:auto;padding:0 24px 24px}.row{display:grid;grid-template-columns:30px minmax(0,1fr) 44px;align-items:center;gap:12px;width:100%;min-height:56px;padding:8px 10px;margin:0 -10px;border:0;border-bottom:1px solid var(--line-faint);border-radius:var(--r-row);background:transparent;text-align:left}.row:hover{background:#faf9f7}.row[aria-selected=true]{background:var(--ice);border-bottom-color:transparent}.row-who{min-width:0}.row-name{font-size:13.5px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-sub{display:flex;align-items:center;gap:8px;margin-top:2px;min-width:0}.row-co{font-size:12px;color:var(--ink-faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.row-time{font-size:12px;color:var(--ink-faint);font-variant-numeric:tabular-nums;white-space:nowrap}.avatar{display:grid;place-items:center;flex:none;border-radius:var(--r-pill);color:#fff;font-weight:600;text-transform:uppercase;text-box:trim-both cap alphabetic}.badge{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--r-pill);font-size:11px;font-weight:600;white-space:nowrap;flex:none;text-box:trim-both cap alphabetic}.badge-new{background:var(--ice);color:var(--cobalt)}.badge-working{background:#efede8;color:var(--ink-muted)}.badge-qualified{background:var(--success-soft);color:var(--success)}.badge-customer{background:#e5e2fb;color:var(--indigo)}.badge-disqualified,.badge-suppressed{background:var(--danger-soft);color:var(--danger)}.row[aria-selected=true] .badge-new{background:var(--surface)}.detail{flex:none;width:var(--detail);border-left:1px solid var(--line);background:var(--surface);overflow-y:auto;padding:20px 22px 28px}.detail-head{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.detail-who{min-width:0}.detail-name{font-size:15px;font-weight:600;color:var(--ink)}.detail-co{font-size:12px;color:var(--ink-faint);margin-top:2px}.section{padding-top:18px}.section+.section{margin-top:4px}.label{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px}.field{display:flex;align-items:baseline;justify-content:space-between;gap:14px;min-height:28px}.field dt{font-size:12.5px;color:var(--ink-faint)}.field dd{margin:0;font-size:12.5px;font-weight:500;color:var(--ink);text-align:right;overflow-wrap:anywhere}.value{font-size:14px;font-weight:600;color:var(--ink)}.track{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:5px;margin:10px 0 8px}.track i{height:5px;border-radius:var(--r-pill);background:var(--line);display:block}.track i[data-done]{background:var(--blue)}.track i[data-now]{background:var(--amber)}.track-note{font-size:12px;color:var(--ink-faint)}.timeline{display:flex;flex-direction:column;gap:0}.event{display:grid;grid-template-columns:14px minmax(0,1fr);gap:10px;padding:7px 0}.event-dot{width:7px;height:7px;border-radius:var(--r-pill);background:var(--line);margin-top:6px;justify-self:center}.event-dot[data-kind=email_sent]{background:var(--blue)}.event-dot[data-kind=created]{background:var(--success)}.event-dot[data-kind=bounced],.event-dot[data-kind=complained]{background:var(--danger)}.event-text{font-size:12.5px;color:var(--ink)}.event-when{font-size:11.5px;color:var(--ink-faint);margin-top:1px}.select{height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit;font-size:12.5px}.empty{padding:56px 24px;text-align:center;color:var(--ink-faint)}.empty h2{font:600 16px/1.3 var(--font-head);color:var(--ink);margin:0 0 6px}.empty p{margin:0 auto;max-width:42ch;font-size:13px}.skeleton{background:var(--line-faint);border-radius:var(--r-pill);display:block}@keyframes pulse{0%,to{opacity:1}50%{opacity:.55}}.skeleton{animation:pulse 1.4s ease-in-out infinite}@media (prefers-reduced-motion: reduce){.skeleton{animation:none}}.notice{margin:24px;padding:18px 20px;border:1px solid var(--line);border-left:3px solid var(--amber);border-radius:var(--r-card);background:var(--surface)}.notice h2{font:600 15px/1.3 var(--font-head);margin:0 0 6px}.notice p{margin:0 0 8px;font-size:13px;color:var(--ink-muted)}.notice code{font-family:ui-monospace,Consolas,monospace;font-size:12px;background:#f3f1ec;padding:1px 5px;border-radius:5px}.scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a59;display:grid;place-items:center;padding:24px;z-index:10}.dialog{width:min(440px,100%);background:var(--surface);border-radius:var(--r-card);padding:22px 24px 20px;box-shadow:0 18px 48px #0f172a38}.dialog h2{font:600 17px/1.25 var(--font-head);margin:0 0 16px}.dialog label{display:block;font-size:12.5px;color:var(--ink-muted);margin-bottom:12px}.dialog input[type=text],.dialog input[type=email]{display:block;width:100%;height:36px;margin-top:5px;padding:0 11px;border:1px solid var(--line);border-radius:var(--r-sm);font:inherit;font-size:13px;color:var(--ink);background:var(--surface)}.dialog input:focus{outline:2px solid var(--cobalt);outline-offset:-1px;border-color:transparent}.dialog label.consent{display:flex;gap:9px;align-items:flex-start;font-size:12.5px;color:var(--ink-muted);line-height:1.5;margin-bottom:0}.consent input{margin-top:2px;flex:none}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.error{color:var(--danger);font-size:12.5px;margin-top:10px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;padding:9px 14px;font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line)}.table td{padding:13px 14px;border-bottom:1px solid var(--line-faint);vertical-align:middle}.table tr:last-child td{border-bottom:0}.table .strong{font-weight:600;color:var(--ink)}.table .num{font-variant-numeric:tabular-nums}.table-wrap{margin:0 24px 24px;border:1px solid var(--line);border-radius:var(--r-card);overflow:hidden}@media (max-width: 900px){:root{--detail: 320px}.sidebar{width:64px;padding:18px 10px}.nav-item span,.who span,.brand+.nav .nav-item span{display:none}.nav-item{justify-content:center;padding:0}.who{justify-content:center}}@media (max-width: 680px){.detail{position:fixed;top:0;right:0;bottom:0;left:0;width:auto;z-index:20;border-left:0;padding:18px 20px 28px}.toolbar{flex-wrap:wrap}.search{max-width:none}}
