/* ============================================================
   BAUDHYANTRAM — Profile & Settings CSS
   ============================================================ */

/* ── Profile Tabs ─────────────────────────────────────────── */
.bsg-profile-tabs {
  display: flex;
  gap: .25rem;
  border-bottom: 2px solid var(--udash-border, #e2e8f0);
  margin-bottom: 1.5rem;
  overflow-x: auto;
}
.bsg-profile-tab {
  padding: .6rem 1.1rem;
  font-size: .82rem;
  font-weight: 650;
  color: #64748b;
  border: none;
  background: none;
  cursor: pointer;
  border-bottom: 2px solid transparent;
  margin-bottom: -2px;
  white-space: nowrap;
  transition: color .15s, border-color .15s;
  display: flex;
  align-items: center;
  gap: .4rem;
}
.bsg-profile-tab:hover { color: #1B2A4A; }
.bsg-profile-tab.active {
  color: var(--saffron, #D4621A);
  border-bottom-color: var(--saffron, #D4621A);
}

/* ── Avatar Upload ─────────────────────────────────────────── */
.bsg-avatar-wrap { position: relative; display: inline-block; cursor: pointer; }
.bsg-avatar-img  {
  width: 100px; height: 100px; border-radius: 50%;
  object-fit: cover; border: 3px solid var(--udash-border, #e2e8f0);
  transition: filter .2s;
}
.bsg-avatar-initials {
  width: 100px; height: 100px; border-radius: 50%;
  background: var(--navy, #1B2A4A); color: #fff;
  display: flex; align-items: center; justify-content: center;
  font-size: 2.4rem; font-weight: 800;
  border: 3px solid var(--udash-border, #e2e8f0);
}
.bsg-avatar-overlay {
  position: absolute; inset: 0; border-radius: 50%;
  background: rgba(0,0,0,.45); display: flex; align-items: center;
  justify-content: center; opacity: 0; transition: opacity .2s;
  color: #fff; font-size: .78rem; font-weight: 600; flex-direction: column; gap: .15rem;
}
.bsg-avatar-wrap:hover .bsg-avatar-overlay { opacity: 1; }
.bsg-avatar-wrap:hover .bsg-avatar-img     { filter: brightness(.7); }

/* ── Social Link Inputs ────────────────────────────────────── */
.bsg-social-input-group { position: relative; }
.bsg-social-input-group .bsg-social-icon-prefix {
  position: absolute; left: 0; top: 0; bottom: 0; width: 38px;
  display: flex; align-items: center; justify-content: center;
  color: #94a3b8; font-size: 1rem; pointer-events: none;
}
.bsg-social-input-group input {
  padding-left: 38px !important;
}

/* ── Stat cards on profile ─────────────────────────────────── */
.bsg-profile-stat {
  text-align: center; padding: .9rem .6rem;
  background: #f8fafc; border: 1px solid #e2e8f0;
  border-radius: 12px;
}
.bsg-profile-stat-val   { font-size: 1.5rem; font-weight: 800; color: #1B2A4A; line-height: 1.1; }
.bsg-profile-stat-label { font-size: .7rem; color: #94a3b8; font-weight: 600; text-transform: uppercase; letter-spacing: .05em; margin-top: .2rem; }

/* ── Password strength ─────────────────────────────────────── */
.bsg-pw-strength-bar { height: 4px; border-radius: 2px; background: #e2e8f0; overflow: hidden; margin-top: .3rem; }
.bsg-pw-strength-fill { height: 100%; border-radius: 2px; transition: width .3s, background .3s; width: 0%; }

/* ── Interest tags ─────────────────────────────────────────── */
.bsg-interest-wrap  { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .5rem; }
.bsg-interest-tag   {
  padding: .28rem .75rem; border-radius: 999px; font-size: .76rem; font-weight: 600;
  background: rgba(27,42,74,.07); color: #1B2A4A;
  border: 1.5px solid rgba(27,42,74,.12); cursor: pointer; transition: all .15s;
}
.bsg-interest-tag.selected {
  background: var(--saffron, #D4621A); color: #fff; border-color: var(--saffron, #D4621A);
}

/* ── Public Profile Page ───────────────────────────────────── */
.bsg-pub-profile-hero {
  background: linear-gradient(135deg, #1B2A4A 0%, #2d3f6e 60%, #1B2A4A 100%);
  padding: 3rem 0 2.5rem; color: #fff;
}
.bsg-pub-avatar {
  width: 110px; height: 110px; border-radius: 50%;
  object-fit: cover; border: 4px solid rgba(255,255,255,.25);
  box-shadow: 0 4px 24px rgba(0,0,0,.3);
}
.bsg-pub-avatar-placeholder {
  width: 110px; height: 110px; border-radius: 50%;
  background: rgba(255,255,255,.12); border: 4px solid rgba(255,255,255,.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 2.8rem; font-weight: 800; color: #fff;
}
.bsg-pub-name   { font-size: clamp(1.4rem,3vw,2rem); font-weight: 900; margin-bottom: .3rem; }
.bsg-pub-role   { font-size: .82rem; color: rgba(255,255,255,.65); margin-bottom: .5rem; }
.bsg-pub-bio    { font-size: .9rem; color: rgba(255,255,255,.78); max-width: 560px; line-height: 1.65; }
.bsg-pub-meta   { display: flex; gap: 1rem; flex-wrap: wrap; margin-top: .8rem; }
.bsg-pub-meta-item { font-size: .78rem; color: rgba(255,255,255,.55); display: flex; align-items: center; gap: .3rem; }
.bsg-pub-social { display: flex; gap: .6rem; margin-top: 1rem; flex-wrap: wrap; }
.bsg-pub-social-link {
  width: 36px; height: 36px; border-radius: 8px;
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.15);
  display: flex; align-items: center; justify-content: center;
  color: rgba(255,255,255,.8); font-size: 1rem; text-decoration: none; transition: all .2s;
}
.bsg-pub-social-link:hover { background: var(--saffron,#D4621A); border-color: var(--saffron,#D4621A); color: #fff; }
.bsg-pub-stat-bar { display: flex; gap: 2rem; flex-wrap: wrap; margin-top: 1.5rem; }
.bsg-pub-stat { text-align: center; }
.bsg-pub-stat-val   { font-size: 1.6rem; font-weight: 900; color: #fff; }
.bsg-pub-stat-label { font-size: .7rem; color: rgba(255,255,255,.5); text-transform: uppercase; letter-spacing: .06em; font-weight: 600; }
