/* Bourdon — tracking page and operator console */

.trackbody{background:var(--paper)}
.track{padding-top:132px;padding-bottom:120px;max-width:920px}
.track h1{font-family:var(--serif);font-weight:500;font-size:clamp(30px,4.4vw,46px);
  line-height:1.12;letter-spacing:-.015em;margin:.18em 0 .34em}
.track h2{font-family:var(--serif);font-weight:500;font-size:clamp(20px,2.3vw,25px);
  letter-spacing:-.01em;margin:0 0 14px}
.track .sub{color:var(--muted);max-width:60ch;margin:0 0 4px}
.tloading h1{color:var(--muted)}

.tmeta{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--rule);
  border:1px solid var(--rule);border-radius:var(--r);margin:34px 0 30px;overflow:hidden}
.tmeta>div{background:var(--card);padding:14px 16px;min-width:0}
.tk{display:block;font-size:11px;letter-spacing:.11em;text-transform:uppercase;
  color:var(--faint);margin-bottom:5px}
.tmeta strong{font-weight:500;font-size:15.5px;font-variant-numeric:tabular-nums;
  overflow-wrap:anywhere}
@media (max-width:720px){.tmeta{grid-template-columns:1fr 1fr}}

.tbar{height:5px;background:var(--paper-2);border-radius:99px;overflow:hidden}
.tbar-fill{height:100%;width:9%;background:var(--ever);border-radius:99px;
  transition:width .7s cubic-bezier(.4,0,.2,1)}
.tbar-lab{display:flex;justify-content:space-between;font-size:12.5px;color:var(--muted);
  margin:9px 0 0;font-variant-numeric:tabular-nums}

.tsec{margin-top:56px}

.tsteps{list-style:none;margin:0;padding:0;position:relative}
.tsteps::before{content:"";position:absolute;left:8px;top:12px;bottom:12px;width:1px;
  background:var(--rule)}
.tsteps li{position:relative;padding:0 0 22px 36px;min-height:34px}
.tsteps li:last-child{padding-bottom:0}
.tsteps .dot{position:absolute;left:0;top:5px;width:17px;height:17px;border-radius:50%;
  background:var(--paper);border:1.5px solid var(--rule);z-index:1;display:grid;place-items:center}
.tsteps .dot svg{width:9px;height:9px;opacity:0}
.tsteps .st{font-weight:500;font-size:15.5px;color:var(--faint);letter-spacing:-.005em}
.tsteps .sd{font-size:14px;color:var(--faint);margin:3px 0 0;max-width:62ch;line-height:1.55}
.tsteps .sw{font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--faint);
  margin:5px 0 0}

.tsteps li.done .dot{background:var(--ever);border-color:var(--ever)}
.tsteps li.done .dot svg{opacity:1;stroke:#fff}
.tsteps li.done .st{color:var(--ink)}
.tsteps li.done .sd{color:var(--muted)}

.tsteps li.now .dot{border-color:var(--ever);background:var(--paper);
  box-shadow:0 0 0 4px var(--ever-lt)}
.tsteps li.now .dot::after{content:"";width:7px;height:7px;border-radius:50%;
  background:var(--ever);animation:pulse 1.7s ease-in-out infinite}
.tsteps li.now .st{color:var(--ever);font-weight:700}
.tsteps li.now .sd{color:var(--muted)}
@keyframes pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}
@media (prefers-reduced-motion:reduce){.tsteps li.now .dot::after{animation:none}}

.mplayer{margin:20px 0 14px}
.mplayer audio{width:100%;height:42px}
.mfiles{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:18px}
.mfile{display:inline-flex;align-items:baseline;gap:8px;border:1px solid var(--rule);
  background:var(--card);border-radius:var(--r);padding:8px 13px;font-size:13.5px;
  text-decoration:none;color:var(--ink);transition:border-color .18s,background .18s}
.mfile:hover{border-color:var(--ever);background:var(--ever-lt)}
.mfile em{font-style:normal;color:var(--faint);font-size:12px;font-variant-numeric:tabular-nums}
.mtrans{margin:0;padding:16px 20px;border-left:2px solid var(--ever);background:var(--card);
  font-family:var(--serif);font-size:18px;line-height:1.6;color:var(--ink)}

.callbox{display:flex;gap:11px;flex-wrap:wrap;margin:20px 0 22px}
.msgs{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--rule);
  border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.msgs:empty{display:none}
.msgs li{background:var(--card);padding:14px 17px}
.msgs .mh{display:flex;justify-content:space-between;gap:12px;font-size:13px;
  color:var(--muted);margin-bottom:5px}
.msgs .mh strong{color:var(--ink);font-weight:500}
.msgs p{margin:0;font-size:15px;line-height:1.55}

.obox{list-style:none;margin:0;padding:0;display:grid;gap:1px;background:var(--rule);
  border:1px solid var(--rule);border-radius:var(--r);overflow:hidden}
.obox li{background:var(--card);padding:13px 17px;font-size:14.5px}
.obox .os{font-weight:500}
.obox .oa{font-size:12.5px;color:var(--faint);margin-top:3px}
.obox .ot{font-size:12px;color:var(--faint);float:right;font-variant-numeric:tabular-nums}

/* ---------------------------------------------------------------- console */
.console{padding-top:110px;padding-bottom:90px;max-width:1240px}
.console h1{font-family:var(--serif);font-weight:500;font-size:34px;margin:.1em 0 .1em}
.chead{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;
  flex-wrap:wrap;border-bottom:1px solid var(--rule);padding-bottom:20px;margin-bottom:26px}
.cpill{display:inline-flex;align-items:center;gap:7px;font-size:12px;letter-spacing:.07em;
  text-transform:uppercase;border:1px solid var(--rule);background:var(--card);
  border-radius:99px;padding:5px 12px;color:var(--muted)}
.cpill i{width:7px;height:7px;border-radius:50%;background:var(--amber);display:block}
.cpill.on i{background:var(--ever);animation:pulse 2s ease-in-out infinite}
.cpill.live i{background:#B4472F}

.cgrid{display:grid;grid-template-columns:1.25fr .9fr;gap:34px;align-items:start}
@media (max-width:980px){.cgrid{grid-template-columns:1fr}}

.ctable{width:100%;border-collapse:collapse;font-size:14px}
.ctable th{text-align:left;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--faint);font-weight:500;padding:0 10px 9px 0;border-bottom:1px solid var(--rule)}
.ctable td{padding:12px 10px 12px 0;border-bottom:1px solid var(--rule);vertical-align:top}
.ctable tr:hover td{background:var(--card)}
.ctable .num{font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}
.ctable a{color:var(--ever);text-decoration:none;border-bottom:1px solid transparent}
.ctable a:hover{border-bottom-color:var(--ever)}
.mini{height:4px;background:var(--paper-2);border-radius:99px;overflow:hidden;
  min-width:96px;margin-top:6px}
.mini i{display:block;height:100%;background:var(--ever);border-radius:99px;
  transition:width .6s ease}
.stg{font-size:12.5px;color:var(--muted)}
.badge{display:inline-block;font-size:11px;letter-spacing:.07em;text-transform:uppercase;
  padding:2px 8px;border-radius:99px;background:var(--ever-lt);color:var(--ever-dk);
  font-weight:500}
.badge.run{background:#FBF1E2;color:var(--amber)}

.feed{border:1px solid var(--rule);border-radius:var(--r);background:var(--card);
  max-height:560px;overflow:auto}
.feed li{list-style:none;padding:11px 15px;border-bottom:1px solid var(--rule);font-size:13.5px}
.feed li:last-child{border-bottom:0}
.feed ul{margin:0;padding:0}
.feed .ft{font-size:11.5px;color:var(--faint);font-variant-numeric:tabular-nums}
.feed .fk{font-weight:500}
.feed .fd{color:var(--muted);font-size:12.5px;margin-top:2px;line-height:1.5}
.feed li.kmail .fk{color:var(--amber)}
.feed li.kmessage .fk{color:var(--ever)}
.feed .empty{color:var(--faint);padding:22px 15px;text-align:center}

.cform{border:1px solid var(--rule);background:var(--card);border-radius:var(--r);
  padding:20px;margin-bottom:26px}
.cform h2{font-family:var(--serif);font-size:20px;font-weight:500;margin:0 0 4px}
.cform p.h{font-size:13.5px;color:var(--muted);margin:0 0 16px;line-height:1.5}
.cform .row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cform label{display:block;margin-bottom:12px}
.cform label>span{display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--muted);margin-bottom:6px}
.cform input,.cform select{width:100%;padding:10px 12px;border:1px solid var(--rule);
  border-radius:var(--r);background:var(--paper);font:inherit;font-size:14.5px;color:var(--ink)}
.cform input:focus,.cform select:focus{outline:none;border-color:var(--ever);
  box-shadow:0 0 0 3px var(--ever-lt)}
.cmsg{font-size:13.5px;margin:12px 0 0;min-height:1.2em}
.cmsg.ok{color:var(--ever)}
.cmsg.err{color:#B4472F}

/* ---- leads panel ---- */
.lead-head{display:flex;align-items:center;justify-content:space-between;
  gap:12px;margin-bottom:13px;flex-wrap:wrap}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--rule);
  border-radius:var(--r);overflow:hidden;margin-bottom:14px;background:var(--card)}
.kpis div{padding:11px 13px;border-right:1px solid var(--rule)}
.kpis div:last-child{border-right:0}
.kpis dt{font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--faint);font-weight:700;margin:0 0 3px}
.kpis dd{margin:0;font-family:var(--serif);font-size:24px;color:var(--ink);
  font-variant-numeric:tabular-nums;line-height:1}
.ctable.leads td{font-size:13px;padding:10px 10px 10px 0}
.ctable.leads .who{color:var(--ink)}
.ctable.leads .sub{font-size:11.5px;color:var(--faint);margin-top:2px}
.optin{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;
  padding:3px 7px;border-radius:2px;background:var(--ever-lt);color:var(--ever-dk)}
.optin.off{background:var(--paper-2);color:var(--faint)}
.vsm{font-size:11.5px;font-weight:700;letter-spacing:.04em}
.vsm.yes{color:var(--ever)}
.vsm.no{color:var(--faint)}
.vsm.maybe{color:var(--amber)}
.won{font-size:10px;letter-spacing:.09em;text-transform:uppercase;font-weight:700;
  color:var(--ever);display:block;margin-top:3px}
.feed li.klead{border-left-color:var(--amber)}
.feed li.klead .fk{color:var(--amber)}
