/* Open sign-up form and the Terms / Privacy pages on the shared Stageshow look
   (design.md "Design system v2"). Components come from vault-tokens.css; layout only.
   Used with body.ds-canvas. */

.signup-form { display: flex; flex-direction: column; gap: 0; margin-bottom: var(--ds-s3); }
.signup-form > :is(.signup-check, .signup-notice, p, a) { margin-top: var(--ds-s3); }
.signup-form > .ds-btn { margin-top: var(--ds-s5); }
.signup-sub { margin: 0 0 var(--ds-s4); }
.signup-form .ds-small { margin: var(--ds-s2) 0 0; }

.signup-trap { position: absolute; inset-inline-start: -10000px; width: 1px; height: 1px; overflow: hidden; }

.signup-check {
  display: flex; align-items: flex-start; gap: var(--ds-s3); margin: 0;
  font: 400 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); color: var(--ds-text);
}
.signup-check a, .signup-store a, .legal-page a { color: var(--ds-primary); text-decoration: underline; text-underline-offset: 2px; }

.signup-notice { display: grid; margin: var(--ds-s3) 0 var(--ds-s2); }
.signup-notice > p { margin: 0; }
.signup-notice__more { grid-area: 2 / 1; }
.signup-notice__privacy { grid-area: 2 / 1; justify-self: end; align-self: start; display: flex; align-items: center; gap: var(--ds-s1); min-height: var(--ds-control); font: var(--ds-t-link); color: var(--ds-primary); text-decoration: none; }
.signup-notice__more summary { display: flex; align-items: center; gap: var(--ds-s2); width: fit-content; min-height: var(--ds-pair); list-style: none; cursor: pointer; font: var(--ds-t-meta); color: var(--ds-deep); }
.signup-notice__more summary::-webkit-details-marker { display: none; }
.signup-notice__more summary::before { content: "\25B8"; flex: none; text-decoration: none; }
.signup-notice__more[open] summary::before { transform: rotate(90deg); }
[dir="rtl"] .signup-notice__more summary::before { transform: scaleX(-1); }
[dir="rtl"] .signup-notice__more[open] summary::before { transform: scaleX(-1) rotate(90deg); }
.signup-notice__more summary span { text-decoration: underline; text-underline-offset: 2px; }
.signup-store { margin: var(--ds-s2) 0 0; border: 0; background: var(--ds-soft); }
.signup-store p { margin: 0 0 var(--ds-s2); font: 400 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); color: var(--ds-text); }
.signup-store ul { margin: 0 0 var(--ds-s2); padding-inline-start: var(--ds-s5); font: 400 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); }
.signup-store p:last-child { margin-bottom: 0; }

.legal-page { padding-bottom: var(--ds-s5); }
.legal-page .ds-btn--block { margin-top: var(--ds-s5); }
.legal-page .ds-btn { text-decoration: none; }
.legal-version { margin: var(--ds-s2) 0 var(--ds-s4); font: 500 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); color: var(--ds-muted); }
.legal-english-only { margin: var(--ds-s4) 0; border: 0; background: var(--ds-soft); font: 600 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); }
.legal-short { margin: 0 0 var(--ds-s4); padding: var(--ds-s4); border-radius: var(--ds-radius); background: var(--ds-soft); }
.legal-page .legal-short__title { margin: 0 0 var(--ds-s2); font: 700 var(--ds-fs-button)/var(--ds-lh-button) var(--ds-font); }
.legal-short p { margin: 0; }
.legal-toc { margin: 0 0 var(--ds-s5); padding: var(--ds-s4); border-radius: var(--ds-radius); background: var(--ds-surface); }
.legal-toc ul { margin: 0; padding: 0; list-style: none; }
.legal-toc a { display: flex; align-items: center; justify-content: space-between; min-height: var(--ds-control); font: 500 var(--ds-fs-row)/var(--ds-lh-row) var(--ds-font); text-decoration: none; }
.legal-toc a::after { content: ""; flex: none; width: var(--ds-icon-sm); height: var(--ds-icon-sm); background: currentColor; -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat; }
[dir="rtl"] .legal-toc a::after { transform: scaleX(-1); }
.legal-page h2 { margin: var(--ds-s6) 0 var(--ds-s2); font: 700 var(--ds-fs-section)/var(--ds-lh-section) var(--ds-font); scroll-margin-top: var(--ds-s4); }
.legal-page p, .legal-page li { margin: 0 0 var(--ds-s3); font: 400 var(--ds-fs-body)/var(--ds-lh-body) var(--ds-font); overflow-wrap: anywhere; }
.legal-page ul { margin: 0 0 var(--ds-s3); padding-inline-start: var(--ds-s5); }
.legal-page .legal-toc ul { padding: 0; }
.legal-page .legal-toc li { margin: 0; }
.legal-plain { padding: var(--ds-s3) var(--ds-s4); border-radius: var(--ds-radius); background: var(--ds-soft); }
