* { box-sizing: border-box; }
html, body { height: 100%; }
body { margin: 0; color: #e7e7ea; background:
  radial-gradient(1200px 600px at 20% 10%, #0a84ff 0%, transparent 60%),
  radial-gradient(900px 500px at 80% 70%, #bf5af2 0%, transparent 62%),
  linear-gradient(180deg, #0b132b 0%, #0a0f1e 100%);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}
body::before { content: ""; position: fixed; inset: 0;
  background: rgba(0,0,0, var(--bg-overlay-opacity, 0));
  backdrop-filter: blur(var(--bg-blur, 0px)); pointer-events: none; z-index: 0; }
.wrap { display: grid; min-height: 100vh; grid-template-rows: auto 1fr auto; }
.topbar { position: fixed; top: 18px; left: 50%; transform: translateX(-50%); display: grid; grid-auto-flow: column; align-items: center; gap: 18px; padding: 12px 18px; backdrop-filter: blur(10px); background: rgba(10, 15, 30, .5); border: 1px solid rgba(226,232,240,.12); border-radius: 14px; box-shadow: 0 10px 30px rgba(2,6,23,.4); }
.brand { font-weight: 800; letter-spacing: .6px; font-size: 22px; }

@media (max-width: 640px) {
  .brand { font-size: 16px; }
  .topbar { padding: 10px 14px; gap: 12px; }
}
.hint { position: fixed; bottom: 12px; left: 50%; transform: translateX(-50%); opacity: .7; font-size: 12px; padding: 6px 10px; background: rgba(2,6,23,.45); border: 1px solid rgba(226,232,240,.12); border-radius: 8px; }