/* Digitana Social - Music Profil-Werkzeuge / Upload */
.ds-music-profile-dashboard { display: grid; grid-template-columns: minmax(280px, 0.95fr) minmax(280px, 1.05fr); gap: 16px; align-items: start; margin: 0 0 18px; }
.ds-music-profile-upload-column,
.ds-music-profile-side-column { min-width: 0; display: grid; gap: 14px; }
.ds-music-upload-details,
.ds-music-profile-insights,
.ds-music-playlist-panel,
.ds-music-edit-panel,
.ds-music-side-song-panel { padding: 12px 14px 14px; }
.ds-music-upload-summary,
.ds-music-playlist-summary,
.ds-music-side-summary { cursor: pointer; list-style: none; color: #fff; font-size: 0.94rem; letter-spacing: 0.10em; text-transform: uppercase; text-shadow: 0 0 9px rgba(215,223,229,0.50), 0 0 14px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 30%, transparent); }
.ds-music-upload-summary::-webkit-details-marker,
.ds-music-playlist-summary::-webkit-details-marker,
.ds-music-side-summary::-webkit-details-marker { display: none; }
.ds-music-upload-summary::marker,
.ds-music-playlist-summary::marker,
.ds-music-side-summary::marker { content: ""; }
.ds-music-upload-summary::after,
.ds-music-playlist-summary::after,
.ds-music-side-summary::after { content: " +"; color: #e4e8ec; font-size: 0.92rem; letter-spacing: 0.01em; text-transform: none; margin-left: 8px; text-shadow: 0 0 8px rgba(205,214,221,0.42); }
.ds-music-upload-details[open] .ds-music-upload-summary::after,
.ds-music-playlist-panel[open] .ds-music-playlist-summary::after,
.ds-music-side-details[open] .ds-music-side-summary::after { content: " −"; }
.ds-music-upload-form,
.ds-music-playlist-body,
.ds-music-side-body,
.ds-music-edit-panel form { display: grid; gap: 12px; margin-top: 12px; }
.ds-music-upload-topline,
.ds-music-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ds-music-field { display: grid; gap: 6px; text-transform: none; letter-spacing: 0.01em; }
.ds-music-field textarea { min-height: 78px; resize: vertical; }
.ds-music-description-field { position: relative; }
.ds-music-description-counter {
  justify-self: end;
  margin-top: -2px;
  color: rgba(225,230,234,0.72);
  font-size: 0.72rem;
  letter-spacing: 0.05em;
  text-transform: none;
  text-shadow: 0 1px 0 #000000, 0 0 7px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 18%, transparent);
}
.ds-music-description-counter-over { color: #ffd9d9; }
.ds-music-visibility-field { align-content: start; }
.ds-music-visibility-picker { width: fit-content; margin-top: 3px; }
.ds-music-visibility-picker > summary {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  min-width: 172px;
  min-height: 36px;
  padding: 8px 12px;
  border: 0;
  border-radius: 8px;
  color: #ffffff;
  cursor: pointer;
  background:
    radial-gradient(ellipse at 18% 0%, rgba(255,255,255,0.22), transparent 54%),
    linear-gradient(135deg, rgba(226,242,252,0.18), rgba(4,12,20,0.92) 72%);
  box-shadow:
    inset 0 0 0 1px rgba(225,230,234,0.24),
    inset 0 1px 0 rgba(255,255,255,0.18),
    0 0 14px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 18%, transparent);
  list-style: none;
  text-decoration: none;
  text-shadow: 0 1px 0 #000, 0 0 8px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 28%, transparent);
}
.ds-music-visibility-picker > summary::-webkit-details-marker { display: none; }
.ds-music-visibility-picker > summary::marker { content: ""; }
.ds-music-visibility-picker > summary::after {
  content: "⌄";
  color: #e4e8ec;
  font-size: 0.82rem;
  text-shadow: 0 0 8px rgba(205,214,221,0.42);
}
.ds-music-visibility-picker[open] > summary::after { content: "⌃"; }
.ds-music-visibility-picker > summary:hover,
.ds-music-visibility-picker > summary:focus-visible {
  outline: none;
  box-shadow:
    inset 0 0 0 1px rgba(245,248,250,0.36),
    inset 0 1px 0 rgba(255,255,255,0.22),
    0 0 18px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 28%, transparent);
}
.ds-music-visibility-inline-form { display: inline-flex; align-items: center; margin: 0; position: relative; }
.ds-music-card .ds-music-visibility-eye-menu { width: auto; margin-top: 0; }
.ds-music-card .ds-music-visibility-eye-menu > summary { min-width: 0; width: 28px; height: 28px; padding: 0; justify-content: center; gap: 0; }
.ds-music-card .ds-music-visibility-eye-menu > summary::after { display: none; content: ""; }
.ds-music-card .ds-music-visibility-eye-menu[open] { z-index: 610; }
.ds-music-card .ds-music-visibility-eye-menu .ds-profile-post-visibility-popover { z-index: 630; min-width: 210px; }
.ds-music-rights-check { display: inline-flex; align-items: center; gap: 8px; color: #dff5ff; font-size: 0.82rem; }
.ds-music-rights-check input { accent-color: #dfe5ea; }

.ds-music-rights-info {
  display: grid;
  gap: 9px;
  padding: 0;
}
.ds-music-rights-summary {
  display: grid;
  grid-template-columns: auto minmax(110px, 1fr) auto;
  gap: 10px;
  align-items: center;
  cursor: pointer;
  list-style: none;
}
.ds-music-rights-summary::-webkit-details-marker { display: none; }
.ds-music-rights-summary::marker { content: ""; }
.ds-music-rights-summary-label {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 11px;
  border-radius: 999px;
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  background: color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 12%, rgba(0,0,0,0.36));
  box-shadow:
    inset 0 0 0 1px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 54%, rgba(245,248,250,0.22)),
    0 0 10px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 24%, transparent);
  text-shadow: 0 1px 0 #000000, 0 0 7px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 30%, transparent);
}
.ds-music-rights-summary-line {
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(215,223,229,0.70), color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 40%, transparent), transparent);
  box-shadow: 0 0 10px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 28%, transparent);
}
.ds-music-rights-summary-icon::before {
  content: "+";
  color: #ffffff;
  font-size: 1.08rem;
  line-height: 1;
  text-shadow: 0 0 9px rgba(205,214,221,0.58), 0 1px 0 #000000;
}
.ds-music-rights-info[open] .ds-music-rights-summary-icon::before { content: "−"; }
.ds-music-rights-summary:hover .ds-music-rights-summary-label,
.ds-music-rights-summary:focus-visible .ds-music-rights-summary-label {
  box-shadow:
    inset 0 0 0 1px rgba(245,248,250,0.42),
    0 0 14px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 36%, transparent);
}
.ds-music-rights-info-body {
  display: grid;
  gap: 8px;
  margin-top: 0;
  padding: 10px 12px;
  border-radius: 9px;
  color: #e1e6ea;
  font-size: 0.78rem;
  line-height: 1.45;
  background: linear-gradient(135deg, rgba(255,255,255,0.035), rgba(0,0,0,0.34));
  box-shadow:
    inset 0 0 0 1px rgba(215,223,229,0.13),
    0 0 12px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 7%, transparent);
  text-shadow: 0 1px 0 #000000;
}
.ds-music-rights-info-body p { margin: 0; }
.ds-music-rights-check {
  align-items: flex-start;
  gap: 8px;
  margin-top: 6px;
  padding-top: 10px;
  border-top: 1px solid rgba(215,223,229,0.14);
  line-height: 1.35;
}
.ds-music-rights-check span {
  color: #f2f5f7;
}

.ds-music-file-row { display: grid; grid-template-columns: minmax(260px, 1fr) minmax(190px, 0.72fr); gap: 12px; align-items: stretch; }
.ds-music-file-picker { position: relative; display: grid; gap: 8px; align-content: center; min-height: 92px; padding: 12px; border-radius: 9px; background: linear-gradient(135deg, rgba(255,255,255,0.04), rgba(0,0,0,0.38)); box-shadow: inset 0 0 0 1px rgba(215,223,229,0.14), 0 0 12px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 8%, transparent); color: #f2f5f7; }
.ds-music-song-upload-picker {
  min-height: 116px;
  padding: 0 10px;
  align-content: center;
  justify-items: center;
  background: transparent;
  box-shadow: none;
}
.ds-music-file-picker input[type="file"] { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.ds-music-file-info { display: grid; gap: 7px; align-content: center; min-width: 0; }
.ds-music-file-button,
.ds-music-upload-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: fit-content;
  min-height: 30px;
  padding: 6px 13px;
  border-radius: 8px;
  color: #ffffff;
  font-size: 0.74rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-decoration: none;
  cursor: pointer;
  background:
    radial-gradient(ellipse at 18% 0%, rgba(255,255,255,0.24), transparent 54%),
    linear-gradient(135deg, rgba(82,88,96,0.92), rgba(24,28,34,0.98) 48%, rgba(5,7,10,0.99));
  box-shadow:
    inset 0 0 0 1px rgba(225,230,234,0.24),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -7px 13px rgba(0,0,0,0.36),
    0 0 11px rgba(205,214,221,0.12);
  text-shadow: 0 1px 0 #000000, 0 0 7px rgba(215,223,229,0.26);
}
.ds-music-file-button:hover,
.ds-music-file-button:focus-visible,
.ds-music-upload-button:hover,
.ds-music-upload-button:focus-visible {
  color: #ffffff;
  outline: none;
  box-shadow:
    inset 0 0 0 1px rgba(245,248,250,0.38),
    inset 0 1px 0 rgba(255,255,255,0.30),
    inset 0 -7px 13px rgba(0,0,0,0.34),
    0 0 16px rgba(205,214,221,0.20);
}
.ds-music-file-name { color: #e1e6ea; font-size: 0.78rem; line-height: 1.3; overflow-wrap: anywhere; }
.ds-music-file-clear { width: fit-content; color: #ffffff; }
.ds-music-song-upload-picker .ds-music-upload-button {
  min-width: 132px;
  min-height: 34px;
  padding: 8px 20px;
}
.ds-music-song-upload-picker .ds-music-file-name,
.ds-music-song-upload-picker .ds-music-file-clear {
  justify-self: center;
  text-align: center;
}

.ds-music-cover-picker { align-content: start; }
.ds-music-cover-upload-body { display: grid; grid-template-columns: 92px minmax(0, 1fr); gap: 12px; align-items: center; }
.ds-music-cover-preview { width: 92px; height: 92px; display: grid; place-items: center; border-radius: 8px; overflow: hidden; color: #fff; background: radial-gradient(ellipse at 30% 10%, rgba(215,223,229,0.22), transparent 55%), #050b12; box-shadow: 0 0 10px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 24%, transparent), inset 0 0 0 1px rgba(215,223,229,0.24); font-size: 1.8rem; }
.ds-music-cover-preview img { width: 100%; height: 100%; object-fit: cover; }
.ds-music-edit-cover-picker { max-width: min(420px, 100%); }
.ds-music-progress { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }
.ds-music-progress-bar { flex: 1 1 180px; height: 9px; overflow: hidden; border-radius: 999px; background: rgba(215,223,229,0.10); box-shadow: inset 0 0 0 1px rgba(215,223,229,0.16); }
.ds-music-progress-bar span { display: block; width: 0; height: 100%; background: linear-gradient(90deg, rgba(223,229,234,0.72), rgba(255,255,255,0.92)); box-shadow: 0 0 12px rgba(205,214,221,0.38); }
.ds-music-upload-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: center; }
.ds-music-upload-actions .ds-login-submit {
  min-width: 132px;
  min-height: 34px;
  padding: 8px 20px;
  border: 0;
  border-radius: 8px;
  color: #ffffff;
  background:
    radial-gradient(ellipse at 18% 0%, rgba(255,255,255,0.24), transparent 54%),
    linear-gradient(135deg, rgba(82,88,96,0.92), rgba(24,28,34,0.98) 48%, rgba(5,7,10,0.99));
  box-shadow:
    inset 0 0 0 1px rgba(225,230,234,0.24),
    inset 0 1px 0 rgba(255,255,255,0.22),
    inset 0 -7px 13px rgba(0,0,0,0.36),
    0 0 14px rgba(205,214,221,0.16);
  text-shadow: 0 1px 0 #000000, 0 0 7px rgba(215,223,229,0.28);
}
.ds-music-upload-actions .ds-login-submit:hover,
.ds-music-upload-actions .ds-login-submit:focus-visible {
  outline: none;
  box-shadow:
    inset 0 0 0 1px rgba(245,248,250,0.38),
    inset 0 1px 0 rgba(255,255,255,0.30),
    inset 0 -7px 13px rgba(0,0,0,0.34),
    0 0 18px rgba(205,214,221,0.24);
}
.ds-music-progress .ds-profile-glow-link-button {
  color: #ffffff;
  text-shadow: 0 0 8px rgba(205,214,221,0.42), 0 1px 0 #000000;
}
.ds-music-progress .ds-profile-glow-link-button:hover,
.ds-music-progress .ds-profile-glow-link-button:focus-visible {
  color: #ffffff;
  outline: none;
  text-shadow: 0 0 12px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 42%, rgba(255,255,255,0.38));
}
.ds-music-upload-status { color: #d9e0e5; font-size: 0.82rem; }

.ds-music-stat-line { display: flex; flex-wrap: wrap; gap: 10px 14px; margin-bottom: 10px; }
.ds-music-stat-line span { color: #d9e0e5; font-size: 0.82rem; }
.ds-music-stat-line strong { color: #fff; font-size: 1.05rem; text-shadow: 0 0 8px color-mix(in srgb, var(--ds-profile-accent, #cfd6dd) 28%, transparent); }
.ds-music-audience-grid { display: grid; gap: 8px; }
.ds-music-audience-row { display: grid; gap: 3px; padding: 8px 0; border-top: 1px solid rgba(215,223,229,0.09); }
.ds-music-audience-row strong { color: #fff; font-size: 0.82rem; text-shadow: 0 0 7px rgba(215,223,229,0.24); }
.ds-music-audience-row div { display: grid; gap: 2px; color: #d9e0e5; font-size: 0.78rem; }
.ds-music-audience-row small { color: #dff5ff; line-height: 1.35; }
.ds-music-audience-row a { color: #fff; text-decoration: none; text-shadow: 0 0 7px rgba(215,223,229,0.20); }

.ds-music-profile-list { margin-top: 18px; }
.ds-music-playlist-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: center; padding: 8px 0; border-top: 1px solid rgba(215,223,229,0.09); }
.ds-music-playlist-row form { display: inline-flex; gap: 8px; align-items: center; margin: 0; min-width: 0; }
.ds-music-playlist-create { display: flex; gap: 8px; align-items: center; }
.ds-music-playlist-row span { color: #d9e0e5; font-size: 0.78rem; white-space: nowrap; }


