.signup-sheet[hidden] { display: none; }
.signup-sheet { position: fixed; inset: 0; z-index: 10000; display: flex; align-items: flex-end; justify-content: center; background: rgba(3,6,12,.74); }
.signup-sheet__panel { width: 100%; max-height: 92dvh; overflow: auto; padding: 20px max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left)); border-radius: 22px 22px 0 0; background: #151b2a; box-shadow: 0 -12px 50px rgba(0,0,0,.45); }
.signup-sheet h2 { margin: 0 0 6px; font-size: 1.45rem; }
.signup-sheet__lead { margin: 0 0 18px; color: #b9c4d8; }
.signup-sheet__provider, .signup-sheet button[type=submit], .signup-sheet__later { width: 100%; min-height: 46px; margin: 6px 0; border: 0; border-radius: 999px; font-weight: 750; cursor: pointer; }
.signup-sheet__provider { color: #101522; background: #fff; }
.signup-sheet__apple { color: #fff; background: #050505; border: 1px solid #566078; }
.signup-sheet__google { width: 100%; max-width: 100%; box-sizing: border-box; min-height: 46px; display: flex; justify-content: center; align-items: center; margin: 6px 0; overflow: hidden; }
.signup-sheet__google > div { width: 100% !important; max-width: 100%; display: flex; justify-content: center; }
.signup-sheet__google iframe { max-width: 100% !important; }
.signup-sheet__divider { display: flex; align-items: center; gap: 10px; color: #8f9bb0; margin: 12px 0; font-size: .85rem; }
.signup-sheet__divider::before,.signup-sheet__divider::after { content: ''; height: 1px; flex: 1; background: #364057; }
.signup-sheet label { display: block; margin: 10px 0 4px; color: #dbe3f2; font-size: .88rem; }
.signup-sheet input:not([type="checkbox"]),.signup-sheet select { width: 100%; min-height: 44px; padding: 9px 11px; color: #fff; background: #0d1220; border: 1px solid #46516a; border-radius: 10px; box-sizing: border-box; }
.signup-sheet__row { display: grid; grid-template-columns: repeat(3,1fr); gap: 7px; }
.signup-sheet__password { display: flex; gap: 7px; }
.signup-sheet__password input { flex: 1; }
.signup-sheet__password button { min-width: 64px; border-radius: 10px; border: 1px solid #46516a; background: transparent; color: #fff; }
.signup-sheet__terms { display: flex; gap: 10px; align-items: flex-start; line-height: 1.35; margin: 14px 0; cursor: pointer; }
.signup-sheet__terms input[type="checkbox"] { width: 21px; height: 21px; min-width: 21px; min-height: 21px; max-width: 21px; flex: 0 0 21px; margin: 11px 0 0; padding: 0; accent-color: #27e0b3; cursor: pointer; }
.signup-sheet__terms > span { flex: 1; min-width: 0; padding: 11px 0; }

/* Mobile-web only: same shared --mw-consent-checkbox-size as the landing try
   card's .mw-try-consent (mobile-app.css) — desktop keeps its 21px box above.
   min-height on the row (not the box) is what guarantees a >=44px tap target. */
html.mw-layout-mobile .signup-sheet__terms {
  min-height: 44px;
}
html.mw-layout-mobile .signup-sheet__terms input[type="checkbox"] {
  width: var(--mw-consent-checkbox-size, 26px) !important;
  height: var(--mw-consent-checkbox-size, 26px) !important;
  min-width: var(--mw-consent-checkbox-size, 26px) !important;
  min-height: var(--mw-consent-checkbox-size, 26px) !important;
  max-width: var(--mw-consent-checkbox-size, 26px) !important;
  flex: 0 0 var(--mw-consent-checkbox-size, 26px) !important;
  margin: -1px 0 0;
}
.signup-sheet a { color: #ffabc5; }
.signup-sheet button[type=submit] { color: #17101a; background: #ff92b6; }
.signup-sheet__later { color: #c5cede; background: transparent; border: 1px solid #46516a; }
.signup-sheet__error { min-height: 20px; color: #ff9b9b; margin: 8px 0; }
.signup-sheet__social-step[hidden],.signup-sheet__email[hidden] { display:none; }
@media (min-width: 700px) { .signup-sheet { align-items:center; padding:24px; } .signup-sheet__panel { max-width:520px; border-radius:22px; max-height:90vh; } }
