:root{
  --bg1: #0f0f1a;
  --bg2: #1a0f1a;
  --accent: #ff69b4; /* hot pink */
  --accent2: #ffd700; /* gold */
  --glass: rgba(255,255,255,0.06);
  --glass-border: rgba(255,255,255,0.12);
  --text: #f7f7ff;
  --muted: #bdbde6;
}
html, body {
  height: 100%;
  margin: 0;
  overflow: hidden; /* canvas backdrop */
  background: radial-gradient(circle at 20% 20%, var(--bg2), var(--bg1)), #000;
  color: var(--text);
  font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Inter, "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
}
#scene { position: fixed; inset: 0; display: block; }

/* UI overlay */
.overlay {
  position: fixed; inset: 0; display: grid; place-items: center; pointer-events: none; padding: 6vmin; }
.card {
  pointer-events: auto;
  backdrop-filter: saturate(160%) blur(8px);
  -webkit-backdrop-filter: saturate(160%) blur(8px);
  background: linear-gradient(180deg, var(--glass), transparent);
  border: 1px solid var(--glass-border);
  border-radius: 24px;
  padding: clamp(16px, 3.5vmin, 40px);
  box-shadow: 0 40px 120px rgba(0,0,0,0.35);
  text-align: center;
  max-width: 920px; width: min(92vw, 1000px);
}
.title {
  font-size: clamp(28px, 5.4vmin, 64px);
  margin: 0 0 .2em;
  line-height: 1.05;
  letter-spacing: .02em;
}
.title .gold { color: var(--accent2); }
.tag {
  display: inline-block; margin-bottom: 1rem;
  font-weight: 600; font-size: clamp(12px, 1.5vmin, 14px);
  padding: .35rem .7rem; border-radius: 999px; background: rgba(255,255,255,.08); color: var(--muted);
  border: 1px solid var(--glass-border);
}
.subtitle { color: var(--muted); font-size: clamp(14px, 2.2vmin, 18px); margin: 0 0 1.2rem; }
.cta {
  display: inline-flex; align-items: center; gap: .6em;
  padding: .9em 1.2em; border-radius: 14px; border: 1px solid var(--glass-border);
  background: linear-gradient(180deg, rgba(255,105,180,.25), rgba(255,105,180,.05));
  color: white; text-decoration: none; font-weight: 700; letter-spacing: .02em;
  box-shadow: 0 10px 30px rgba(255,105,180,.25), inset 0 1px 0 rgba(255,255,255,.25);
  transition: transform .15s ease, box-shadow .15s ease; will-change: transform;
}
.cta:hover{ transform: translateY(-1px); box-shadow: 0 18px 44px rgba(255,105,180,.35), inset 0 1px 0 rgba(255,255,255,.35); }
.cta small { opacity:.9; font-weight:600; }

.links { display:flex; justify-content:center; gap:1rem; flex-wrap:wrap; margin-top:1rem; }
.links a { color: var(--muted); text-decoration: none; border-bottom: 1px dashed rgba(255,255,255,.25); }
.links a:hover { color: var(--text); border-bottom-color: rgba(255,255,255,.5); }

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  #scene { display: none; }
  body { background: radial-gradient(1200px 900px at 40% 30%, #1f1530, #0b0c13 50%, #06070a); }
}
