.body {
  margin: 0;
  padding: 0;
}

.full-bg {
  min-height: 100vh;
  padding-top: 60px;
  background-color: transparent; /* user-defined in base if no theme */
}

.link-wrapper a {
  width: 100%;
  max-width: 500px;
  margin: 0 auto;
  display: block;
}

/* -------- Top bar / floating buttons -------- */

.top-bar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  background: rgba(255, 255, 255, 0.95); /* or transparent based on theme */
  transition: top 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
  box-shadow: none;
}

.top-bar.show-shadow {
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}

.floating-top-button {
  position: fixed;
  top: 20px;
  right: 20px; /* Or use left: 50%; transform: translateX(-50%) for center */
  z-index: 1000;
  transition: top 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.floating-top-button a.btn-glass {
  padding: 0.5rem 1rem;
  font-weight: bold;
  border-radius: 999px;
  border: 2px solid rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.15);
  color: white;
  backdrop-filter: blur(8px);
  text-decoration: none;
  transition: all 0.3s ease;
}

.floating-top-button a.btn-glass:hover {
  background: rgba(255, 255, 255, 0.25);
  color: white;
}

/* -------- Background video -------- */

.background-video {
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  min-width: 100vw;
  min-height: 100vh;
  object-fit: cover;
  opacity: 0.6;
  pointer-events: none;
}

/* -------- Scroll area / scrollbar -------- */

.link-wrapper {
  padding-top: 2.5rem;
  padding-bottom: 4rem;          /* extra space at bottom so last link is visible */
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;         /* Firefox hide scrollbar */
}

.link-wrapper::-webkit-scrollbar {
  width: 0;
  height: 0;                     /* Chrome/Safari hide scrollbar */
}

@media (max-width: 768px) {
  .link-wrapper {
    padding-top: 3rem;           /* slightly more for smaller screens */
  }
}

/* -------- Default icon color (before brand overrides) -------- */

.glow-link i {
  color: #444 !important;
}

/* -------- Brand colors for platform icons -------- */

.glow-link i.bi-instagram { color: #E1306C !important; }
.glow-link i.bi-linkedin  { color: #0077B5 !important; }
.glow-link i.bi-twitter   { color: #1DA1F2 !important; }
.glow-link i.bi-youtube   { color: #FF0000 !important; }
.glow-link i.bi-facebook  { color: #1877F2 !important; }
.glow-link i.bi-tiktok    { color: #000000 !important; }
.glow-link i.bi-pinterest { color: #E60023 !important; }
.glow-link i.bi-reddit    { color: #FF5700 !important; }
.glow-link i.bi-snapchat  { color: #FFFC00 !important; }
.glow-link i.bi-github    { color: #181717 !important; }
.glow-link i.bi-medium    { color: #02B875 !important; }
.glow-link i.bi-spotify   { color: #1DB954 !important; }
.glow-link i.bi-cash-coin { color: #00C244 !important; }
.glow-link i.bi-discord   { color: #5865F2 !important; }
.glow-link i.bi-telegram  { color: #229ED9 !important; }
.glow-link i.bi-threads   { color: #111111 !important; }
.glow-link i.bi-soundwave { color: #FF7700 !important; }

/* -------- Shop button -------- */

.btn-shop {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  max-width: none !important;
  padding: 0.45rem 1.2rem;
  font-weight: 600;
  font-size: 0.95rem;
  border-radius: 999px;
  white-space: nowrap;
  margin: 0 auto;
  text-decoration: none !important;
  color: #000;
}

.btn-shop:hover {
  background-color: #d1c8e3 !important;
  border-color: #d1c8e3 !important;
  color: #000 !important;
  text-decoration: none !important;
}

/* =========================================================
   LINK PILL LAYOUT (PUBLIC PROFILE)
   - title centered
   - platform icon on far left
   - uploaded thumbnail in same left slot
   ========================================================= */

/* Pill itself */
.link-wrapper .glow-link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;       /* keeps the title centered */
  min-height: 52px;
  padding: 0.85rem 1.4rem;
  padding-left: 64px;            /* room for icon/thumbnail column */
  font-weight: 600;
  font-size: 1rem;
  text-decoration: none !important;
}

/* Shared position for platform icon AND thumbnail */
.link-wrapper .glow-link .platform-icon,
.link-wrapper .glow-link .link-thumb {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
}

/* Platform icon size */
.link-wrapper .glow-link .platform-icon {
  font-size: 20px;
  line-height: 1;
}

/* Thumbnail size + style (same column as icon) */
.link-wrapper .glow-link .link-thumb {
  width: 32px;
  height: 32px;
  border-radius: 10px;
  object-fit: cover;
  border: 2px solid rgba(255,255,255,0.85);
  box-shadow: 0 2px 6px rgba(0,0,0,0.25);
  pointer-events: none;          /* whole pill is clickable, not the image */
}
/* --- Full-screen video background for public profile --- */
.profile-video-bg {
  position: fixed;
  inset: 0;
  z-index: -1;         /* sit behind everything */
  overflow: hidden;
}

.profile-video {
  width: 100%;
  height: 100%;
  object-fit: cover;   /* fill screen without distortion */
}

/* Make sure the main content sits above the video */
.full-bg {
  position: relative;
  z-index: 1;
}
