/*
  =========================================================
  ACROV CONTROL

  FILE:
  dashboards/music/music.css

  SYSTEM:
  MUSIC DIRECTOR DASHBOARD

  PURPOSE:
  - Styles the Music Director Dashboard
  - Provides song administration surfaces
  - Provides album administration surfaces
  - Provides artist record visibility
  - Provides release and publishing controls
  - Supports Master override visibility
  - Preserves shared Dashboard Host geometry

  ARCHITECTURE:

  ACROV MASTER
       ↓
  MUSIC DIRECTOR
       ↓
  MUSIC CATALOG
       ↓
  SONGS
  ALBUMS
  ARTISTS
  RELEASES
  PUBLISHING

  IMPORTANT:
  - Music controls songs, albums and artist records
  - Originals controls movies and films
  - CIP controls creator onboarding
  - Commerce remains under Commerce Director
  - Authority and permissions remain outside this file
  =========================================================
*/


/* =========================================================
   MUSIC DASHBOARD
========================================================= */

.acrov-music-dashboard {

  width:
    100%;

  min-width:
    0;

}


/* =========================================================
   HEADER
========================================================= */

.acrov-music-header {

  width:
    100%;

  min-width:
    0;

  display:
    flex;

  align-items:
    flex-start;

  justify-content:
    space-between;

  gap:
    24px;

}


/* =========================================================
   HEADER COPY
========================================================= */

.acrov-music-header-copy {

  min-width:
    0;

  display:
    flex;

  flex-direction:
    column;

  gap:
    5px;

}


/* =========================================================
   EYEBROW
========================================================= */

.acrov-music-eyebrow {

  margin:
    0;

  color:
    var(--acrov-blue);

  font-size:
    8px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    1.35px;

  text-transform:
    uppercase;

}


/* =========================================================
   TITLE
========================================================= */

.acrov-music-title {

  margin:
    0;

  color:
    var(--acrov-text);

  font-size:
    30px;

  font-weight:
    800;

  line-height:
    1.1;

  letter-spacing:
    -0.8px;

}


/* =========================================================
   DESCRIPTION
========================================================= */

.acrov-music-description {

  max-width:
    760px;

  margin:
    0;

  color:
    var(--acrov-text-muted);

  font-size:
    12px;

  font-weight:
    400;

  line-height:
    1.55;

}


/* =========================================================
   AUTHORITY
========================================================= */

.acrov-music-authority {

  min-height:
    30px;

  flex:
    0 0 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 11px;

  border:
    1px solid
    #bfdbfe;

  border-radius:
    6px;

  background:
    var(--acrov-blue-soft);

  color:
    var(--acrov-blue-hover);

  font-size:
    8px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.55px;

  white-space:
    nowrap;

  text-transform:
    uppercase;

}


/* =========================================================
   MASTER OVERRIDE
========================================================= */

.acrov-music-master-override {

  min-height:
    30px;

  flex:
    0 0 auto;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 11px;

  border:
    1px solid
    #fde68a;

  border-radius:
    6px;

  background:
    #fffbeb;

  color:
    #92400e;

  font-size:
    8px;

  font-weight:
    850;

  line-height:
    1;

  letter-spacing:
    0.55px;

  white-space:
    nowrap;

  text-transform:
    uppercase;

}


/* =========================================================
   SUMMARY GRID
========================================================= */

.acrov-music-summary-grid {

  width:
    100%;

  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    repeat(
      4,
      minmax(
        0,
        1fr
      )
    );

  gap:
    14px;

}


/* =========================================================
   SUMMARY CARD
========================================================= */

.acrov-music-summary-card {

  min-width:
    0;

  padding:
    16px;

  border:
    1px solid
    var(--acrov-border);

  border-radius:
    var(--acrov-radius);

  background:
    var(--acrov-white);

  box-shadow:
    var(--acrov-shadow-small);

}


/* =========================================================
   SUMMARY LABEL
========================================================= */

.acrov-music-summary-label {

  margin:
    0;

  color:
    var(--acrov-text-muted);

  font-size:
    8px;

  font-weight:
    800;

  line-height:
    1;

  letter-spacing:
    0.75px;

  text-transform:
    uppercase;

}


/* =========================================================
   SUMMARY VALUE
========================================================= */

.acrov-music-summary-value {

  margin:
    8px 0 0;

  color:
    var(--acrov-text);

  font-size:
    24px;

  font-weight:
    800;

  line-height:
    1;

  letter-spacing:
    -0.6px;

}


/* =========================================================
   SUMMARY SIGNAL
========================================================= */

.acrov-music-summary-signal {

  margin:
    7px 0 0;

  color:
    var(--acrov-text-muted);

  font-size:
    9px;

  line-height:
    1.35;

}


/* =========================================================
   SECTION
========================================================= */

.acrov-music-section {

  width:
    100%;

  min-width:
    0;

}


/* =========================================================
   SECTION HEADER
========================================================= */

.acrov-music-section-header {

  width:
    100%;

  min-width:
    0;

  display:
    flex;

  align-items:
    flex-end;

  justify-content:
    space-between;

  gap:
    16px;

  margin-bottom:
    11px;

}


/* =========================================================
   SECTION COPY
========================================================= */

.acrov-music-section-copy {

  min-width:
    0;

}


/* =========================================================
   SECTION TITLE
========================================================= */

.acrov-music-section-title {

  margin:
    0;

  color:
    var(--acrov-text);

  font-size:
    14px;

  font-weight:
    800;

  line-height:
    1.2;

}


/* =========================================================
   SECTION DESCRIPTION
========================================================= */

.acrov-music-section-description {

  margin:
    4px 0 0;

  color:
    var(--acrov-text-muted);

  font-size:
    10px;

  line-height:
    1.4;

}


/* =========================================================
   ACTION GRID
========================================================= */

.acrov-music-action-grid {

  width:
    100%;

  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    repeat(
      4,
      minmax(
        0,
        1fr
      )
    );

  gap:
    12px;

}


/* =========================================================
   ACTION CARD
========================================================= */

.acrov-music-action-card {

  min-width:
    0;

  min-height:
    148px;

  display:
    flex;

  flex-direction:
    column;

  align-items:
    flex-start;

  justify-content:
    space-between;

  gap:
    14px;

  padding:
    16px;

  border:
    1px solid
    var(--acrov-border);

  border-radius:
    var(--acrov-radius);

  background:
    var(--acrov-white);

  box-shadow:
    var(--acrov-shadow-small);

}


/* =========================================================
   ACTION ICON
========================================================= */

.acrov-music-action-icon {

  width:
    31px;

  height:
    31px;

  flex:
    0 0 31px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  border-radius:
    7px;

  background:
    var(--acrov-blue-soft);

  color:
    var(--acrov-blue);

  font-size:
    9px;

  font-weight:
    850;

}


/* =========================================================
   ACTION COPY
========================================================= */

.acrov-music-action-copy {

  width:
    100%;

  min-width:
    0;

}


/* =========================================================
   ACTION TITLE
========================================================= */

.acrov-music-action-title {

  margin:
    0;

  color:
    var(--acrov-text);

  font-size:
    12px;

  font-weight:
    800;

  line-height:
    1.2;

}


/* =========================================================
   ACTION DESCRIPTION
========================================================= */

.acrov-music-action-description {

  margin:
    5px 0 0;

  color:
    var(--acrov-text-muted);

  font-size:
    9px;

  line-height:
    1.45;

}


/* =========================================================
   ACTION BUTTON
========================================================= */

.acrov-music-action-button {

  min-height:
    29px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 10px;

  border:
    1px solid
    var(--acrov-border-strong);

  border-radius:
    5px;

  background:
    var(--acrov-white);

  color:
    var(--acrov-text-secondary);

  font-family:
    inherit;

  font-size:
    8px;

  font-weight:
    750;

  cursor:
    pointer;

  transition:
    border-color 120ms ease,
    background 120ms ease,
    color 120ms ease;

}


/* =========================================================
   ACTION BUTTON HOVER
========================================================= */

.acrov-music-action-button:hover {

  border-color:
    #bfdbfe;

  background:
    var(--acrov-blue-soft);

  color:
    var(--acrov-blue-hover);

}


/* =========================================================
   ACTION BUTTON DISABLED
========================================================= */

.acrov-music-action-button:disabled {

  opacity:
    0.45;

  cursor:
    not-allowed;

}


/* =========================================================
   OPERATIONS GRID
========================================================= */

.acrov-music-operations-grid {

  width:
    100%;

  min-width:
    0;

  display:
    grid;

  grid-template-columns:
    minmax(
      0,
      2fr
    )
    minmax(
      280px,
      1fr
    );

  gap:
    12px;

}


/* =========================================================
   PANEL
========================================================= */

.acrov-music-panel {

  min-width:
    0;

  padding:
    17px;

  border:
    1px solid
    var(--acrov-border);

  border-radius:
    var(--acrov-radius);

  background:
    var(--acrov-white);

  box-shadow:
    var(--acrov-shadow-small);

}


/* =========================================================
   PANEL HEADER
========================================================= */

.acrov-music-panel-header {

  width:
    100%;

  min-width:
    0;

  display:
    flex;

  align-items:
    center;

  justify-content:
    space-between;

  gap:
    12px;

  margin-bottom:
    13px;

}


/* =========================================================
   PANEL TITLE
========================================================= */

.acrov-music-panel-title {

  margin:
    0;

  color:
    var(--acrov-text);

  font-size:
    12px;

  font-weight:
    800;

  line-height:
    1.2;

}


/* =========================================================
   PANEL COUNT
========================================================= */

.acrov-music-panel-count {

  min-width:
    24px;

  height:
    22px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 7px;

  border-radius:
    var(--acrov-radius-pill);

  background:
    var(--acrov-surface-soft);

  color:
    var(--acrov-text-secondary);

  font-size:
    8px;

  font-weight:
    800;

}


/* =========================================================
   TABLE WRAPPER
========================================================= */

.acrov-music-table-wrap {

  width:
    100%;

  min-width:
    0;

  overflow-x:
    auto;

}


/* =========================================================
   TABLE
========================================================= */

.acrov-music-table {

  width:
    100%;

  min-width:
    740px;

  border-collapse:
    collapse;

}


/* =========================================================
   TABLE HEADER
========================================================= */

.acrov-music-table th {

  padding:
    9px 8px;

  border-bottom:
    1px solid
    var(--acrov-border);

  color:
    var(--acrov-text-muted);

  font-size:
    7px;

  font-weight:
    800;

  line-height:
    1;

  letter-spacing:
    0.6px;

  text-align:
    left;

  text-transform:
    uppercase;

}


/* =========================================================
   TABLE CELL
========================================================= */

.acrov-music-table td {

  padding:
    11px 8px;

  border-bottom:
    1px solid
    var(--acrov-border);

  color:
    var(--acrov-text-secondary);

  font-size:
    9px;

  line-height:
    1.35;

  vertical-align:
    middle;

}


/* =========================================================
   LAST ROW
========================================================= */

.acrov-music-table tbody
tr:last-child td {

  border-bottom:
    0;

}


/* =========================================================
   TRACK TITLE
========================================================= */

.acrov-music-track-title {

  color:
    var(--acrov-text);

  font-weight:
    750;

}


/* =========================================================
   TRACK ID
========================================================= */

.acrov-music-track-id {

  color:
    var(--acrov-text-muted);

  font-size:
    8px;

  font-weight:
    650;

}


/* =========================================================
   ARTIST
========================================================= */

.acrov-music-artist {

  color:
    var(--acrov-text-secondary);

  font-weight:
    650;

}


/* =========================================================
   STATUS
========================================================= */

.acrov-music-status {

  min-height:
    22px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 8px;

  border-radius:
    var(--acrov-radius-pill);

  font-size:
    7px;

  font-weight:
    800;

  line-height:
    1;

  white-space:
    nowrap;

  text-transform:
    uppercase;

}


/* =========================================================
   DRAFT
========================================================= */

.acrov-music-status[
  data-status="draft"
] {

  background:
    #f1f5f9;

  color:
    #475569;

}


/* =========================================================
   REVIEW
========================================================= */

.acrov-music-status[
  data-status="review"
] {

  background:
    #eff6ff;

  color:
    #1d4ed8;

}


/* =========================================================
   SCHEDULED
========================================================= */

.acrov-music-status[
  data-status="scheduled"
] {

  background:
    #fffbeb;

  color:
    #a16207;

}


/* =========================================================
   PUBLISHED
========================================================= */

.acrov-music-status[
  data-status="published"
] {

  background:
    #f0fdf4;

  color:
    #15803d;

}


/* =========================================================
   BLOCKED
========================================================= */

.acrov-music-status[
  data-status="blocked"
] {

  background:
    #fef2f2;

  color:
    #b91c1c;

}


/* =========================================================
   TRACK CONTROLS
========================================================= */

.acrov-music-track-controls {

  display:
    flex;

  align-items:
    center;

  flex-wrap:
    wrap;

  gap:
    5px;

}


/* =========================================================
   TRACK BUTTON
========================================================= */

.acrov-music-track-button {

  min-height:
    24px;

  display:
    inline-flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    0 7px;

  border:
    1px solid
    var(--acrov-border-strong);

  border-radius:
    4px;

  background:
    var(--acrov-white);

  color:
    var(--acrov-text-secondary);

  font-family:
    inherit;

  font-size:
    7px;

  font-weight:
    750;

  cursor:
    pointer;

}


/* =========================================================
   PUBLISH BUTTON
========================================================= */

.acrov-music-track-button[
  data-action="publish"
] {

  border-color:
    #bbf7d0;

  color:
    #15803d;

}


/* =========================================================
   ACTIVITY LIST
========================================================= */

.acrov-music-activity-list {

  width:
    100%;

  min-width:
    0;

  display:
    flex;

  flex-direction:
    column;

  margin:
    0;

  padding:
    0;

  list-style:
    none;

}


/* =========================================================
   ACTIVITY ITEM
========================================================= */

.acrov-music-activity-item {

  display:
    flex;

  align-items:
    flex-start;

  gap:
    9px;

  padding:
    10px 0;

  border-bottom:
    1px solid
    var(--acrov-border);

}


/* =========================================================
   LAST ACTIVITY
========================================================= */

.acrov-music-activity-item:last-child {

  border-bottom:
    0;

}


/* =========================================================
   ACTIVITY DOT
========================================================= */

.acrov-music-activity-dot {

  width:
    7px;

  height:
    7px;

  flex:
    0 0 7px;

  margin-top:
    3px;

  border-radius:
    50%;

  background:
    var(--acrov-blue);

}


/* =========================================================
   ACTIVITY COPY
========================================================= */

.acrov-music-activity-copy {

  min-width:
    0;

  color:
    var(--acrov-text-secondary);

  font-size:
    9px;

  line-height:
    1.4;

}


/* =========================================================
   EMPTY STATE
========================================================= */

.acrov-music-empty {

  min-height:
    130px;

  display:
    flex;

  align-items:
    center;

  justify-content:
    center;

  padding:
    20px;

  border:
    1px dashed
    var(--acrov-border-strong);

  border-radius:
    7px;

  background:
    var(--acrov-surface-soft);

  color:
    var(--acrov-text-muted);

  font-size:
    9px;

  line-height:
    1.45;

  text-align:
    center;

}


/* =========================================================
   TABLET
========================================================= */

@media (
  max-width: 1100px
) {

  .acrov-music-summary-grid {

    grid-template-columns:
      repeat(
        2,
        minmax(
          0,
          1fr
        )
      );

  }


  .acrov-music-action-grid {

    grid-template-columns:
      repeat(
        2,
        minmax(
          0,
          1fr
        )
      );

  }


  .acrov-music-operations-grid {

    grid-template-columns:
      minmax(
        0,
        1fr
      );

  }

}


/* =========================================================
   MOBILE
========================================================= */

@media (
  max-width: 600px
) {

  .acrov-music-header {

    flex-direction:
      column;

    gap:
      12px;

  }


  .acrov-music-title {

    font-size:
      24px;

  }


  .acrov-music-summary-grid,
  .acrov-music-action-grid {

    grid-template-columns:
      minmax(
        0,
        1fr
      );

  }


  .acrov-music-action-card {

    min-height:
      130px;

  }


  .acrov-music-panel {

    padding:
      14px;

  }

}


/* =========================================================
   REDUCED MOTION
========================================================= */

@media (
  prefers-reduced-motion: reduce
) {

  .acrov-music-action-button {

    transition:
      none;

  }

}