:root {
	--bg-dark: #0a0a0f;
	--bg-card: rgba(255, 255, 255, 0.03);
	--bg-glass: rgba(255, 255, 255, 0.05);
	--border-glass: rgba(255, 255, 255, 0.08);
	--border-glow: rgba(255, 255, 255, 0.15);
	--text-primary: #ffffff;
	--text-secondary: rgba(255, 255, 255, 0.6);
	--text-dim: rgba(255, 255, 255, 0.4);
	--accent-red: #ff3d5a;
	--accent-green: #00d4aa;
	--accent-gold: #ffd700;
	--accent-blue: #4d9fff;
	--glow-red: rgba(255, 61, 90, 0.4);
	--glow-green: rgba(0, 212, 170, 0.4);
	--glow-gold: rgba(255, 215, 0, 0.3);
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html {
	scroll-behavior: smooth;
}
body {
  display:flex;
  justify-content:center;
  align-items:center;
  height:100vh;
  font-family: 'Space Grotesk', sans-serif;
  font-weight: 400;
  background: var(--bg-dark);
  color: var(--text-primary);
  line-height: 1.6;
  overflow-x: hidden;
}
.card {
  background:#151515;
  padding:30px;
  border-radius:12px;
  width:320px;
  box-shadow:0 0 30px rgba(0,0,0,.6);
}
.step { margin:10px 0; }
.btn {
  display:block;
  margin:8px 0;
  padding:10px;
  background:#333;
  color:#fff;
  text-align:center;
  border-radius:6px;
  text-decoration:none;
}
.confirm { background:#1e7f43; }
.done { color:#4caf50; }
.profile {
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:10px;
}
.profile img {
  width:40px;
  border-radius:50%;
}
.logo {
  text-align: center;
  margin-bottom: 15px;
}

.logo img {
  max-width: 120px;
  height: auto;
}
.message {
    position: fixed;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    padding: 14px 22px;
    border-radius: 6px;
    font-weight: 600;
    z-index: 9999;
    animation: fadeIn 0.3s ease;
}
.message.success {
    background: #2ecc71;
    color: #fff;
}

.message.error {
    background: #e74c3c;
    color: #fff;
}

.message.info {
    background: #f1c40f;
    color: #000;
}


.message.success {
    background: #2ecc71;
    color: #fff;
}

.message.error {
    background: #e74c3c;
    color: #fff;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translate(-50%, 10px); }
    to { opacity: 1; transform: translate(-50%, 0); }
}

/* Confirm success state */
.btn.success {
    background: #2ecc71;
    cursor: default;
}
.grid-bg {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 0;
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
	background-size: 60px 60px;
}

.grid-bg::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: radial-gradient(ellipse at 50% 0%, rgba(255, 61, 90, 0.08) 0%, transparent 50%),
		radial-gradient(ellipse at 80% 50%, rgba(0, 212, 170, 0.05) 0%, transparent 40%),
		radial-gradient(ellipse at 20% 80%, rgba(255, 215, 0, 0.05) 0%, transparent 40%);
}
/* Floating Particles */
.particles {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 1;
	overflow: hidden;
}

.particle {
	position: absolute;
	width: 4px;
	height: 4px;
	background: var(--accent-gold);
	border-radius: 50%;
	opacity: 0.3;
	animation: float-particle linear infinite;
}

.particle:nth-child(odd) {
	background: var(--accent-red);
}

.particle:nth-child(3n) {
	background: var(--accent-green);
}

@keyframes float-particle {
	0% {
		transform: translateY(100vh) rotate(0deg);
		opacity: 0;
	}

	10% {
		opacity: 0.3;
	}

	90% {
		opacity: 0.3;
	}

	100% {
		transform: translateY(-20px) rotate(360deg);
		opacity: 0;
	}
}

/* Snowflakes */
.snowflake {
	position: absolute;
	color: rgba(255, 255, 255, 0.6);
	font-size: 1rem;
	animation: snowfall linear infinite;
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.3);
}

@keyframes snowfall {
	0% {
		transform: translateY(-20px) rotate(0deg);
	}

	100% {
		transform: translateY(100vh) rotate(360deg);
	}
}