*{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#0a1a3c;--body:#3d4759;--muted:#6b7689;--line:#e3e7ef;--soft:#f5f7fc;
--gold:#f5b301;--gold-d:#a97800;--gold-s:#fff8e6;--green:#0a7c48;--green-s:#e8f6ee;
--red:#c92a2a;--red-s:#fdecec;--shadow:0 1px 2px rgba(10,26,60,.05),0 10px 34px rgba(10,26,60,.08)}
body{font-family:ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,Helvetica,Arial,sans-serif;
color:var(--body);background:var(--soft);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
h1,h2,h3{color:var(--ink);letter-spacing:-.025em;font-weight:800;line-height:1.18}
a{color:var(--gold-d)}
.topbar{background:#0a1a3c;padding:0}
.topbar .in{max-width:1120px;margin:0 auto;padding:0 22px;height:60px;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center;gap:9px;color:#fff;font-weight:850;font-size:17px;letter-spacing:-.03em;text-decoration:none}
.logo svg{width:32px;height:32px;border-radius:9px;background:var(--gold);padding:6px;flex:none}
.topbar .right{display:flex;align-items:center;gap:14px;color:rgba(255,255,255,.75);font-size:14px}
.chip{background:rgba(245,179,1,.16);border:1px solid rgba(245,179,1,.4);color:#ffd873;
font-size:11.5px;font-weight:800;padding:5px 11px;border-radius:100px;letter-spacing:.03em}
/* same chip on a LIGHT background — the pale gold above is unreadable there */
.chip.on-light{background:var(--gold-s);border-color:#e8cf92;color:#7d5a00}
.shell{max-width:1120px;margin:0 auto;padding:0 22px}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.btn{display:inline-block;background:var(--gold);color:#231800;font-weight:800;font-size:15.5px;padding:14px 26px;
border-radius:11px;text-decoration:none;border:0;cursor:pointer;width:100%;transition:opacity .15s}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn.sm{width:auto;padding:10px 18px;font-size:14px}
.btn.ghost{background:#fff;border:1.5px solid var(--line);color:var(--ink)}
label{display:block;font-size:13.5px;font-weight:750;color:var(--ink);margin-bottom:6px}
input[type=text],input[type=email],input[type=password]{width:100%;padding:13px 15px;border:1.5px solid var(--line);
border-radius:10px;font-size:15.5px;font-family:inherit;color:var(--ink);background:#fff}
input:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-s)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:13px}
@media(max-width:560px){.row2{grid-template-columns:1fr}}
.field{margin-bottom:16px}
.hint{font-size:12.5px;color:var(--muted);margin-top:5px}
.err{background:var(--red-s);border:1px solid #f3c2c2;color:var(--red);padding:11px 14px;border-radius:10px;
font-size:13.5px;margin-bottom:15px;font-weight:650}
.pwreq{display:grid;grid-template-columns:1fr 1fr;gap:5px 14px;margin-top:10px}
.pwreq li{list-style:none;font-size:12.5px;color:var(--muted);display:flex;align-items:center;gap:7px;transition:color .15s}
.pwreq li .b{width:15px;height:15px;border-radius:50%;border:1.5px solid #cfd6e2;display:grid;place-items:center;
font-size:9px;color:transparent;flex:none;transition:all .15s}
.pwreq li.ok{color:var(--green);font-weight:650}
.pwreq li.ok .b{background:var(--green);border-color:var(--green);color:#fff}
.otp{display:flex;gap:9px;justify-content:center;margin:8px 0 4px}
.otp input{width:48px;height:58px;text-align:center;font-size:23px;font-weight:800;padding:0;color:var(--ink)}
@media(max-width:420px){.otp input{width:42px;height:52px;font-size:20px}}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* ── profile menu (topbar) ───────────────────────────────── */
.pmenu{position:relative}
.pbtn{width:34px;height:34px;border-radius:50%;background:var(--gold);color:#231800;border:0;
cursor:pointer;font-weight:850;font-size:13.5px;font-family:inherit;display:grid;place-items:center;
letter-spacing:.02em}
.pbtn:focus-visible{outline:2px solid #fff;outline-offset:2px}
.pdrop{position:absolute;right:0;top:calc(100% + 9px);background:#fff;border:1px solid var(--line);
border-radius:12px;box-shadow:0 12px 34px rgba(10,26,60,.18);min-width:228px;padding:7px;z-index:60;
opacity:0;visibility:hidden;transform:translateY(-5px);transition:opacity .13s,transform .13s,visibility .13s}
.pmenu:hover .pdrop,.pmenu:focus-within .pdrop{opacity:1;visibility:visible;transform:translateY(0)}
.pdrop .who{padding:10px 12px 11px;border-bottom:1px solid var(--line);margin-bottom:6px}
.pdrop .who b{display:block;color:var(--ink);font-size:14px}
.pdrop .who span{display:block;color:var(--muted);font-size:12.5px;margin-top:2px;
overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdrop a,.pdrop button{display:flex;align-items:center;gap:9px;width:100%;text-align:left;
padding:9px 12px;border-radius:8px;font-size:14px;color:var(--body);text-decoration:none;
background:none;border:0;cursor:pointer;font-family:inherit;font-weight:600}
.pdrop a:hover,.pdrop button:hover{background:var(--soft);color:var(--ink)}

/* ── account page ────────────────────────────────────────── */
.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:26px;flex-wrap:wrap}
.tabs button{background:none;border:0;border-bottom:2px solid transparent;padding:12px 16px;
font-size:14.5px;font-weight:700;color:var(--muted);cursor:pointer;font-family:inherit;margin-bottom:-1px}
.tabs button.on{color:var(--ink);border-bottom-color:var(--gold)}
.pane{display:none}.pane.on{display:block}
.sect{padding:26px 28px;margin-bottom:16px}
@media(max-width:560px){.sect{padding:20px 18px}}
.sect h3{font-size:16.5px}
.sect .d{font-size:13.5px;color:var(--muted);margin-top:5px;margin-bottom:18px}
.tog{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:15px 0;
border-bottom:1px solid #f0f3f8}
.tog:last-child{border-bottom:0}
.tog .t{font-size:14.5px;font-weight:700;color:var(--ink)}
.tog .s{font-size:13px;color:var(--muted);margin-top:2px}
.sw{width:44px;height:25px;border-radius:100px;background:#d5dbe6;border:0;cursor:pointer;
position:relative;flex:none;transition:background .15s}
.sw::after{content:"";position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;
background:#fff;transition:transform .15s;box-shadow:0 1px 3px rgba(0,0,0,.2)}
.sw.on{background:var(--green)}
.sw.on::after{transform:translateX(19px)}
table.tx{width:100%;border-collapse:collapse;font-size:14px}
table.tx th{text-align:left;font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;
color:var(--muted);font-weight:800;padding:0 12px 10px 0;border-bottom:1px solid var(--line)}
table.tx td{padding:14px 12px 14px 0;border-bottom:1px solid #f0f3f8;vertical-align:top}
table.tx tr:last-child td{border-bottom:0}
.pill{font-size:10.5px;font-weight:800;padding:3px 9px;border-radius:100px}
.p-free{background:var(--green-s);color:var(--green)}
.p-paid{background:var(--gold-s);color:var(--gold-d)}
.statrow{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin-bottom:18px}
@media(max-width:620px){.statrow{grid-template-columns:1fr}}
.statrow .b{background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:15px 17px}
.statrow .b .n{font-size:23px;font-weight:850;color:var(--ink);letter-spacing:-.02em}
.statrow .b .l{font-size:12.5px;color:var(--muted);margin-top:2px}
.ok{background:var(--green-s);border:1px solid #bfe3ce;color:var(--green);padding:11px 14px;
border-radius:10px;font-size:13.5px;margin-bottom:15px;font-weight:650}

/* ── payment modal ───────────────────────────────────────── */
.ov{position:fixed;inset:0;background:rgba(10,26,60,.55);backdrop-filter:blur(3px);
display:none;place-items:center;z-index:100;padding:20px}
.ov.on{display:grid}
.pay{background:#fff;border-radius:17px;max-width:430px;width:100%;padding:28px;
box-shadow:0 24px 70px rgba(10,26,60,.32);max-height:92vh;overflow-y:auto}
.pay h3{font-size:19px}
.pay .lead-sum{background:var(--soft);border:1px solid var(--line);border-radius:11px;
padding:14px 16px;margin:15px 0 18px}
.pay .lead-sum .n{font-weight:800;color:var(--ink);font-size:15px}
.pay .lead-sum .m{font-size:13px;color:var(--muted);margin-top:3px}
.pay .amt{display:flex;justify-content:space-between;align-items:baseline;
padding:13px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}
.pay .amt b{font-size:22px;color:var(--ink);letter-spacing:-.02em}
#pay-el{margin-bottom:16px;min-height:80px}
.pay .cancel{background:none;border:0;color:var(--muted);font-size:13.5px;cursor:pointer;
width:100%;margin-top:11px;text-decoration:underline;font-family:inherit}
.pay .hold{font-size:12.5px;color:var(--muted);text-align:center;margin-top:12px;line-height:1.5}

/* ── My Leads · the leads this buyer already paid for ───────────────
   Wider than .pay because these are records to work from, not a form. */
.mypanel{background:#fff;border-radius:17px;max-width:720px;width:100%;
  box-shadow:0 24px 70px rgba(10,26,60,.32);max-height:92vh;display:flex;flex-direction:column}
.mypanel .hd{display:flex;align-items:center;justify-content:space-between;
  padding:20px 24px;border-bottom:1px solid var(--line)}
.mypanel .hd h3{font-size:19px;margin:0}
.mypanel .hd .sub{font-size:13px;color:var(--muted);margin-top:3px}
.mypanel .bd{padding:18px 24px 24px;overflow-y:auto}
.mypanel .x{background:none;border:0;font-size:24px;line-height:1;color:var(--muted);
  cursor:pointer;padding:4px 8px;border-radius:8px}
.mypanel .x:hover{background:var(--soft);color:var(--ink)}
.mycard{border:1px solid var(--line);border-radius:13px;padding:16px 18px;margin-bottom:14px;background:#fff}
.mycard + .mycard{margin-top:0}
.mycard .nm{font-weight:800;color:var(--ink);font-size:16px;line-height:1.3}
.mycard .meta{font-size:13px;color:var(--muted);margin-top:3px}
.mycard .fields{display:grid;gap:7px;font-size:14.5px;margin-top:13px}
.mycard .fields a{color:var(--ink);font-weight:700;text-decoration:none}
.mycard .fields a:hover{text-decoration:underline}
.mycard .paidline{display:flex;justify-content:space-between;align-items:baseline;
  font-size:13px;color:var(--muted);border-top:1px dashed var(--line);margin-top:13px;padding-top:11px}
.myempty{text-align:center;padding:34px 20px;color:var(--muted);font-size:14.5px}
/* the same evidence block the receipt email shows, in the app */
.vblock{background:#f1f8f3;border:1px solid #bfe3ce;border-radius:11px;padding:12px 14px;margin-top:12px}
.vblock .t{font-size:13.5px;font-weight:800;color:var(--ink)}
.vblock p{font-size:13px;line-height:1.6;color:#55606e;margin:6px 0 0}
.vblock .src{font-size:12px;color:#6b7683;border-top:1px solid #d7eadf;margin-top:8px;padding-top:8px;line-height:1.6}
.vblock b.ok{color:#1d9a6c}
.vnone{background:var(--soft);border:1px solid var(--line);border-radius:11px;
  padding:12px 14px;margin-top:12px;font-size:13px;color:var(--muted);line-height:1.6}
/* why a card says "Phone only" — stated on the card, not hidden in a tooltip */
.emaildelay{font-size:12.5px;color:#1c4fa1;background:#eaf1fd;border-radius:8px;
  padding:7px 10px;margin-top:9px;line-height:1.5}
@media(max-width:560px){.mypanel .bd{padding:14px 16px 20px}.mypanel .hd{padding:16px 18px}}

/* ── Report a problem · the guarantee, made clickable ───────────────── */
.rprow{display:flex;justify-content:flex-end;margin-top:10px}
.rpbtn{background:none;border:0;color:var(--muted);font-size:12.5px;font-family:inherit;
  cursor:pointer;text-decoration:underline;padding:4px 2px}
.rpbtn:hover{color:var(--ink)}
.rpbox{border:1px solid var(--line);border-radius:11px;padding:14px 16px;margin-top:11px;background:var(--soft)}
.rpbox h4{font-size:14px;color:var(--ink);margin:0 0 4px}
.rpbox .d{font-size:12.5px;color:var(--muted);line-height:1.55;margin-bottom:11px}
.rpbox label{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;color:var(--ink);
  padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;margin-bottom:8px;cursor:pointer}
.rpbox label:hover{border-color:var(--gold)}
.rpbox label input{margin-top:2px}
.rpbox label span small{display:block;color:var(--muted);font-size:12px;margin-top:2px;line-height:1.45}
.rpbox textarea{width:100%;border:1px solid var(--line);border-radius:9px;padding:9px 11px;
  font-family:inherit;font-size:13.5px;resize:vertical;min-height:60px}
.rpnot{background:#fff6f6;border:1px solid #f3d3d3;border-radius:9px;padding:9px 11px;
  font-size:12.5px;color:#8a3a3a;line-height:1.5;margin-bottom:10px}
.rpact{display:flex;gap:9px;justify-content:flex-end;margin-top:10px}
.rpmsg{font-size:13px;line-height:1.55;border-radius:9px;padding:10px 12px;margin-top:10px}
.rpmsg.ok{background:#f1f8f3;border:1px solid #bfe3ce;color:#1b6b45}
.rpmsg.err{background:#fdecec;border:1px solid #f3c9c9;color:#a33}

/* ── The seal · what was true at the instant of sale ────────────────
   Deliberately restrained. The credibility comes from naming the source and the
   timestamp, not from looking like a notary stamp we are not. */
.vblock .seal{display:flex;align-items:center;gap:11px;border-top:1px solid #d7eadf;
  margin-top:9px;padding-top:9px}
.vblock .stamp{flex:0 0 auto;width:52px;height:52px;border-radius:50%;
  border:2px solid #1d9a6c;color:#1d9a6c;display:grid;place-items:center;text-align:center;
  font-size:8.5px;font-weight:800;line-height:1.15;letter-spacing:.02em;text-transform:uppercase;
  transform:rotate(-8deg);background:#fff}
.vblock .sealtxt{font-size:12px;color:#55606e;line-height:1.55}
.vblock .sealtxt b{color:#0a1a3c}
.vblock code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;
  background:#fff;border:1px solid #d7eadf;border-radius:5px;padding:1px 5px;color:#0a1a3c}
.rpseal{background:#fff;border:1px solid #d7eadf;border-left:3px solid #1d9a6c;border-radius:9px;
  padding:10px 12px;font-size:12.5px;color:#55606e;line-height:1.6;margin-bottom:11px}
.rpseal b{color:#0a1a3c}
.rpseal code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11.5px;
  background:var(--soft);border-radius:4px;padding:1px 4px}

/* ── The verdict, shown in the card the moment it is known ─────────── */
.rpv{border-radius:11px;padding:13px 15px;margin-top:11px;font-size:13.5px;line-height:1.6}
.rpv .vt{font-weight:800;font-size:14px;margin-bottom:5px}
.rpv p{margin:0}
.rpv.ok{background:#f1f8f3;border:1px solid #bfe3ce;color:#1b6b45}
.rpv.ok .vt{color:#14603c}
.rpv.warn{background:#fffaf0;border:1px solid #ecd9a8;color:#7a5b1e}
.rpv.warn .vt{color:#6b4d12}
.rpv.info{background:#eef4fd;border:1px solid #cddffa;color:#2b4f86}
.rpv.info .vt{color:#1c4fa1}
.rpv .rpact{margin-top:10px}
.rpv .rpact{display:flex;align-items:center;gap:14px;justify-content:flex-end;flex-wrap:wrap}
.rpsupport{font-size:12.5px;color:inherit;opacity:.8;text-decoration:underline;white-space:nowrap}
.rpsupport:hover{opacity:1}

/* ── Quick filters · the three price tiers and contact, one click ──── */
.qf{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.qfl{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;
  letter-spacing:.05em;margin-right:2px}
.qfsep{width:1px;height:18px;background:var(--line);margin:0 6px}
.qfb{background:#fff;border:1px solid var(--line);border-radius:999px;padding:6px 12px;
  font-family:inherit;font-size:12.5px;font-weight:700;color:var(--ink);cursor:pointer;
  min-height:32px}
.qfb:hover{border-color:var(--gold)}
.qfb.on{background:var(--ink);border-color:var(--ink);color:#fff}
@media(max-width:560px){
  .qf{gap:5px}
  .qfsep{display:none}
  .qfl{width:100%;margin:4px 0 0}
}
