.cookie-banner {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 2000;
  width: min(440px, calc(100% - 32px));
  padding: 20px;
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 8px;
  background: #160d1d;
  box-shadow: 0 24px 56px rgba(0, 0, 0, 0.4);
  color: #fff;
}

.cookie-banner[hidden] { display: none; }
.soundcloud-player[hidden], [data-cookie-placeholder][hidden] { display: none; }
.music-consent-notice { padding: 24px; border: 1px solid rgba(255,255,255,.14); border-radius: 8px; color: #d8d8d8; line-height: 1.5; }
.music-consent-notice p { margin-top: 0; }
.music-consent-notice a { display: inline-block; margin-left: 12px; }
.cookie-banner h2 { margin: 0; font-size: 1.05rem; }
.cookie-banner p { margin: 10px 0 0; color: #d8d8d8; font-size: 0.9rem; line-height: 1.5; }
.cookie-banner a, .cookie-settings-link { color: #ff8ad4; text-underline-offset: 3px; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 18px; }
.cookie-button {
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 5px;
  background: transparent;
  color: #fff;
  cursor: pointer;
  font: inherit;
  font-size: 0.88rem;
  font-weight: 700;
  padding: 10px 13px;
}
.cookie-button.primary { border-color: #ff52af; background: #ff52af; }
.cookie-button:hover, .cookie-button:focus-visible { border-color: #ff8ad4; color: #ff8ad4; outline: none; }
.cookie-button.primary:hover, .cookie-button.primary:focus-visible { background: #ff8ad4; color: #fff; }
.legal-footer { width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 0 0 32px; color: #aaa; font-size: 0.84rem; }
.legal-footer a, .legal-footer button { color: #aaa; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.legal-footer button { border: 0; padding: 0; background: none; cursor: pointer; }
.legal-footer a:hover, .legal-footer button:hover, .legal-footer a:focus-visible, .legal-footer button:focus-visible { color: #ff8ad4; outline: none; }
.footer .cookie-settings-link, .footer [data-open-cookie-settings] { color: #aaa; font: inherit; text-decoration: underline; text-underline-offset: 3px; }
.footer [data-open-cookie-settings] { border: 0; padding: 0; background: none; cursor: pointer; }
.footer .cookie-settings-link:hover, .footer [data-open-cookie-settings]:hover, .footer .cookie-settings-link:focus-visible, .footer [data-open-cookie-settings]:focus-visible { color: #ff8ad4; outline: none; }
@media (max-width: 760px) { .legal-footer { width: min(100% - 32px, 1120px); } }
