:root{--tp-accent:#66d9ff;--tp-accent2:#bfa76a}
.tp-wrap{--bg:#0b0f14;--panel:#0f1620;--card:#121b26;--ink:#dbe7ff;--muted:#98a4b3;--radius:16px;--shadow:0 10px 30px rgba(0,0,0,.45)}
.tp-wrap .tp-shell{background:radial-gradient(900px 300px at 20% 0%, color-mix(in oklab, var(--tp-accent) 20%, transparent), transparent), radial-gradient(700px 250px at 80% 0%, color-mix(in oklab, var(--tp-accent2) 20%, transparent), transparent), var(--bg);color:var(--ink);padding:26px;border-radius:var(--radius);border:1px solid color-mix(in oklab, var(--tp-accent2) 25%, transparent);box-shadow:var(--shadow)}
.tp-intro{background:linear-gradient(180deg, rgba(15,22,32,.7), rgba(18,27,38,.7));border:1px solid color-mix(in oklab, var(--tp-accent2) 25%, transparent);padding:16px;border-radius:var(--radius);margin-bottom:18px}
.tp-field{display:inline-flex;flex-direction:column;align-items:center;margin:8px 12px;gap:6px}
.tp-input,.tp-select{background:var(--panel);border:1px solid color-mix(in oklab, var(--tp-accent) 35%, transparent);color:var(--ink);padding:12px 14px;border-radius:999px;min-width:240px;outline:none;transition:box-shadow .2s,border-color .2s,transform .04s}
.tp-input:focus,.tp-select:focus{border-color:var(--tp-accent);box-shadow:0 0 0 3px color-mix(in oklab, var(--tp-accent) 30%, transparent)}
.u-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 20px;color:#0b0f14;background:linear-gradient(180deg,#e7f8ff,#99e6ff);border:none;border-radius:999px;font-weight:700;letter-spacing:.2px;cursor:pointer;box-shadow:0 8px 20px rgba(102,217,255,.25);transition:transform .06s ease,box-shadow .2s ease}
.u-btn::after{content:"";position:absolute;inset:0;border-radius:999px;box-shadow:inset 0 -3px 0 0 rgba(11,15,20,.35), inset 0 0 0 1px rgba(11,15,20,.15);pointer-events:none}
.u-btn:hover{transform:translateY(-1px);box-shadow:0 10px 26px rgba(102,217,255,.35)}
.u-btn:active{transform:translateY(1px)}
.tp-card{background:var(--card);border:1px solid color-mix(in oklab, var(--tp-accent2) 35%, transparent);border-radius:var(--radius);padding:16px;margin-top:10px;box-shadow:var(--shadow)}
.tp-card h3{color:var(--tp-accent);margin:10px 0 8px;text-align:center}
.tp-meta{color:var(--muted);font-size:.95rem;margin-top:6px;text-align:center}
.tp-portrait{display:flex;justify-content:center;margin-top:4px}
.tp-portrait .circle{height:150px;width:150px;border-radius:50%;overflow:hidden;border:3px solid color-mix(in oklab, var(--tp-accent2) 55%, transparent);box-shadow:0 8px 22px rgba(0,0,0,.45);background:#0e141b}
.tp-portrait img{height:100%;width:100%;object-fit:cover;display:block;object-position:center}
.tp-content{margin-top:12px;line-height:1.7}
.tp-content p{margin:0 0 10px}
.tp-callout{border-inline-start:5px solid var(--tp-accent);background:var(--panel);padding:14px;margin:12px 0;border-radius:var(--radius);box-shadow:var(--shadow)}
@media (max-width:640px){.tp-input,.tp-select{min-width:100%}}