/* WhatsApp inbox, mailshot sending and tracking, and your own forms. */
/* Part E: WhatsApp inbox */
.modal.e-modal{display:flex;align-items:stretch}
.wap{display:grid;gap:16px;grid-template-columns:minmax(0,1fr);align-items:start}
.wap-list{min-width:0;overflow:hidden}
.wap-tools{display:grid;gap:10px;padding:12px;border-bottom:1px solid var(--line)}
.wap-tools .chips{gap:6px}
.wap-tools .chip{padding:4px 9px;font-size:12.5px;min-height:30px}
.wap-items{display:grid}
.wap-item{all:unset;box-sizing:border-box;display:grid;grid-template-columns:40px minmax(0,1fr);gap:12px;align-items:start;width:100%;padding:11px 14px;border-bottom:1px solid var(--line);cursor:pointer;font-family:var(--f-body);color:var(--ink)}
.wap-item:last-child{border-bottom:0}
.wap-item:hover{background:var(--surface-2)}
.wap-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.wap-item.is-sel{background:var(--accent-soft)}
.wap-item .av{grid-area:auto}
.wap-main{display:grid;gap:2px;min-width:0}
.wap-top{display:flex;justify-content:space-between;align-items:baseline;gap:8px;min-width:0}
.wap-top b{font-weight:600;font-size:14.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wap-top time{flex:none;font-size:12px;color:var(--muted);font-family:var(--f-mono)}
.wap-item.is-new .wap-top b{font-weight:700}
.wap-item.is-new .wap-top time{color:var(--ok);font-weight:600}
.wap-sub{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wap-last{display:flex;align-items:center;gap:8px;min-width:0}
.wap-snip{flex:1;min-width:0;font-size:13.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wap-item.is-new .wap-snip{color:var(--ink)}
.wap-pre{color:var(--muted)}
.wap-snip mark{background:var(--accent-soft);color:var(--ink);border-radius:3px;padding:0 1px}
.wap-dot{flex:none;min-width:20px;height:20px;padding:0 6px;box-sizing:border-box;border-radius:99px;background:var(--badge-green);color:var(--brand-ink);font-family:var(--f-mono);font-size:11.5px;font-weight:600;display:inline-grid;place-items:center}
.wap-chat{min-width:0;padding:14px;display:grid;gap:12px}
.wap-chat .chat{max-height:min(58vh,560px);min-height:260px}
.wap-ch-head{display:flex;align-items:center;gap:10px 12px;flex-wrap:wrap;padding-bottom:12px;border-bottom:1px solid var(--line)}
.wap-ch-id{display:flex;align-items:center;gap:10px;flex:1 1 220px;min-width:0}
.wap-ch-id .av{grid-area:auto}
.wap-ch-who{display:grid;gap:1px;min-width:0}
.wap-ch-who b{font-size:16px;font-weight:700;overflow-wrap:anywhere}
.wap-ch-who small{font-size:12.5px;color:var(--muted)}
.wap-none{display:grid;justify-items:center;gap:6px;padding:48px 16px;color:var(--muted);text-align:center}
.wap-none .i{width:28px;height:28px;stroke:var(--muted)}
.wap-none p{margin:0}
.wap-back{display:none}
@container (max-width:719px){
  .wap.has-sel .wap-list{display:none}
  .wap:not(.has-sel) .wap-chat{display:none}
  .wap-back{display:inline-flex;flex:0 0 auto}
  .wap-ch-id{flex-basis:100%}
  .wap-chat{padding:12px}
}
@container (min-width:720px){
  .wap{grid-template-columns:minmax(290px,360px) minmax(0,1fr)}
  .wap-items{max-height:calc(100vh - 250px);min-height:320px;overflow:auto}
  .wap-chat{position:sticky;top:16px}
}
@container (min-width:1100px){.wap{grid-template-columns:minmax(320px,400px) minmax(0,1fr)}}
/* Part E: mailshot sending and tracking */
.mt-from{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.mt-kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin:0;font-size:13.5px}
.mt-kv dt{color:var(--muted)}
.mt-kv dd{margin:0;min-width:0;overflow-wrap:anywhere}
.mt-kv dd b{font-weight:600}
.mt-kv dd > span{color:var(--muted)}
.mt-kv dd small{display:block;color:var(--muted);font-size:12.5px}
.mt-note{margin:0}
.rc-tools{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.rc-tools .search{flex:1 1 200px}
.rc-tools .search input{background:var(--surface)}
.rc-added{align-items:center;cursor:default;background:var(--accent-soft)}
.rc-added .rc-t{flex:1}
.rc-added .pill{display:inline-flex;flex:none}
.rc-added.is-skip .rc-t b{color:var(--muted)}
.rc-added.is-skip small{color:var(--danger)}
.mp-res{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden;min-height:60px}
.mp-res > .nb-empty{border:0;border-radius:0}
.mp-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line)}
.mp-row:last-child{border-bottom:0}
.mp-row .av{grid-area:auto;width:36px;height:36px;font-size:13px}
.mp-t{display:grid;gap:1px;min-width:0;font-size:13.5px}
.mp-t small{color:var(--muted);font-size:12px}
.mp-t .mp-why{color:var(--danger)}
.mp-row.is-off .mp-t b{color:var(--muted)}
.mp-a{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.mp-in{font-size:12.5px}
@media (max-width:520px){.mp-row{grid-template-columns:32px minmax(0,1fr)}.mp-row .av{width:32px;height:32px}.mp-a{grid-column:2;justify-content:flex-start}}
.mt-sum{display:grid;gap:12px;min-width:0;align-content:start}
.mt-pg{grid-template-areas:"sum side" "rcp side";grid-template-rows:auto 1fr}
.mt-pg .mt-sum{grid-area:sum}.mt-pg .snd-side{grid-area:side}
.mt-rcp{grid-area:rcp;display:grid;gap:8px;align-content:start;min-width:0}
@media (max-width:860px){.mt-pg{grid-template-areas:"sum" "side" "rcp";grid-template-rows:auto}}
.mt-who-h{font-size:11.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.mt-who{display:flex;flex-wrap:wrap;gap:6px;max-height:230px;overflow:auto;padding:2px}
.mt-who-b{all:unset;cursor:pointer;font-family:var(--f-body);font-size:12.5px;padding:4px 10px;border-radius:99px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}
.mt-who-b[aria-pressed="true"]{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.mt-who-b:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.mt-step{display:inline-flex;align-items:center;gap:8px;font-family:var(--f-mono);font-size:12.5px;color:var(--muted)}
.mt-step .btn{min-width:34px;justify-content:center;padding-left:8px;padding-right:8px;font-size:17px;line-height:1}
.mt-link{color:var(--info);text-underline-offset:2px}
.mt-unsub{padding:10px 14px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}
.mt-card{all:unset;box-sizing:border-box;display:grid;gap:4px;width:100%;padding:14px 16px;border-bottom:1px solid var(--line);cursor:pointer;font-family:var(--f-body);color:var(--ink)}
.mt-card:last-child{border-bottom:0}
.mt-card:hover{background:var(--surface-2)}
.mt-card:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.mt-when{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:12.5px;color:var(--muted)}
.mt-see{color:var(--accent);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.mt-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px}
.mt-tile{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.mt-tile b{font-family:var(--f-mono);font-size:22px;font-weight:600;line-height:1.1}
.mt-tile span{font-size:12px;color:var(--muted)}
.mt-tile b small{font-size:12px;font-weight:500;color:var(--muted);margin-left:6px}
.mt-list{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.mt-row{display:flex;justify-content:space-between;align-items:center;gap:6px 12px;flex-wrap:wrap;padding:9px 12px;border-bottom:1px solid var(--line)}
.mt-row:last-child{border-bottom:0}
.mt-row-who{display:grid;gap:1px;min-width:0;flex:1 1 200px}
.mt-row-who small{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.mt-evs{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}
.mt-ev{font-size:12px;padding:2px 8px;border-radius:99px;background:var(--off-soft);color:var(--muted);white-space:nowrap}
.mt-ev.ok{background:var(--ok-soft);color:var(--ok)}
.mt-ev.info{background:var(--info-soft);color:var(--info)}
.mt-ev.bad{background:var(--danger-soft);color:var(--danger)}
.mt-msg summary{cursor:pointer;font-weight:600;font-size:13.5px;color:var(--accent);margin-bottom:8px}
@media (max-width:520px){.mt-evs{justify-content:flex-start}}
/* Part E: upload your own form */
.uf-drop{padding:16px 14px;border-width:1.5px}
.uf-drop-t{display:flex;align-items:center;gap:10px;color:var(--ink)}
.uf-drop-t .i{width:20px;height:20px;stroke:var(--accent);flex:none}
.uf-drop-t > span{display:grid;gap:1px}
.uf-drop-t small{color:var(--muted);font-size:12.5px}
.uf-how{margin:0;padding-left:20px;display:grid;gap:4px;font-size:13.5px;color:var(--muted)}
.uf-reading{min-height:52px}
.uf-form{display:grid;gap:14px;min-width:0;align-content:start}
.uf-map{display:grid;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.uf-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1.1fr) 84px;gap:8px 10px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}
.uf-row:last-child{border-bottom:0}
.uf-lbl{display:grid;gap:0;min-width:0;font-size:13.5px}
.uf-lbl b{font-weight:600;overflow-wrap:anywhere}
.uf-lbl small{font-size:11px;color:var(--muted)}
.uf-arrow{color:var(--muted)}
.uf-row select{min-width:0;width:100%}
.uf-conf{justify-content:center}
@container (max-width:520px){.uf-row{grid-template-columns:minmax(0,1fr) 84px}.uf-arrow{display:none}.uf-row select{grid-column:1/-1;grid-row:2}}
.uf-form{container-type:inline-size}
.uf-rid{max-width:60%;font-size:13px;padding-top:4px;padding-bottom:4px;min-height:32px}
.uf-src{margin:14px 0 0;font-size:11.5px;color:#5D5D58}
.uf-pill{vertical-align:1px;margin-left:4px}
.reg-form h1:focus{outline:none}
.reg-form .field{align-content:start}
.reg-form .field > .lbl-strong{margin-bottom:0}
.reg-opt{font-size:10.5px;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin-left:8px;white-space:nowrap}
.reg-drop{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:10px 12px;padding:12px;border:1px dashed var(--line-strong);border-radius:10px;background:var(--surface-2);cursor:pointer;min-width:0}
.reg-drop:hover{border-color:var(--muted)}
.reg-drop.drag{border-color:var(--accent);border-style:solid;background:var(--accent-soft)}
.reg-drop:has(.reg-up-in:focus-visible){outline:2px solid var(--accent);outline-offset:2px}
.reg-form input.reg-up-in[type="file"]{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;padding:0;border:0;border-radius:10px;cursor:pointer}
.reg-up-t{display:grid;gap:2px;flex:1 1 200px;min-width:0;font-size:14px}
.reg-up-l{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 0}
.reg-up-t .hint{font-size:12.5px;line-height:1.4}
.reg-up-btn{flex:none;pointer-events:none}
.reg-ups{display:grid;gap:10px}
.reg-up{display:grid;gap:6px;min-width:0}
.reg-up.has .reg-drop{border-style:solid;border-color:var(--line);background:var(--surface)}
.reg-files{display:grid;gap:6px}
.reg-files:empty{display:none}
.reg-file{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;background:var(--ok-soft);font-size:13.5px;min-width:0}
.reg-file .fa{color:var(--ok);width:13px;height:13px;flex:none}
.reg-file-n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}
.reg-file-s{flex:none;color:var(--muted);font-size:12px}
.reg-file .linkbtn{flex:none;padding:4px 0}
.reg-cv-drop{padding:14px;border-color:color-mix(in srgb,var(--brand) 55%,var(--line-strong));background:color-mix(in srgb,var(--accent-soft) 60%,var(--surface))}
.reg-cv-drop .reg-up-t b{font-size:15px}
.reg-cv-ic{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line)}
.reg-cv-ic .i{width:20px;height:20px;stroke:var(--accent)}
.reg-cv-state{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2);min-height:70px}
.reg-cv-state .typing{flex:none;width:40px;justify-content:center}
.reg-cv-state.done{background:var(--ok-soft);border-color:transparent}
.reg-cv-state.done > .fa{flex:none;width:18px;height:18px;color:var(--ok);margin:0 4px}
.reg-cv-state .reg-up-t b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reg-cv-state .linkbtn{flex:none}
.reg-cvnote{display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:600;color:var(--accent)}
.reg-cvnote .i{width:14px;height:14px;flex:none}
.reg-fromcv > input{border-color:color-mix(in srgb,var(--brand) 60%,var(--line-strong));background:color-mix(in srgb,var(--accent-soft) 55%,var(--surface))}
.reg-cats{display:grid;border:1px solid var(--line-strong);border-radius:10px;overflow:hidden;background:var(--surface);margin-top:4px}
.reg-cat + .reg-cat{border-top:1px solid var(--line)}
.reg-cat summary{list-style:none;display:flex;align-items:center;gap:10px;min-height:50px;padding:10px 12px 10px 14px;cursor:pointer;font-weight:600;font-size:15px}
.reg-cat summary::-webkit-details-marker{display:none}
.reg-cat summary:hover{background:var(--surface-2)}
.reg-cat summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.reg-cat-n{flex:1;min-width:0}
.reg-cat-c{flex:none;font-size:12.5px;font-weight:500;color:var(--muted);white-space:nowrap}
.reg-cat-c.on{font-weight:600;color:var(--accent);background:var(--accent-soft);padding:2px 9px;border-radius:99px}
.reg-cat-chev{flex:none;display:grid;place-items:center;width:24px;height:24px;color:var(--muted)}
.reg-cat-chev .i{width:16px;height:16px;transform:rotate(-90deg)}
.reg-cat[open] .reg-cat-chev .i{transform:rotate(90deg)}
.reg-cat[open] summary{background:var(--surface-2)}
@media (prefers-reduced-motion:no-preference){.reg-cat-chev .i{transition:transform .15s}}
.reg-ticks{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:6px;padding:10px 12px 12px;background:var(--surface-2)}
.reg-tk{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:8px;cursor:pointer;font-size:14px;line-height:1.3;background:var(--surface)}
.reg-tk input{width:18px;height:18px;margin:0;flex:none;accent-color:var(--accent)}
.reg-tk:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}
.reg-tk:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:1px}
.reg-tk.cv{box-shadow:inset 0 0 0 1.5px var(--brand)}
.reg-sk{scroll-margin-top:72px}
.reg-sk-chips{display:flex;flex-wrap:wrap;gap:6px}
.reg-sk-chips:empty{display:none}
.reg-chip{display:inline-flex;align-items:center;gap:2px;min-height:34px;padding:2px 3px 2px 12px;border:1px solid var(--accent);border-radius:99px;background:var(--accent-soft);color:var(--ink);font-size:13.5px;font-weight:500;max-width:100%}
.reg-chip > span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.reg-chip.cv{box-shadow:inset 0 0 0 1px var(--brand)}
.reg-chip button{flex:none;width:28px;height:28px;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:18px;line-height:1;cursor:pointer;display:grid;place-items:center}
.reg-chip button:hover{background:var(--surface);color:var(--ink)}
.reg-chip button:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.reg-sk-box{position:relative}
.reg-sk-box .i-search{position:absolute;left:12px;top:14px;width:17px;height:17px;stroke:var(--muted);pointer-events:none}
.reg-sk-box input{padding-left:37px;min-height:46px}
.reg-sk-list{position:absolute;left:0;right:0;top:calc(100% + 4px);z-index:5;margin:0;padding:4px;list-style:none;max-height:min(290px,48vh);overflow:auto;overscroll-behavior:contain;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow)}
.reg-sk-list li{display:flex;align-items:center;gap:8px;min-height:42px;padding:8px 10px;border-radius:7px;cursor:pointer;font-size:14px;line-height:1.3}
.reg-sk-list li:hover,.reg-sk-list li.act{background:var(--surface-2)}
.reg-sk-list li.act{box-shadow:inset 0 0 0 1.5px var(--line-strong)}
.reg-sk-list li[aria-selected="true"]{color:var(--accent);font-weight:600}
.reg-sk-list li b{background:var(--mark);color:var(--mark-ink);font-weight:inherit;border-radius:2px}
.reg-sk-tk{flex:none;width:18px;display:grid;place-items:center}
.reg-sk-tk .fa{width:12px;height:12px}
.reg-sk-list .reg-sk-none{color:var(--muted);cursor:default}
.reg-sc input{font-family:var(--f-mono);letter-spacing:.08em;max-width:260px}
.reg-sc input::placeholder{font-family:var(--f-body);letter-spacing:0}
.reg-sc label{display:flex;align-items:baseline;flex-wrap:wrap}
.reg-rtw-hint{margin:0;padding:9px 12px;border-radius:8px;background:var(--surface-2);font-size:13px;color:var(--muted)}
.reg-rtw-hint.ok{background:var(--ok-soft);color:var(--ink)}
.reg-ai{display:grid;gap:10px;padding:16px;border:1px solid color-mix(in srgb,var(--brand) 45%,var(--line));border-radius:12px;background:var(--surface);width:100%;box-sizing:border-box}
.reg-ai-h{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;font-size:15px}
.reg-ai-h > .i{stroke:var(--accent);width:18px;height:18px}
.reg-ai-h .ai-tag{margin-left:auto}
.reg-ai dl{margin:0;display:grid;grid-template-columns:minmax(110px,max-content) minmax(0,1fr);gap:8px 16px;font-size:14px}
.reg-ai dt{font-size:13px;font-weight:600;color:var(--muted)}
.reg-ai dd{margin:0;overflow-wrap:anywhere}
.reg-done .reg-ai p.hint{font-size:13px;line-height:1.45;max-width:none}
.reg-done .reg-exnote{max-width:none}
@media (max-width:480px){.reg-ai dl{grid-template-columns:minmax(0,1fr);gap:2px}.reg-ai dd{margin-bottom:8px}.reg-ai dd:last-child{margin-bottom:0}}
