/* ══════════════════════════════════════════════════════════════════════════
   UPLIST — portfolio
   ─────────────────────────────────────────────────────────────────────────
   Two states today: not connected, and connected with nothing to hold. The
   holdings table lands here when there are launches to hold — a position on
   UPLIST has two values, not one, and both belong in the same row.
   ══════════════════════════════════════════════════════════════════════════ */

.pf{padding-top:32px;padding-bottom:24px}
.pf-hd{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-bottom:22px}
.pf-hd h1{font-size:clamp(26px,3.6vw,36px);letter-spacing:-.035em}
.pf-hd .who{display:flex;align-items:center;gap:9px;margin-top:8px;font-size:13px;color:var(--ink-3)}
.pf-hd .sp{flex:1}

/* ══ connect prompt ══ */
.connect{
  display:grid;place-items:center;text-align:center;padding:74px 24px;
  border:1px dashed var(--rule);border-radius:var(--r);background:var(--sheet)
}
.connect .mk{width:44px;height:44px;margin-bottom:18px;opacity:.85}
.connect h2{font-size:22px;margin-bottom:9px;letter-spacing:-.03em}
.connect p{max-width:48ch;font-size:14.5px;line-height:1.6;color:var(--ink-3);margin-bottom:20px}
