:root {
  --primary: #0f172a;
  --accent: #22c55e;
  --glass: rgba(255,255,255,.08);
}

* { margin:0; padding:0; box-sizing:border-box; font-family:Inter, sans-serif; }

body {
  background: linear-gradient(135deg,#020617,#000);
  color:#fff; min-height:100vh;
}

.top {
  text-align:center;
  padding:2rem 1rem;
}

.logo { height:60px; cursor:pointer; margin-bottom:1rem; }

.grid {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:1.5rem; padding:2rem;
}

.vote-card {
  background:var(--glass);
  backdrop-filter:blur(12px);
  border-radius:20px;
  padding:1.5rem;
  text-align:center;
  position:relative;
  transition:.3s;
}

.vote-card:hover { transform:translateY(-6px); box-shadow:0 20px 40px rgba(0,0,0,.5); }

.vote-card img { width:100%; height:180px; object-fit:cover; border-radius:12px; }

.vote-card h3 { font-size:1.3rem; margin:0.5rem 0; }

.vote-card p { opacity:.85; margin:.3rem 0; }

.vote-card .socials {
  display:flex; justify-content:center; gap:.8rem; margin:.5rem 0;
}

.vote-card .socials a {
  color:var(--accent);
  text-decoration:none;
  font-weight:bold;
  background:rgba(0,0,0,.3);
  padding:.3rem .6rem;
  border-radius:8px;
  transition:.2s;
}

.vote-card .socials a:hover { background:var(--accent); color:#000; }

.vote-card button {
  margin-top:1rem; width:100%;
  padding:.8rem; border:none; border-radius:12px;
  background:var(--accent); font-weight:bold; cursor:pointer;
  transition:.2s;
}

.vote-card button:hover { background:#16a34a; }

footer { text-align:center; opacity:.5; padding:2rem; }



.profile {
  display:flex;
  justify-content:center;
  padding:2rem;
}

.profile-card {
  max-width:500px;
  background:rgba(255,255,255,.08);
  backdrop-filter:blur(12px);
  border-radius:20px;
  padding:2rem;
  text-align:center;
}

.profile-card img {
  width:160px;
  height:160px;
  border-radius:50%;
  object-fit:cover;
}

.stats {
  display:flex;
  justify-content:space-around;
  margin:1.5rem 0;
}

.stats div span {
  display:block;
  font-size:.8rem;
  opacity:.6;
}

.vote-box input {
  width:100%;
  padding:.6rem;
  border-radius:10px;
  border:none;
  margin:.5rem 0;
}

.share-box {
  display:flex;
  gap:.6rem;
  justify-content:center;
  flex-wrap:wrap;
}

.share-box button, .share-box a {
  padding:.4rem .8rem;
  border-radius:8px;
  background:#22c55e;
  color:#000;
  text-decoration:none;
  font-weight:600;
}
.share-box button:hover, .share-box a:hover {
  background:#16a34a;
}