:root{
  --glass: rgba(15,23,42,.42);
  --border: rgba(148,163,184,.22);
}

.pp-glass{
  background: var(--glass);
  border: 1px solid var(--border);
  backdrop-filter: blur(12px);
}

.pp-card{
  background: rgba(15,23,42,.28);
  border: 1px solid rgba(148,163,184,.18);
}

.pp-navbtn{
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(15,23,42,.35);
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}
.pp-navbtn:hover{ background: rgba(15,23,42,.65); transform: translateY(-1px); }
.pp-navbtn.active{
  border-color: rgba(45,212,191,.35);
  box-shadow: 0 0 0 4px rgba(45,212,191,.10);
}

.pp-grad{
  background: linear-gradient(135deg, rgba(45,212,191,.95), rgba(139,92,246,.95));
}

.pp-fade{
  animation: ppFade .35s ease both;
}
@keyframes ppFade{
  from{ opacity:0; transform: translateY(8px); }
  to{ opacity:1; transform: translateY(0); }
}

.pp-toast{
  position: fixed;
  left: 50%;
  bottom: 20px;
  transform: translateX(-50%);
  padding: 10px 14px;
  border-radius: 14px;
  background: rgba(2,6,23,.86);
  border: 1px solid rgba(148,163,184,.24);
  opacity: 0;
  pointer-events: none;
  transition: opacity .2s ease, transform .2s ease;
  z-index: 9999;
}
.pp-toast.show{
  opacity: 1;
  transform: translateX(-50%) translateY(-2px);
}

.pp-btn-primary{
  background: linear-gradient(90deg, rgba(45,212,191,1), rgba(139,92,246,1));
  box-shadow: 0 18px 40px rgba(45,212,191,.08);
  transition: transform .15s ease, filter .15s ease;
}
.pp-btn-primary:hover{ transform: translateY(-1px); filter: brightness(1.06); }

.pp-btn-ghost{
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(15,23,42,.35);
  transition: transform .15s ease, background .15s ease;
}
.pp-btn-ghost:hover{ transform: translateY(-1px); background: rgba(15,23,42,.62); }

.pp-pill{
  border: 1px solid rgba(148,163,184,.22);
  background: rgba(15,23,42,.35);
}

.pp-vote{
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.pp-vote:hover{ transform: translateY(-2px); }
.pp-vote.selected{
  box-shadow: 0 0 0 4px rgba(139,92,246,.18);
  border-color: rgba(139,92,246,.45) !important;
}
