/* ==========================================================
   BuddySocial v10.04
   AUTHORITATIVE PIMP -> REAL PROFILE RENDER SYNC
   Loaded last so all saved Pimp settings visibly win.
   ========================================================== */

@keyframes bsPimpFrameDuo{
  0%,100%{border-color:var(--frame-color,#b8cde0);box-shadow:0 0 2px transparent}
  50%{border-color:var(--frame-color2,#f39a16);box-shadow:0 0 12px color-mix(in srgb,var(--frame-color2,#f39a16) 55%,transparent)}
}
@keyframes bsPimpFramePulse{
  0%,100%{border-color:var(--frame-color,#b8cde0);box-shadow:0 0 2px color-mix(in srgb,var(--frame-color,#b8cde0) 32%,transparent)}
  50%{border-color:var(--frame-color2,#f39a16);box-shadow:0 0 15px color-mix(in srgb,var(--frame-color2,#f39a16) 72%,transparent)}
}
@keyframes bsPimpFrameNeon{
  0%,100%{box-shadow:0 0 4px var(--frame-color,#00eaff),0 0 8px color-mix(in srgb,var(--frame-color,#00eaff) 55%,transparent)}
  50%{box-shadow:0 0 7px var(--frame-color2,#ff3bc8),0 0 18px color-mix(in srgb,var(--frame-color2,#ff3bc8) 72%,transparent)}
}
@keyframes bsPimpRainbowMove{
  0%{background-position:0 50%}
  100%{background-position:300% 50%}
}
@keyframes bsPimpTitleRainbow{
  0%{background-position:0 50%}
  100%{background-position:300% 50%}
}
@keyframes bsPimpGlobalRgb{
  0%{color:var(--profile-text1,#2b608c)}
  25%{color:#ff3d9f}
  50%{color:#1ab9ff}
  75%{color:#64cf35}
  100%{color:var(--profile-text2,#f39a16)}
}
@keyframes bsPimpGlitter{
  0%,100%{filter:brightness(1);text-shadow:0 0 2px rgba(255,255,255,.65)}
  50%{filter:brightness(1.35);text-shadow:0 0 4px #fff,1px 1px 0 currentColor}
}
@keyframes bsPimpBlockRgb{
  0%{color:var(--block-text1,var(--block-text-color,#24364b))}
  25%{color:#ff2da1}
  50%{color:#15a9ff}
  75%{color:#7cdd19}
  100%{color:var(--block-text2,#f39a16)}
}

/* Global profile geometry / colors */
body[data-page="profile"] .classic-profile.hyves-profile-layout{
  font-family:var(--profile-font,Arial,Helvetica,sans-serif) !important;
  color:var(--profile-body-text,#26384d) !important;
}

body[data-page="profile"] .classic-profile.hyves-profile-layout .profile-columns{
  grid-template-columns:
    var(--profile-left-width,260px)
    minmax(0,1fr)
    var(--profile-right-width,310px) !important;
  gap:var(--profile-column-gap,12px) !important;
}

body[data-page="profile"] .classic-profile.hyves-profile-layout a{
  color:var(--profile-link,#2367a5);
}

body[data-page="profile"] .classic-profile.hyves-profile-layout :is(small,.muted){
  color:var(--profile-muted,#6d7f91);
}

body[data-page="profile"] .classic-profile.hyves-profile-layout .retro-box{
  border-radius:var(--profile-box-radius,7px);
  box-shadow:var(--profile-box-shadow,none);
}

/* Global frame modes on ALL real profile frames */
body[data-page="profile"] .classic-profile.hyves-profile-layout.frame-mode-static .retro-box{
  border:2px solid var(--frame-color,#b8cde0) !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.frame-mode-duo .retro-box{
  border:2px solid var(--frame-color,#b8cde0) !important;
  animation:bsPimpFrameDuo var(--frame-speed,5s) ease-in-out infinite !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.frame-mode-pulse .retro-box{
  border:2px solid var(--frame-color,#b8cde0) !important;
  animation:bsPimpFramePulse var(--frame-speed,5s) ease-in-out infinite !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.frame-mode-neon .retro-box{
  border:2px solid var(--frame-color,#00eaff) !important;
  animation:bsPimpFrameNeon var(--frame-speed,5s) ease-in-out infinite !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.frame-mode-rainbow .retro-box{
  position:relative !important;
  border:2px solid transparent !important;
  background:
    linear-gradient(var(--profile-surface,#fff),var(--profile-surface,#fff)) padding-box,
    linear-gradient(90deg,#ff3158,#ffb52e,#48d85f,#30a8ff,#8f56ff,#ff4ab8,#ff3158) border-box !important;
  background-size:auto,300% 100% !important;
  animation:bsPimpRainbowMove var(--frame-speed,5s) linear infinite !important;
}

/* Global title modes */
body[data-page="profile"] .classic-profile.hyves-profile-layout .retro-box-title{
  color:var(--profile-title-text,#fff) !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.title-mode-solid .retro-box-title{
  background:var(--skin-head,#f7a21b) !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.title-mode-gradient .retro-box-title{
  background:linear-gradient(180deg,var(--skin-head,#f7a21b),var(--skin-head2,#e98c05)) !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.title-mode-neon .retro-box-title{
  background:linear-gradient(90deg,var(--skin-head,#00eaff),var(--skin-head2,#ff3bc8)) !important;
  box-shadow:inset 0 0 8px rgba(255,255,255,.28),0 0 9px color-mix(in srgb,var(--skin-head2,#ff3bc8) 45%,transparent) !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.title-mode-rainbow .retro-box-title{
  background:linear-gradient(90deg,#ff3158,#ffb52e,#48d85f,#30a8ff,#8f56ff,#ff4ab8,#ff3158) !important;
  background-size:300% 100% !important;
  animation:bsPimpTitleRainbow var(--skin-head-speed,6s) linear infinite !important;
}

/* Global profile text effects */
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-rgb .retro-pad,
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-rgb .retro-pad a{
  animation:bsPimpGlobalRgb var(--profile-text-speed,5s) linear infinite !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-glitter .retro-pad,
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-glitter .retro-pad a{
  color:var(--profile-text1,#2b608c) !important;
  animation:bsPimpGlitter 1.15s steps(2,end) infinite !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-rgb_glitter .retro-pad,
body[data-page="profile"] .classic-profile.hyves-profile-layout.profile-text-rgb_glitter .retro-pad a{
  animation:
    bsPimpGlobalRgb var(--profile-text-speed,5s) linear infinite,
    bsPimpGlitter 1.15s steps(2,end) infinite !important;
}

/* Per-block settings ALWAYS win over global skin */
body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-controlled-block{
  border-color:var(--block-border-color,var(--frame-color,#b8cde0)) !important;
  border-radius:var(--block-radius,var(--profile-box-radius,7px)) !important;
  color:var(--block-text-color,var(--profile-body-text,#26384d)) !important;
  font-family:var(--block-font,var(--profile-font,Arial,Helvetica,sans-serif)) !important;
  font-size:var(--block-font-size,13px) !important;
  font-weight:var(--block-font-weight,normal) !important;
  text-align:var(--block-text-align,left) !important;
  text-transform:var(--block-text-transform,none) !important;
}

body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-controlled-block.retro-box,
body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-scrap-compose.pimp-controlled-block{
  background-color:var(--block-bg-rgba,rgba(255,255,255,1)) !important;
  background-image:var(--block-bg-layer,none) !important;
  background-position:center !important;
  background-size:cover !important;
  background-repeat:no-repeat !important;
}

body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-controlled-block > .retro-pad{
  background:transparent !important;
  color:inherit !important;
  text-align:inherit !important;
  text-transform:inherit !important;
}

/* Inner surfaces follow inner opacity */
body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-controlled-block :is(
  .profile-facts>div,
  .stats-list>div,
  .scrap,
  .scrap-thread,
  .scrap-form,
  .friend-grid>a,
  .profile-friends-preview>a,
  .mini-people>a,
  .blog-snippet,
  .song,
  .box-more,
  .mini-album,
  .gift-preview-item,
  .buddy-badge,
  .www-moment-card,
  input,
  textarea,
  select
){
  background-color:var(--block-inner-bg,rgba(255,255,255,.82)) !important;
  border-color:var(--block-border-color,#dfe6ef) !important;
}

/* Block title remains part of the block and follows its text choice */
body[data-page="profile"] .classic-profile.hyves-profile-layout .pimp-controlled-block > .retro-box-title{
  border-color:var(--block-border-color,#dfe6ef) !important;
  border-top-left-radius:calc(var(--block-radius,7px) - 1px) !important;
  border-top-right-radius:calc(var(--block-radius,7px) - 1px) !important;
}

/* All block text effects */
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-rgb:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  animation:bsPimpBlockRgb var(--block-text-speed,5s) linear infinite !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-glitter:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  color:var(--block-text1,var(--block-text-color,#24364b)) !important;
  animation:bsPimpGlitter 1.15s steps(2,end) infinite !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-rgb_glitter:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  animation:
    bsPimpBlockRgb var(--block-text-speed,5s) linear infinite,
    bsPimpGlitter 1.15s steps(2,end) infinite !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-glow:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  color:var(--block-text1,var(--block-text-color,#24364b)) !important;
  text-shadow:0 0 4px var(--block-text2,#f39a16),0 0 9px var(--block-text2,#f39a16) !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-neon:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  color:#fff !important;
  text-shadow:0 0 2px #fff,0 0 5px var(--block-text1,#00eaff),0 0 10px var(--block-text2,#ff3bc8),0 0 16px var(--block-text2,#ff3bc8) !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-shadow:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  color:var(--block-text1,var(--block-text-color,#24364b)) !important;
  text-shadow:2px 2px 0 var(--block-text2,#f39a16) !important;
}
body[data-page="profile"] .pimp-controlled-block[style*="--block-text-mode-outline:1"] :is(.retro-pad,.retro-pad a,.retro-box-title,button){
  color:var(--block-text1,var(--block-text-color,#24364b)) !important;
  text-shadow:
    -1px -1px 0 var(--block-text2,#f39a16),
     1px -1px 0 var(--block-text2,#f39a16),
    -1px  1px 0 var(--block-text2,#f39a16),
     1px  1px 0 var(--block-text2,#f39a16) !important;
}

/* Profile action sub-block is not a retro-box, still fully responds */
body[data-page="profile"] .classic-profile.hyves-profile-layout .profile-actionlist.pimp-controlled-block{
  background-color:var(--block-bg-rgba,transparent) !important;
  background-image:var(--block-bg-layer,none) !important;
  border:1px solid var(--block-border-color,#dfe6ef) !important;
  border-radius:var(--block-radius,7px) !important;
  padding:6px !important;
}
body[data-page="profile"] .classic-profile.hyves-profile-layout .profile-actionlist.pimp-controlled-block :is(a,button,.profile-action-state,.hyves-gift-btn){
  background:var(--block-inner-bg,rgba(255,255,255,.82)) !important;
  border-color:var(--block-border-color,#dfe6ef) !important;
  color:inherit;
}

/* Column controls + radius still responsive */
@media(max-width:900px){
  body[data-page="profile"] .classic-profile.hyves-profile-layout .profile-columns{
    grid-template-columns:1fr !important;
    gap:max(8px,var(--profile-column-gap,12px)) !important;
  }
}

@media(prefers-reduced-motion:reduce){
  body[data-page="profile"] .classic-profile.hyves-profile-layout *,
  body[data-page="profile"] .pimp-controlled-block *{
    animation-duration:.001ms !important;
    animation-iteration-count:1 !important;
  }
}

/* Chat is not part of profile Pimp rendering */
#friend-chat,
.friend-chat-window{
  animation:none;
}
