/* ==========================================================================
   YANO STARS — PUBLIC DANCER PROFILE
   ========================================================================== */

.prof-hero { position: relative; padding-top: 8rem; padding-bottom: 2.5rem; overflow: hidden; }
.prof-hero__bg {
  position: absolute; inset: 0;
  background:
    radial-gradient(ellipse 60% 60% at 20% 0%, rgba(255,193,7,0.14), transparent 60%),
    radial-gradient(ellipse 50% 50% at 90% 30%, rgba(255,106,0,0.1), transparent 60%);
}
.prof-hero__inner { position: relative; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 1.5rem; }
@media (min-width: 760px) { .prof-hero__inner { flex-direction: row; text-align: left; align-items: flex-end; } }

.prof-hero__avatar { position: relative; flex: 0 0 auto; }
.prof-hero__avatar img { width: 150px; height: 150px; border-radius: 50%; object-fit: cover; border: 4px solid var(--y-gold); box-shadow: var(--glow-gold-md); background: var(--y-black-raised); }
.prof-hero__crown { position: absolute; top: -8px; right: -4px; font-size: 2rem; }

.prof-hero__name { font-family: var(--font-display); font-size: clamp(2.4rem, 7vw, 4.5rem); line-height: 0.95; margin: 0.3rem 0 0.6rem; }
.prof-hero__bio { max-width: 56ch; }
.prof-hero__live { display: flex; align-items: center; gap: 0.8rem; flex-wrap: wrap; margin-top: 1rem; justify-content: center; }
@media (min-width: 760px) { .prof-hero__live { justify-content: flex-start; } }
.prof-hero__socials { display: flex; gap: 1rem; margin-top: 1rem; justify-content: center; }
@media (min-width: 760px) { .prof-hero__socials { justify-content: flex-start; } }
.prof-hero__socials a { font-size: 0.82rem; font-weight: 700; color: var(--y-gold); text-transform: uppercase; letter-spacing: 0.05em; }

.prof-stats {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; text-align: center;
  padding-block: 1.6rem; border-block: 1px solid var(--border-subtle); margin-bottom: 2rem;
}
.prof-stat__num { display: block; font-family: var(--font-display); font-size: clamp(1.6rem, 5vw, 2.6rem); color: var(--y-gold); line-height: 1; }
.prof-stat__label { font-size: 0.7rem; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.05em; }

.prof-body { padding-bottom: var(--sp-2xl); display: flex; flex-direction: column; gap: 2.5rem; }
.prof-section__title { font-family: var(--font-heading); font-size: 1.4rem; margin-bottom: 1.2rem; }
.prof-empty { color: var(--text-muted); }
.prof-empty-card { padding: 2.5rem; text-align: center; }
.prof-empty-card p { margin-bottom: 1rem; }

.prof-badges { display: flex; flex-wrap: wrap; gap: 0.8rem; }
.prof-badge { display: flex; align-items: center; gap: 0.5rem; padding: 0.6rem 1.1rem; background: rgba(255,193,7,0.08); border: 1px solid var(--border-gold); border-radius: var(--r-pill); font-weight: 700; font-size: 0.85rem; }
.prof-badge span { font-size: 1.2rem; }

.prof-videos { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; }
@media (min-width: 640px) { .prof-videos { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px){ .prof-videos { grid-template-columns: repeat(4, 1fr); } }
.prof-video { overflow: hidden; }
.prof-video__thumb { position: relative; aspect-ratio: 3/4; background: var(--y-black-raised); }
.prof-video__thumb img { width: 100%; height: 100%; object-fit: cover; }
.prof-video__play { position: absolute; inset: 0; margin: auto; width: 2.8rem; height: 2.8rem; display: flex; align-items: center; justify-content: center; background: rgba(255,193,7,0.9); color: var(--y-black); border-radius: 50%; }
.prof-video__badge { position: absolute; top: 0.6rem; left: 0.6rem; font-size: 0.66rem; font-weight: 800; background: var(--grad-fire); color: var(--y-black); padding: 0.2em 0.6em; border-radius: var(--r-sm); }
.prof-video__body { padding: 0.8rem; }
.prof-video__challenge { display: block; font-weight: 700; font-size: 0.85rem; }
.prof-video__meta { font-size: 0.72rem; color: var(--text-muted); }
