body.dark{background:var(--dark)}
.linktree{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:64px 24px}
.linktree .lt-card{position:relative;width:100%;max-width:420px;text-align:center}
.linktree .avatar{width:88px;height:88px;border-radius:50%;background:#fff;padding:14px;margin:0 auto 20px;box-shadow:0 1px 2px rgba(15,23,42,.06)}
.linktree .avatar img{width:100%;height:100%;object-fit:contain}
.linktree h1{font-size:clamp(24px,6vw,30px);line-height:1.15;letter-spacing:-.03em;font-weight:800;margin:0 0 8px}
.linktree .bio{font-size:15px;line-height:1.55;color:rgba(255,255,255,.68);margin:0 0 20px}

/* live status strip — the one thing no other bio-link page can honestly show */
.lt-status{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-size:12px;color:rgba(255,255,255,.7);margin:0 0 28px}
.lt-status a{color:inherit}
.lt-dots{display:inline-flex;gap:5px}
.lt-dot{width:7px;height:7px;border-radius:50%;background:rgba(255,255,255,.25);transition:background .3s ease}
.lt-dot.up{background:#3ecf6c;box-shadow:0 0 6px rgba(62,207,108,.7)}
.lt-dot.down{background:#ef4444}

.linktree .links{display:flex;flex-direction:column;gap:12px}
.linktree .link-btn{display:flex;align-items:center;justify-content:center;width:100%;height:52px;border-radius:14px;font-size:15px;font-weight:600;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.linktree .link-btn:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);transform:translateY(-1px)}
.linktree .link-btn.primary{background:var(--primary);color:var(--primary-ink);border-color:transparent}
.linktree .link-btn.primary:hover{background:var(--primary-strong)}

/* inline quote — the first step of the form, right on the page */
.lt-quote{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);margin-bottom:24px;text-align:left}
.lt-quote .lt-quote-label{font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--primary);margin-bottom:2px}
.lt-quote input[type=text],.lt-quote input[type=email]{width:100%;height:44px;border-radius:11px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;font-family:inherit;font-size:14px;padding:0 14px}
.lt-quote input::placeholder{color:rgba(255,255,255,.4)}
.lt-quote input:focus{outline:none;border-color:var(--primary)}

/* case studies as preview cards, not plain text links */
.lt-cases{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
.lt-case{display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);text-align:left;transition:background .15s ease,border-color .15s ease,transform .15s ease}
.lt-case:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.22);transform:translateY(-1px)}
.lt-case img{width:48px;height:48px;border-radius:10px;object-fit:cover;flex:none}
.lt-case b{display:block;font-size:14px;font-weight:700;color:#fff}
.lt-case span{display:block;font-size:12.5px;color:rgba(255,255,255,.6);margin-top:2px}

.linktree .social{display:flex;justify-content:center;gap:14px;margin-top:28px}
.linktree .social a{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);color:#fff;transition:background .15s ease,border-color .15s ease}
.linktree .social a:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24)}
.linktree .foot-note{margin-top:36px;font-size:12px;color:rgba(255,255,255,.4)}
.linktree .foot-note a{color:rgba(255,255,255,.6);border-bottom:1px solid rgba(255,255,255,.24)}
