/* TeenConnect Celebrity Titles v1 — pure CSS, no image assets */

/* Shared premium title badge proportions */
.profile-title-badge.profile-title-title_tinpartner,
.profile-title-badge.profile-title-admin_tinpartner_infinity_title{
  --tc-title-h:30px;
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:var(--tc-title-h)!important;
  min-width:104px!important;
  padding:0 15px 0 30px!important;
  border-radius:10px!important;
  overflow:hidden!important;
  isolation:isolate!important;
  white-space:nowrap!important;
  line-height:1!important;
  font-weight:900!important;
  font-size:11px!important;
  letter-spacing:.02em!important;
  text-decoration:none!important;
  vertical-align:middle!important;
  transform:translateZ(0);
}

/* TIN PARTNER — celebrity / official partner, elegant not overdone */
.profile-title-badge.profile-title-title_tinpartner{
  color:#f6fbff!important;
  border:1px solid rgba(174,222,255,.72)!important;
  background:
    radial-gradient(circle at 18% 10%,rgba(126,225,255,.18),transparent 27%),
    linear-gradient(115deg,#111b3a 0%,#17305d 38%,#3c3676 72%,#171b3c 100%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.08),
    inset 0 8px 18px rgba(255,255,255,.035),
    0 3px 9px rgba(26,45,91,.20),
    0 0 10px rgba(92,188,255,.14)!important;
  text-shadow:0 1px 5px rgba(87,198,255,.20)!important;
}
.profile-title-badge.profile-title-title_tinpartner:before{
  content:"✦"!important;
  position:absolute!important;
  left:10px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  color:#a8edff!important;
  font-size:13px!important;
  line-height:1!important;
  text-shadow:0 0 8px rgba(112,221,255,.75)!important;
  animation:tcTitlePartnerStar 2.6s ease-in-out infinite!important;
}
.profile-title-badge.profile-title-title_tinpartner:after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  top:-55%!important;
  left:-35%!important;
  width:24%!important;
  height:210%!important;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.26),transparent)!important;
  transform:skewX(-18deg)!important;
  animation:tcTitlePartnerSheen 5.2s ease-in-out infinite!important;
}

/* TIN OPERATOR — exclusive staff / public-facing operator title */
.profile-title-badge.profile-title-admin_tinpartner_infinity_title{
  min-width:112px!important;
  padding-left:32px!important;
  color:#fff1bd!important;
  border:1px solid rgba(246,207,104,.80)!important;
  background:
    radial-gradient(circle at 24% 0%,rgba(103,211,255,.14),transparent 28%),
    linear-gradient(115deg,#12192d 0%,#1a2442 40%,#352845 72%,#18192a 100%)!important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,.07),
    inset 0 -10px 22px rgba(98,80,180,.08),
    0 3px 10px rgba(21,28,57,.24),
    0 0 10px rgba(246,203,100,.13)!important;
  text-shadow:0 1px 6px rgba(255,211,103,.25)!important;
}
.profile-title-badge.profile-title-admin_tinpartner_infinity_title:before{
  content:"♛"!important;
  position:absolute!important;
  left:9px!important;
  top:50%!important;
  transform:translateY(-52%)!important;
  color:#ffdc75!important;
  font-size:14px!important;
  line-height:1!important;
  text-shadow:0 0 8px rgba(255,204,75,.62)!important;
  animation:tcTitleOperatorCrown 2.9s ease-in-out infinite!important;
}
.profile-title-badge.profile-title-admin_tinpartner_infinity_title:after{
  content:""!important;
  position:absolute!important;
  z-index:-1!important;
  inset:0!important;
  border-radius:inherit!important;
  background:linear-gradient(100deg,transparent 15%,rgba(100,220,255,.08) 38%,rgba(255,221,126,.15) 50%,rgba(213,125,255,.08) 62%,transparent 85%)!important;
  background-size:220% 100%!important;
  animation:tcTitleOperatorAura 4.8s ease-in-out infinite!important;
}

/* Store cards get a slightly larger preview while real profile stays compact. */
.cosmetic-preview .profile-title-badge.profile-title-title_tinpartner,
.cosmetic-preview .profile-title-badge.profile-title-admin_tinpartner_infinity_title,
.profile-cosmetic-preview .profile-title-badge.profile-title-title_tinpartner,
.profile-cosmetic-preview .profile-title-badge.profile-title-admin_tinpartner_infinity_title{
  --tc-title-h:34px;
  min-width:132px!important;
  font-size:12px!important;
  transform:scale(1.04)!important;
}

@keyframes tcTitlePartnerStar{
  0%,100%{opacity:.72;transform:translateY(-50%) scale(.88) rotate(0deg)}
  50%{opacity:1;transform:translateY(-50%) scale(1.12) rotate(18deg)}
}
@keyframes tcTitlePartnerSheen{
  0%,24%{left:-35%;opacity:0}
  34%{opacity:.9}
  64%{opacity:.45}
  78%,100%{left:125%;opacity:0}
}
@keyframes tcTitleOperatorCrown{
  0%,100%{opacity:.78;transform:translateY(-52%) scale(.92)}
  50%{opacity:1;transform:translateY(-54%) scale(1.05)}
}
@keyframes tcTitleOperatorAura{
  0%,100%{background-position:0% 50%;opacity:.62}
  50%{background-position:100% 50%;opacity:1}
}

@media(max-width:520px){
  .profile-title-badge.profile-title-title_tinpartner,
  .profile-title-badge.profile-title-admin_tinpartner_infinity_title{
    --tc-title-h:28px;
    min-width:96px!important;
    padding-right:12px!important;
    font-size:10px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .profile-title-badge.profile-title-title_tinpartner:before,
  .profile-title-badge.profile-title-title_tinpartner:after,
  .profile-title-badge.profile-title-admin_tinpartner_infinity_title:before,
  .profile-title-badge.profile-title-admin_tinpartner_infinity_title:after{animation:none!important}
}
