.public-signup{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);align-items:start;gap:clamp(2rem,5vw,5.5rem);padding-block:4rem 5.5rem;display:grid}.public-signup-welcome{padding-top:2rem;position:sticky;top:7rem}.public-signup-welcome h2{letter-spacing:-.055em;word-break:keep-all;max-width:13ch;margin-block:1rem;font-size:3rem;line-height:1.22}.public-signup-welcome>p:not(.public-eyebrow){max-width:36ch;color:var(--muted-foreground);word-break:keep-all;font-size:1.0625rem;line-height:1.8}.public-signup-artwork{margin:2rem -1.5rem 0}.public-signup-welcome-note{border-top:1px solid var(--border);gap:.8rem;max-width:35ch;padding-top:1.5rem;display:flex}.public-signup-welcome-note svg{width:1.25rem;color:var(--primary);flex-shrink:0}.public-signup-welcome-note p{color:var(--muted-foreground);word-break:keep-all;font-size:.875rem;line-height:1.7}.public-signup-form{border:1px solid var(--border);background:var(--card);border-radius:1.75rem;min-width:0;padding:2.25rem;box-shadow:0 12px 38px #23273d0a;box-shadow:0 12px 38px lab(16.112% 3.20227 -14.4531/.04)}.public-signup-heading h1{letter-spacing:-.04em;margin:.5rem 0 .65rem;font-size:2rem;font-weight:750;line-height:1.25}.public-signup-heading>p:last-child{color:var(--muted-foreground);word-break:keep-all;font-size:.9375rem;line-height:1.65}.public-signup-progress{border-block:1px solid var(--border);margin-block:1.75rem 2rem;padding-block:1rem}.public-signup-progress ol{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.public-signup-progress button{text-align:left;width:100%;min-height:44px;color:var(--muted-foreground);align-items:center;gap:.5rem;font-size:.8125rem;line-height:1.4;display:flex}.public-signup-step-number{border:1px solid var(--border);background:var(--background);border-radius:50%;flex-shrink:0;place-items:center;width:1.875rem;height:1.875rem;font-size:.75rem;font-weight:700;display:grid}.public-signup-step-number svg{width:.9375rem}.public-signup-progress [data-state=current] button{color:var(--foreground);font-weight:700}.public-signup-progress [data-state=current] .public-signup-step-number{background:var(--primary);border-color:var(--primary);color:var(--primary-foreground)}.public-signup-progress [data-state=done] .public-signup-step-number{color:#3a4e9d;color:lab(34.7575% 12.4767 -46.2775);background:#e4ebfd;background:lab(92.8961% .290006 -9.4035);border-color:#c5d0ef;border-color:lab(83.4802% .86689 -16.7624)}.public-signup-step-heading{margin-bottom:1.5rem;position:relative}.public-signup-step-caption{color:var(--primary);margin-bottom:.5rem;font-size:.75rem;font-weight:700}.public-signup-step-heading h2{letter-spacing:-.035em;margin-bottom:.55rem;font-size:1.375rem;font-weight:700;line-height:1.45}.public-signup-step-heading>p:last-of-type{max-width:46ch;color:var(--muted-foreground);word-break:keep-all;font-size:.875rem;line-height:1.7}.public-signup-role-label{background:var(--secondary);color:var(--secondary-foreground);border-radius:.5rem;margin-top:.75rem;padding:.3rem .6rem;font-size:.75rem;font-weight:650;display:inline-flex}.public-signup .public-signup-role{border:1px solid var(--border);text-align:left;border-radius:1rem;width:100%;padding:1.125rem;transition:border-color .18s ease-out,background-color .18s ease-out}.public-signup-role:hover{border-color:var(--primary);background:#f5f6fd;background:lab(97.0412% .323027 -3.39521)}.public-signup-role-icon{color:#3a55b1;color:lab(38.0008% 14.1173 -53.2683);background:#dde8ff;background:lab(91.6647% -.0405014 -14.9344);border-radius:.875rem;flex-shrink:0;place-items:center;width:3rem;height:3rem;display:grid}.public-signup-role-icon svg{color:inherit}.public-signup-role[data-role=professor] .public-signup-role-icon{color:#714696;color:lab(37.697% 30.845 -37.2576);background:#f1e6fc;background:lab(92.6504% 6.73538 -9.56069)}.public-signup-role[data-role=provider] .public-signup-role-icon{color:#904527;color:lab(38.865% 30.5022 33.221);background:#ffe6d6;background:lab(92.9252% 6.971 11.174)}.public-signup-role-name{font-size:1.0625rem;font-weight:700}.public-signup-role p{word-break:keep-all;line-height:1.55}.public-signup-role-arrow{width:1.125rem;color:var(--muted-foreground);flex-shrink:0}.public-signup input:not([type=checkbox]):not([type=radio]),.public-signup [role=combobox]{background:var(--background);border-color:var(--input);height:48px;min-height:48px;color:var(--foreground);box-shadow:none;border-radius:.75rem;font-size:16px}.public-signup input::placeholder{color:var(--muted-foreground);opacity:.85}.public-signup input[aria-invalid=true],.public-signup [role=combobox][aria-invalid=true]{border-color:var(--destructive)}.public-signup [data-slot=form-label]{color:var(--foreground);font-size:.875rem;font-weight:650;line-height:1.5}.public-signup [data-slot=form-message]{color:var(--destructive);font-size:.8125rem;line-height:1.6}.public-signup [data-slot=form-description]{font-size:.8125rem;line-height:1.6}.public-signup [data-slot=progress]{background:var(--muted)}.public-signup-password-toggle{width:48px;min-height:48px;color:var(--muted-foreground);border-radius:.75rem;place-items:center;display:grid;position:absolute;inset:0 0 0 auto}.public-signup-password-toggle:hover{color:var(--primary)}.public-signup [data-slot=button]{border-radius:.75rem;height:auto;min-height:48px}.public-signup [data-slot=button][data-variant=outline]{background:var(--card);border-color:var(--input);color:var(--foreground)}.public-signup .public-button{background:var(--primary);color:var(--primary-foreground);font-size:.9375rem}.public-signup-profile-fields{border-block:1px solid var(--border);padding-block:1.25rem}.public-signup-profile-fields h4,.public-signup-consents h4{color:var(--foreground);font-size:.9375rem}.public-signup-consents{padding-top:.25rem}.public-signup-consent-row{align-items:flex-start;gap:.75rem;display:flex}.public-signup .public-signup-checkbox{border-color:var(--input);background:var(--background);border-radius:.75rem;flex-shrink:0;width:44px;height:44px}.public-signup .public-signup-checkbox[data-state=checked]{color:var(--primary-foreground);background:var(--primary);border-color:var(--primary)}.public-signup-consent-row label{min-height:44px;color:var(--foreground);flex-wrap:wrap;align-items:center;gap:.25rem;display:flex}.public-signup-required{color:var(--primary);font-size:.75rem}.public-signup-provider-terms{border-top:1px solid var(--border);padding-top:1rem}.public-signup-terms-link{min-height:44px;color:var(--primary);text-underline-offset:3px;align-items:center;font-size:.8125rem;text-decoration:underline;display:inline-flex}.public-signup-notice,.public-signup-draft{border:1px solid var(--border);color:var(--foreground);background:var(--muted);overflow-wrap:anywhere;border-radius:.75rem;margin-bottom:1.25rem;padding:.9rem 1rem;font-size:.875rem;line-height:1.65}.public-signup-error{color:var(--destructive);background:#fdf2f1;background:lab(96.4078% 3.69772 1.89995);border-color:#f3bfbb;border-color:lab(82.0293% 18.6181 9.67613);gap:.625rem;display:flex}.public-signup-error svg{flex-shrink:0;width:1.1rem;height:1.1rem;margin-top:.15rem}.public-signup-draft{color:var(--muted-foreground)}.public-signup-login{border-top:1px solid var(--border);text-align:center;color:var(--muted-foreground);margin-top:1.5rem;padding-top:1.25rem;font-size:.875rem}.public-signup-login a{min-height:44px;color:var(--primary);text-underline-offset:3px;align-items:center;font-weight:650;text-decoration:underline;display:inline-flex}.public-signup-select [data-slot=select-item]{min-height:44px;font-size:16px}.public-signup-select [data-slot=select-item][data-highlighted]{background:var(--accent);color:var(--accent-foreground)}body:has(.public-signup) [data-slot=dialog-content] [class*=dark\:text-]{color:var(--foreground)}body:has(.public-signup) [data-slot=dialog-content] button{min-width:44px;min-height:44px}.public-signup :is(button,a,input):focus-visible{outline:3px solid var(--ring);outline-offset:3px}.public-signup button:disabled{cursor:not-allowed}.public-signup-success{align-items:center;max-width:1100px}.public-signup-success .public-signup-welcome{padding-top:0;position:static}.public-signup-success .public-signup-artwork{margin:0 -1.5rem}.public-signup-success-icon{color:#006640;color:lab(37.7684% -40.6531 15.896);background:#d8f3e3;background:lab(93.5137% -11.2521 4.4686);border-radius:1rem;place-items:center;width:3.5rem;height:3.5rem;margin-bottom:1.25rem;display:grid}.public-signup-success-icon svg{width:1.75rem;height:1.75rem}.public-signup-email{background:var(--muted);border-radius:.875rem;gap:.75rem;margin-block:1.5rem;padding:1rem;display:flex}.public-signup-email svg{width:1.25rem;color:var(--primary);flex-shrink:0}.public-signup-email p{overflow-wrap:anywhere;font-size:.875rem;line-height:1.7}.public-signup-email strong{color:var(--foreground);margin-top:.3rem;font-weight:650;display:block}.public-signup-success-steps{margin-block:1.5rem 2rem}.public-signup-success-steps h2{font-size:.9375rem;font-weight:650}.public-signup-success-steps ol{gap:1rem;margin-top:1rem;display:grid}.public-signup-success-steps li{color:var(--muted-foreground);align-items:center;gap:.75rem;font-size:.875rem;line-height:1.6;display:flex}.public-signup-success-steps li>span:first-child{border:1px solid var(--border);width:1.75rem;height:1.75rem;color:var(--primary);border-radius:50%;flex-shrink:0;place-items:center;font-size:.75rem;font-weight:650;display:grid}.public-signup-success .public-button{justify-content:center;gap:.5rem;width:100%;min-height:48px;display:flex}.public-signup-resend{border-top:1px solid var(--border);margin-top:1.5rem;padding-top:1.25rem}.public-signup-resend h2{font-size:.875rem;font-weight:650}.public-signup-resend>p{color:var(--muted-foreground);margin-top:.5rem;font-size:.875rem;line-height:1.65}.public-signup-resend button{margin-top:.75rem}.public-signup-success .public-signup-notice{margin-top:1rem;margin-bottom:0}@media (max-width:1023px){.public-signup{grid-template-columns:minmax(0,1fr);gap:1.5rem;max-width:650px;padding-block:2.5rem 4rem}.public-signup-welcome{display:none}.public-signup-form{padding:2rem}}@media (max-width:479px){.public-signup{padding-block:1.5rem 3rem}.public-signup-form{border-radius:1.25rem;padding:1.25rem}.public-signup-heading h1{font-size:1.75rem}.public-signup-progress{margin-block:1.25rem 1.5rem}.public-signup-progress button{flex-direction:column;align-items:flex-start;gap:.45rem;font-size:.75rem}.public-signup .public-signup-role{padding:1rem}.public-signup-role-icon{width:2.5rem;height:2.5rem}.public-signup-role>div{gap:.75rem}.public-signup-role-arrow{display:none}}@media (prefers-reduced-motion:reduce){.public-signup *,.public-signup-select{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
