
/* =========================================
🎤 HERO STUDIO DASHBOARD v2 STYLES
========================================= */
.cs-artist-hero-v2{
position:relative;
padding:60px 40px;
border-radius:24px;
overflow:hidden;
margin-bottom:40px;
}

.cs-hero-bg{
position:absolute;
inset:0;
background:
radial-gradient(circle at top, rgba(245,179,1,.2), transparent 60%),
linear-gradient(135deg,#120a1f,#1b1333);
z-index:0;
}

.cs-artist-identity{
position:relative;
display:flex;
align-items:center;
gap:30px;
z-index:1;
}

.cs-avatar-wrap img{
width:110px;
height:110px;
border-radius:50%;
border:3px solid #f5b301;
box-shadow:0 0 25px rgba(245,179,1,.4);
}

/* =========================================
🎧 SESSION PLAYER
========================================= */
.cs-session-player-v2{
background:#120a1f;
padding:30px;
border-radius:20px;
box-shadow:0 0 40px rgba(157,77,255,.2);
}

/* =========================================
⚡ ACTIONS
========================================= */
.cs-quick-actions{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
gap:20px;
margin:30px 0;
}

.cs-action-card{
background:#1b1333;
padding:20px;
border-radius:16px;
cursor:pointer;
transition:.3s;
}

.cs-action-card:hover{
transform:translateY(-6px);
box-shadow:0 10px 25px rgba(245,179,1,.3);
}

/* =========================================
🎬 TRACK TILE (NETFLIX)
========================================= */
.cs-track-tile{
min-width:220px;
height:260px;
border-radius:18px;
overflow:hidden;
position:relative;
cursor:pointer;
transition:.4s;
}

.cs-track-tile img{
width:100%;
height:100%;
object-fit:cover;
}

.cs-track-tile:hover{
transform:scale(1.08);
}

.cs-tile-overlay{
position:absolute;
inset:0;
background:linear-gradient(to top, rgba(0,0,0,.8), transparent);
padding:15px;
display:flex;
flex-direction:column;
justify-content:flex-end;
}

.cs-play-btn{
position:absolute;
bottom:15px;
right:15px;
background:linear-gradient(90deg,#f5b301,#ff8c42);
width:45px;
height:45px;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
color:#120a1f;
font-weight:bold;
}

/* =========================================
🎞 HORIZONTAL SCROLL
========================================= */
.cs-row-scroll{
display:flex;
gap:20px;
overflow-x:auto;
padding-bottom:10px;
}
/* =========================================
📱 GLOBAL FIX (VERY IMPORTANT)
========================================= */
*,
*::before,
*::after{
  box-sizing:border-box;
}

html,body{
  margin:0;
  padding:0;
  overflow-x:hidden; /* 🔥 prevents half-screen bug */
}

/* =========================================
🏗 DASHBOARD LAYOUT

.cs-artist-v2{
  display:flex;
  min-height:100vh;
  background:linear-gradient(135deg,#120a1f,#1b1333);
}
========================================= */
/* MAIN AREA */
.cs-dashboard-main{
  flex:1;
  padding:20px;
  width:100%;
  max-width:100%;
}

/* =========================================
🎤 HERO (RESPONSIVE)
========================================= */
.cs-artist-hero-v2{
  padding:30px 20px;
  border-radius:20px;
}

.cs-artist-identity{
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  gap:15px;
}

@media(min-width:768px){
  .cs-artist-identity{
    flex-direction:row;
    text-align:left;
  }
}

.cs-avatar-wrap img{
  width:90px;
  height:90px;
}

/* =========================================
🎧 PLAYER
========================================= */
.cs-session-player-v2{
  padding:20px;
}

/* =========================================
⚡ ACTION GRID
========================================= */
.cs-quick-actions{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
}

@media(min-width:768px){
  .cs-quick-actions{
    grid-template-columns:repeat(4,1fr);
  }
}

/* =========================================
🎬 TRACK ROW FIX (CRITICAL)
========================================= */
.cs-row-scroll{
  display:flex;
  gap:14px;
  overflow-x:auto;
  padding-bottom:10px;

  scroll-snap-type:x mandatory;
}

.cs-row-scroll::-webkit-scrollbar{
  display:none;
}

/* TILE */
.cs-track-tile{
  flex:0 0 70%; /* 🔥 mobile size */
  height:220px;

  border-radius:16px;
  overflow:hidden;
  position:relative;

  scroll-snap-align:start;
}

@media(min-width:768px){
  .cs-track-tile{
    flex:0 0 220px;
    height:260px;
  }
}

/* IMAGE */
.cs-track-tile img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* HOVER SAFE (no mobile glitch) */
@media(hover:hover){
  .cs-track-tile:hover{
    transform:scale(1.05);
  }
}

/* =========================================
🎬 TILE OVERLAY (CLICK FIX)
========================================= */
.cs-tile-overlay{
  position:absolute;
  inset:0;

  background:linear-gradient(to top, rgba(0,0,0,.85), transparent);

  display:flex;
  flex-direction:column;
  justify-content:flex-end;

  padding:12px;

  pointer-events:none; /* 🔥 VERY IMPORTANT */
}

/* TEXT */
.cs-tile-overlay h3{
  font-size:14px;
  margin:0;
}

.cs-tile-overlay p{
  font-size:12px;
  color:#bbb;
}

/* PLAY BUTTON */
.cs-play-btn{
  position:absolute;
  bottom:12px;
  right:12px;

  width:40px;
  height:40px;

  border-radius:50%;

  background:linear-gradient(90deg,#f5b301,#ff8c42);

  display:flex;
  align-items:center;
  justify-content:center;

  color:#120a1f;
  font-weight:bold;

  pointer-events:none; /* 🔥 prevent click block */
}

/* =========================================
📂 EMPTY TILE
========================================= */
.cs-track-tile.empty{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#1b1333;
}

/* =========================================
🚀 FLOAT PANEL (MOBILE FIX)
========================================= */
.cs-float-panel{
  position:fixed;

  bottom:90px;
  left:15px;
  right:15px;

  width:auto;

  z-index:9999;
}

/* =========================================
📱 SIDEBAR MOBILE FIX
========================================= */
@media(max-width:768px){

  .cs-artist-v2{
    flex-direction:column;
  }

  .cs-dashboard-main{
    padding:15px;
  }

}


/*==========================================
STUDIO CONTROL STYLES 
============================================*/
.cs-float-panel{
  position:fixed;

  bottom:120px;
  right:30px;

  width:320px;
  padding:20px;

  border-radius:24px;

  background:
  linear-gradient(
    135deg,
    rgba(18,10,31,.92),
    rgba(27,19,51,.95)
  );

  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);

  border:1px solid rgba(255,255,255,.06);

  box-shadow:
  0 20px 60px rgba(0,0,0,.7),
  0 0 40px rgba(157,77,255,.25),
  0 0 25px rgba(245,179,1,.15);

  z-index:99999;

  cursor:grab;

  user-select:none;
  touch-action:none;

  transition:
  box-shadow .3s ease,
  transform .15s ease;
}

/* ACTIVE DRAG */
.cs-float-panel.dragging{
  cursor:grabbing;

  transform:scale(1.02);

  box-shadow:
  0 30px 80px rgba(0,0,0,.9),
  0 0 60px rgba(157,77,255,.45),
  0 0 35px rgba(245,179,1,.25);
}


/* =========================================
🌌 CORE DASHBOARD LAYOUT
========================================= */

.cs-dashboard{
  display:flex;

  width:100%;
  min-height:100vh;

  background:
  linear-gradient(
    135deg,
    #120a1f,
    #1b1333
  );

  overflow:hidden;
}


/* =========================================
🚀 MAIN CONTENT
========================================= */

.cs-dashboard-main{

  flex:1;
  min-width:0; /* 🔥🔥🔥 CRITICAL */

  width:100%;

  padding:24px;

  overflow:hidden;
}

/* =========================================
📱 MOBILE
========================================= */

@media(max-width:768px){

  .cs-dashboard{
    flex-direction:column;
  }

  .cs-sidebar{

    position:fixed;

    top:0;
    right:0;

    transform:translateX(100%);
  }

  .cs-dashboard-main{
    width:100%;
    padding:16px;
  }

}

/*===========================================
🚀 NOW FIX THE ROW PROPERLY
===========================================*/
.cs-row-scroll{
  display:flex;
  gap:14px;

  overflow-x:auto;
  overflow-y:hidden;

  width:100%;
  max-width:100%;

  padding-bottom:10px;

  scroll-snap-type:x mandatory;

  -webkit-overflow-scrolling:touch;
}

/*=============================================
🔥 NOW FIX TRACK TILES RESPONSIVELY
==============================================*/
.cs-track-tile{

  flex:0 0 clamp(180px, 70vw, 240px);

  height:220px;

  border-radius:16px;

  overflow:hidden;
  position:relative;

  scroll-snap-align:start;
}

/*============================================
🚀 DESKTOP OVERRIDE
================================================*/
@media(min-width:1024px){

  .cs-track-tile{
    flex:0 0 240px;
    height:280px;
  }

}

/* =========================================
🎧 SECTION HEAD
Cinematic Studio Header
========================================= */

.cs-section-head{

  display:flex;
  align-items:center;
  justify-content:space-between;

  gap:16px;

  margin-bottom:20px;

  padding:0 4px;

  position:relative;
}

/* =========================================
🔥 OPTIONAL GLOW LINE
========================================= */

.cs-section-head::after{

  content:"";

  position:absolute;

  left:0;
  bottom:-10px;

  width:100%;
  height:1px;

  background:
  linear-gradient(
    90deg,
    rgba(245,179,1,.35),
    rgba(157,77,255,.15),
    transparent
  );

}

/* =========================================
🎛 TITLE
========================================= */

.cs-section-head h2{

  margin:0;

  font-size:clamp(1.2rem, 2vw, 1.8rem);

  font-weight:700;

  color:#ffffff;

  line-height:1.2;

  letter-spacing:-0.02em;

  display:flex;
  align-items:center;
  gap:10px;

  text-shadow:
  0 0 20px rgba(245,179,1,.15);

}

/* =========================================
🟣 SUBTITLE
========================================= */

.cs-section-head span{

  color:#bbbbbb;

  font-size:.92rem;

  font-weight:500;

  opacity:.85;

  white-space:nowrap;

}

/* =========================================
📱 MOBILE
========================================= */

@media(max-width:768px){

  .cs-section-head{

    flex-direction:column;
    align-items:flex-start;

    gap:6px;

    margin-bottom:18px;

  }

  .cs-section-head span{

    white-space:normal;

    font-size:.85rem;

  }

}


.cs-stream-row {
  padding: 40px 20px;
  background: linear-gradient(135deg,#120a1f,#1b1333);
  position: relative;
  overflow: hidden;
}

.cs-stream-row.alt {
  background: linear-gradient(135deg,#1b1333,#120a1f);
}

.cs-stream-row::before {
  content: "";
  position: absolute;
  top: -100px;
  left: -100px;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(245,179,1,0.15), transparent 70%);
  filter: blur(40px);
}

.cs-row-header h2 {
  font-size: 24px;
  font-weight: 700;
  color: #F5B301;
  margin-bottom: 5px;
}

.cs-row-header span {
  color: #BBBBBB;
  font-size: 14px;
}

.cs-beat-card,
.cs-project-card {
  min-width: 240px;
  height: 150px;
  background: #120A1F;
  border-radius: 16px;
  padding: 20px;
  position: relative;
  cursor: pointer;
  transition: all 0.4s ease;
  overflow: hidden;
}

.cs-beat-card::before,
.cs-project-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left,
    rgba(157,77,255,0.15),
    transparent 60%);
  opacity: 0;
  transition: 0.4s;
}

.cs-beat-card:hover,
.cs-project-card:hover {
  transform: scale(1.05) translateY(-5px);
  box-shadow:
    0 10px 30px rgba(0,0,0,0.6),
    0 0 25px rgba(157,77,255,0.4),
    0 0 40px rgba(245,179,1,0.25);
}

.cs-beat-card:hover::before,
.cs-project-card:hover::before {
  opacity: 1;
}

.cs-play-overlay {
  position: absolute;
  bottom: 15px;
  right: 15px;
  background: linear-gradient(90deg,#f5b301,#ff8c42);
  color: #120a1f;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  opacity: 0;
  transition: 0.3s;
}

.cs-beat-card:hover .cs-play-overlay {
  opacity: 1;
  transform: scale(1.1);
}

.cs-beat-card h3,
.cs-project-card h3 {
  color: #FFFFFF;
  font-size: 16px;
  margin-bottom: 5px;
}

.cs-beat-card p {
  color: #BBBBBB;
  font-size: 13px;
}

.cs-mini-wave {
  height: 4px;
  background: linear-gradient(90deg,#9D4DFF,#00E6D7);
  margin-top: 10px;
  border-radius: 2px;
  opacity: 0.6;
}

.cs-row-scroll:hover {
  cursor: grab;
}

/* ------------------------
FLOAT PANNEL DESIGN
-------------------------*/
.cs-float-panel {
  position: fixed;
  bottom: 100px; /* above sticky player */
  right: 30px;

  width: 320px;
  padding: 20px;

  border-radius: 18px;

  background: linear-gradient(
    135deg,
    rgba(18,10,31,0.95),
    rgba(27,19,51,0.95)
  );

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);

  border: 1px solid rgba(255,255,255,0.05);

  box-shadow:
    0 10px 40px rgba(0,0,0,0.7),
    0 0 25px rgba(157,77,255,0.25),
    0 0 15px rgba(245,179,1,0.15);

  z-index: 9999;

  transition: all 0.4s ease;
}


/* -----------------------
🌌 FLOATING LIGHT EFFECT (VERY IMPORTANT)
-------------------------*/

.cs-float-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 18px;

  background: radial-gradient(
    circle at top left,
    rgba(245,179,1,0.15),
    transparent 60%
  );

  opacity: 0.8;
  pointer-events: none;
}

/* -----------------------
🌌🟣 SECONDARY GLOW (CREATIVE ENERGY)
-------------------------*/
.cs-float-panel::after {
  content: "";
  position: absolute;
  bottom: -40px;
  right: -40px;
  width: 120px;
  height: 120px;

  background: radial-gradient(
    circle,
    rgba(157,77,255,0.25),
    transparent 70%
  );

  filter: blur(40px);
  pointer-events: none;
}

/* -----------------------
✨ HOVER / ACTIVE STATE
-------------------------*/
.cs-float-panel:hover {
  transform: translateY(-6px) scale(1.02);

  box-shadow:
    0 20px 60px rgba(0,0,0,0.9),
    0 0 35px rgba(157,77,255,0.4),
    0 0 25px rgba(245,179,1,0.25);
}

/* -----------------------
🎛 PANEL HEADER (OPTIONAL BUT 🔥)
-------------------------*/
.cs-float-panel h3 {
  color: #F5B301;
  font-size: 16px;
  margin-bottom: 10px;
}

.cs-float-panel p {
  color: #BBBBBB;
  font-size: 13px;
}

/* -----------------------
🎧 BUTTONS INSIDE PANEL
🔥 PRIMARY BUTTON
-------------------------*/
.cs-float-panel .cs-btn-primary {
  background: linear-gradient(90deg,#f5b301,#ff8c42);
  color: #120a1f;
  border: none;
  padding: 10px 14px;
  border-radius: 10px;
  font-weight: 600;
  cursor: pointer;

  box-shadow: 0 0 15px rgba(245,179,1,0.3);
  transition: all 0.3s ease;
}

.cs-float-panel .cs-btn-primary:hover {
  transform: scale(1.05);
  box-shadow:
    0 0 25px rgba(245,179,1,0.5),
    0 0 15px rgba(255,140,66,0.4);
}

/* -----------------------
🟣 SECONDARY BUTTON
-------------------------*/
.cs-float-panel .cs-btn-outline {
  border: 1px solid #9D4DFF;
  color: #9D4DFF;
  background: transparent;

  padding: 8px 12px;
  border-radius: 8px;

  transition: all 0.3s ease;
}

.cs-float-panel .cs-btn-outline:hover {
  background: rgba(157,77,255,0.1);
  box-shadow: 0 0 15px rgba(157,77,255,0.4);
}

/* -----------------------
🎚 MICRO INTERACTION (BREATHING PANEL)
-------------------------*/
@keyframes csPanelGlow {
  0% {
    box-shadow:
      0 10px 40px rgba(0,0,0,0.7),
      0 0 20px rgba(157,77,255,0.2);
  }
  50% {
    box-shadow:
      0 15px 50px rgba(0,0,0,0.9),
      0 0 30px rgba(157,77,255,0.35);
  }
  100% {
    box-shadow:
      0 10px 40px rgba(0,0,0,0.7),
      0 0 20px rgba(157,77,255,0.2);
  }
}

.cs-float-panel {
  animation: csPanelGlow 6s ease-in-out infinite;
}

/* -----------------------
📱 MOBILE ADAPTATION
-------------------------*/
@media(max-width:768px){
  .cs-float-panel {
    right: 15px;
    left: 15px;
    width: auto;
    bottom: 90px;
  }
}

/* -----------------------
🎯 OPTIONAL — COLLAPSIBLE PANEL (VERY PREMIUM)
-------------------------*/
.cs-float-panel.collapsed {
  height: 60px;
  overflow: hidden;
}
