:root{
  --bg1:#e46dda; --bg2:#119cbe; --card:#ec74e2; --ink:#1f2937; --muted:#6b7280; --line:#e5e7eb;
  --brand:#111827; --radius:16px; --shadow:0 8px 24px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu; color:var(--ink); background:linear-gradient(180deg,var(--bg1),var(--bg2));}
.wrap{max-width:880px;margin:0 auto;padding:28px 16px 56px}
header{display:flex;align-items:center;justify-content:space-between;gap:12px}
h1{font-size:28px;margin:0;font-weight:800;letter-spacing:-.02em}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.65rem 1rem;border:1px solid var(--line);border-radius:14px;background:#fff;color:#111;font-weight:600;cursor:pointer}
.btn.brand{background:var(--brand);color:#fff;border-color:#000}
.btn.small{padding:.4rem .7rem;border-radius:12px;font-size:.9rem}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}
.muted{color:var(--muted)}
.badge{border:1px solid var(--line);padding:2px 8px;border-radius:999px;font-size:12px;font-weight:600;color:#374151}
input{width:100%;border:1px solid var(--line);border-radius:12px;padding:.65rem .8rem;font:inherit}
footer{margin-top:36px;text-align:center;color:#9ca3af;font-size:12px}
h2{margin:0 0 6px 0;font-size:22px;font-weight:800}