/* MADSAAS Socials Manager — scoped public pages, used by React and static HTML export. */
.socials-legal-shell {
  --legal-ink: #161722;
  --legal-muted: #565768;
  --legal-paper: #f7f7f2;
  --legal-line: #d8d9df;
  --legal-purple: #6638ee;
  --legal-lime: #d0ff71;
  min-height: 100svh;
  margin: 0;
  color: var(--legal-ink);
  background: var(--legal-paper);
  font-family: "Studio Sans", system-ui, -apple-system, Arial, sans-serif;
  font-size: 16px;
  line-height: 1.75;
  overflow-wrap: break-word;
}
.socials-legal-shell *, .socials-legal-shell *::before, .socials-legal-shell *::after { box-sizing: border-box; }
.socials-legal-shell a { color: inherit; }
.socials-legal-shell a:focus-visible { outline: 3px solid var(--legal-purple); outline-offset: 4px; }
.socials-legal-wrap { width: min(1160px, calc(100% - 48px)); margin-inline: auto; }
.socials-legal-skip {
  position: fixed; z-index: 90; left: 16px; top: 12px; padding: 12px 18px;
  background: var(--legal-lime); color: #151515 !important; text-decoration: none;
  transform: translateY(-170%);
}
.socials-legal-skip:focus { transform: translateY(0); }
.socials-legal-header { background: #101114; color: #fff; border-bottom: 1px solid #363542; }
.socials-legal-header-inner { min-height: 84px; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.socials-legal-brand { text-decoration: none; font-size: 27px; font-weight: 800; letter-spacing: -1.5px; line-height: 1; }
.socials-legal-brand span { color: var(--legal-lime); }
.socials-legal-back { font-size: 13px; text-decoration: none; border: 1px solid #5c586b; border-radius: 7px; padding: 10px 16px; }
.socials-legal-back:hover { border-color: var(--legal-lime); color: var(--legal-lime); }
.socials-legal-main { padding-block: clamp(38px, 6vw, 72px) 92px; }
.socials-legal-eyebrow { text-transform: uppercase; letter-spacing: .13em; font-size: 11px; color: #5b37c5; font-weight: 750; margin: 0 0 12px; }
.socials-legal-main h1 { font-size: clamp(38px, 5.3vw, 67px); line-height: 1.07; letter-spacing: -.055em; font-weight: 800; max-width: 980px; margin: 0 0 22px; }
.socials-legal-lead { max-width: 810px; color: #3f3e4c; font-size: clamp(18px, 2vw, 22px); line-height: 1.55; margin: 0 0 20px; }
.socials-legal-meta { display: flex; flex-wrap: wrap; gap: 12px 25px; font-size: 12px; color: var(--legal-muted); margin-bottom: 32px; }
.socials-legal-tabs { border-block: 1px solid var(--legal-line); display: flex; gap: 8px; flex-wrap: wrap; padding: 13px 0; margin-bottom: 40px; }
.socials-legal-tabs a { text-decoration: none; border-radius: 6px; padding: 8px 14px; font-size: 13px; font-weight: 700; }
.socials-legal-tabs a[aria-current="page"] { color: #fff; background: var(--legal-purple); }
.socials-legal-tabs a:not([aria-current="page"]):hover { background: #e9e4f8; }
.socials-legal-layout { display: grid; grid-template-columns: minmax(180px, 240px) minmax(0, 1fr); gap: clamp(30px, 5vw, 76px); align-items: start; }
.socials-legal-toc { position: sticky; top: 25px; border-left: 2px solid var(--legal-line); padding: 3px 0 5px 19px; }
.socials-legal-toc p { color: #6a647b; text-transform: uppercase; font-size: 10px; font-weight: 800; letter-spacing: .13em; margin: 0 0 12px; }
.socials-legal-toc ul { list-style: none; padding: 0; margin: 0; }
.socials-legal-toc li + li { margin-top: 8px; }
.socials-legal-toc a { text-decoration: none; font-size: 12px; color: #656172; line-height: 1.5; display: inline-block; }
.socials-legal-toc a:hover { color: var(--legal-purple); text-decoration: underline; }
.socials-legal-article { max-width: 780px; min-width: 0; }
.socials-legal-article section { scroll-margin-top: 20px; padding-bottom: 32px; }
.socials-legal-article section + section { border-top: 1px solid var(--legal-line); padding-top: 33px; }
.socials-legal-article h2 { font-size: clamp(22px, 2.5vw, 29px); line-height: 1.22; letter-spacing: -.035em; margin: 0 0 15px; }
.socials-legal-article p { margin: 0 0 14px; color: #404153; font-size: 15px; }
.socials-legal-article a { text-decoration: underline; text-decoration-color: #956ff0; text-underline-offset: 3px; color: #4b2cb9; }
.socials-legal-article ul { list-style: disc; padding-left: 22px; margin: 14px 0 20px; }
.socials-legal-article li { padding-left: 4px; margin: 9px 0; font-size: 15px; color: #404153; }
.socials-legal-footer { background: #101114; color: #e7e7e7; }
.socials-legal-footer-inner { padding-block: 28px 36px; display: flex; gap: 20px; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; }
.socials-legal-footer p { font-size: 12px; color: #b5b7c0; margin: 0; }
.socials-legal-footer nav { display: flex; flex-wrap: wrap; gap: 9px 19px; }
.socials-legal-footer a { font-size: 12px; color: #d6d0ff; text-decoration: underline; text-underline-offset: 3px; }
.socials-legal-footer a:hover { color: var(--legal-lime); }
@media (max-width: 840px) {
  .socials-legal-wrap { width: min(760px, calc(100% - 36px)); }
  .socials-legal-layout { grid-template-columns: 1fr; gap: 28px; }
  .socials-legal-toc { position: static; border-left-color: var(--legal-purple); }
}
@media (max-width: 520px) {
  .socials-legal-wrap { width: calc(100% - 30px); }
  .socials-legal-main { padding-block: 34px 62px; }
  .socials-legal-header-inner { min-height: 68px; }
  .socials-legal-back { font-size: 11px; padding: 8px 10px; }
  .socials-legal-tabs { gap: 4px; }
  .socials-legal-tabs a { padding: 7px 10px; font-size: 12px; }
}
@media print {
  .socials-legal-header, .socials-legal-toc, .socials-legal-tabs { display: none; }
  .socials-legal-shell { background: #fff; color: #000; }
  .socials-legal-layout { display: block; }
  .socials-legal-article a { color: #000; }
}

/* GDPR / platform data-deletion request, shared by JS React and static HTML. */
.socials-rights-section { margin: 46px auto 0; border: 1px solid var(--legal-line); border-radius: 20px; padding: clamp(24px,4vw,44px); background: #fff; max-width: 980px; }
.socials-rights-section h2 { font-size: clamp(24px,3vw,32px); line-height: 1.2; letter-spacing: -.04em; margin: 0 0 14px; }
.socials-rights-section > p { max-width: 780px; font-size: 15px; color: #404153; margin: 0 0 22px; }
.socials-rights-form { display: flex; flex-direction: column; gap: 20px; }
.socials-rights-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; }
.socials-rights-field { display: flex; flex-direction: column; gap: 7px; min-width: 0; }
.socials-rights-field label { font-size: 13px; color: var(--legal-ink); font-weight: 750; }
.socials-rights-field :is(input,select,textarea) { border: 1px solid #b7b5c4; color: #171625; border-radius: 9px; padding: 12px 14px; background: #fff; font: inherit; font-size: 14px; width: 100%; max-width: 100%; }
.socials-rights-field :is(input,select,textarea):focus-visible { outline: 3px solid #aa98eb; outline-offset: 2px; border-color: var(--legal-purple); }
.socials-rights-field textarea { resize: vertical; }
.socials-rights-hint { font-size: 13px; color: #565768; margin: 0; }
.socials-rights-captcha { min-height: 40px; }
.socials-rights-submit { align-self: flex-start; border: 0; border-radius: 9px; background: #5831d5; color: #fff; padding: 13px 25px; font: inherit; font-weight: 750; cursor: pointer; }
.socials-rights-submit:focus-visible { outline: 3px solid #aa98eb; outline-offset: 3px; }
.socials-rights-submit:disabled { opacity: .48; cursor: not-allowed; }
.socials-rights-status { color: #444454; font-size: 13px; margin: 0; }
.socials-rights-status[data-state="ok"] { color: #146c40; }
.socials-rights-status[data-state="error"] { color: #a1212e; }
@media(max-width:680px) { .socials-rights-grid { grid-template-columns: minmax(0,1fr); } }
@media print { .socials-rights-form { display: none; } }
