/* SchoolON original modal, tuned for desktop and narrow mobile screens. */
.so-email-auth{width:100%;max-width:460px;margin:0 auto;padding:4px 2px;color:#f2f3f5;box-sizing:border-box}.so-email-auth *{box-sizing:border-box}.so-email-auth .so-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:0 0 28px;padding:4px!important}.so-auth-tabs button{min-height:42px;border:0;background:transparent;font-weight:650;cursor:pointer}.so-auth-heading{text-align:center}.so-email-auth .auth-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto 14px;background:#353b64!important;color:#aeb5ff;border:1px solid #4a5383;border-radius:16px}.so-auth-eyebrow{display:block;font-size:12px;color:#949ba4;letter-spacing:.3px;margin-bottom:8px}.so-email-auth h2{margin:0!important;font-size:23px!important;line-height:1.4;letter-spacing:-.7px;word-break:keep-all}.so-auth-heading p{margin:10px 0 0!important;font-size:13px;line-height:1.75;color:#b5bac1;white-space:pre-line;overflow-wrap:anywhere}.so-auth-heading strong{color:#c3c8ff}.so-auth-progress{display:flex;justify-content:center;gap:20px;padding:0;margin:24px 0 28px;list-style:none}.so-auth-progress li{display:flex;align-items:center;gap:6px;font-size:11px;color:#949ba4;white-space:nowrap}.so-auth-progress li>span{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#232428;border:1px solid #41434a;font-size:10px}.so-auth-progress li.current{color:#c3c8ff}.so-auth-progress li.current>span{background:#5865f2;border-color:#5865f2;color:#f2f3f5}.so-email-auth form{display:flex;flex-direction:column;gap:20px;margin:24px 0 0}.so-email-auth:has(.so-auth-progress) form{margin-top:0}.so-role-fieldset{margin:0;padding:0;border:0;min-width:0}.so-role-fieldset legend{font-size:12px;font-weight:650;margin-bottom:10px;color:#dbdee1}.so-email-auth .auth-role{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0}.so-email-auth .auth-role button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;position:relative;padding:18px 16px!important;min-height:116px;border:1px solid #41434a;border-radius:10px!important;gap:6px;cursor:pointer}.so-email-auth .auth-role button>svg{margin-bottom:4px;color:#949ba4}.so-email-auth .auth-role button.active>svg{color:#bcc2ff}.so-email-auth .auth-role b{font-size:14px}.so-email-auth .auth-role span{font-size:11px;line-height:1.5}.so-email-auth .auth-role i{position:absolute;right:12px;top:12px;font-style:normal;color:#b6bdff}.so-email-auth .so-auth-field{display:flex;flex-direction:column;gap:8px;font-size:12px;font-weight:650}.so-email-auth input:not([type=checkbox]){width:100%;background:#1e1f22!important;border:1px solid #464950!important;color:#f2f3f5;font-size:14px;font-weight:400;outline:none}.so-email-auth input::placeholder{color:#80848e}.so-email-auth input:focus-visible{border-color:#a1aaff!important;outline:2px solid #5865f233!important;outline-offset:2px}.so-email-auth .otp-input{text-align:center;font-size:28px!important;letter-spacing:10px;padding-left:24px!important;font-variant-numeric:tabular-nums}.so-auth-hint{font-size:11px!important;color:#949ba4;line-height:1.7}.so-email-auth .primary.full{width:100%;display:flex;justify-content:center;align-items:center;min-height:48px;margin:0!important;font-size:14px;font-weight:700}.so-email-auth button:disabled{opacity:.5;cursor:not-allowed}.so-email-auth .auth-footnote{margin:22px 0 0;padding:16px 0 0;border-top:1px solid #41434a;font-size:11px;line-height:1.7;text-align:center}.so-email-auth .fineprint{font-size:10px;margin:8px 0 0;text-align:center;line-height:1.7;color:#949ba4}.so-auth-consent{display:flex;flex-direction:column;gap:8px;font-size:11px;color:#b5bac1}.so-auth-consent>label{display:flex;align-items:flex-start;gap:9px!important;font-weight:400}.so-email-auth .so-auth-consent input[type=checkbox]{width:16px;height:16px;min-height:16px!important;flex:0 0 16px;padding:0!important;margin:1px 0 0;accent-color:#5865f2}.so-auth-consent summary{cursor:pointer;color:#b6bdff;margin-left:25px}.so-auth-terms{margin-top:12px;max-height:200px;overflow:auto;background:#232428;border:1px solid #41434a;border-radius:8px;padding:14px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:11px;line-height:1.8}.so-auth-terms h3{font-size:12px;margin:0 0 8px}.so-auth-terms p{margin:0 0 14px}.so-auth-error{padding:14px!important;border:1px solid #69404b;border-radius:8px;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.so-auth-error p{margin:6px 0 0!important}.so-auth-notice{padding:14px;font-size:12px;line-height:1.7}.so-auth-notice button{display:block;margin:8px 0 0}.so-email-auth .text-button{background:transparent;color:#b6bdff;border:0;cursor:pointer;min-height:36px}.so-auth-resend{width:100%;margin-top:10px}.so-native-login{display:block;margin-top:12px;text-align:center;color:#949ba4;text-decoration:underline;font-size:11px}.so-email-auth button:focus-visible,.so-email-auth a:focus-visible,.so-email-auth summary:focus-visible{outline:2px solid #aeb5ff;outline-offset:3px}
@media(max-width:600px){.so-email-auth{padding:0}.so-email-auth h2{font-size:20px!important}.so-email-auth .so-auth-tabs{margin-bottom:22px}.so-auth-progress{gap:13px;margin:20px 0 24px}.so-email-auth .auth-role{gap:10px}.so-email-auth .auth-role button{padding:16px 12px!important}.so-email-auth form{gap:18px}.so-email-auth .so-auth-field input:not([type=checkbox]){font-size:16px}.so-email-auth .auth-footnote{margin-top:20px}.so-auth-heading p{font-size:12px}}
[role=dialog]:has(.so-email-auth){width:520px!important;max-width:calc(100vw - 28px)!important;padding:42px 28px 24px!important;gap:0!important;max-height:calc(100dvh - 32px)!important;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#53565f #313338}
[role=dialog]:has(.so-email-auth)>[data-slot=dialog-header]{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.so-email-auth form>.so-auth-field{display:flex!important;margin:0!important;gap:8px!important}.so-email-auth .so-auth-field input{margin:0!important}.so-email-auth .auth-role button{min-height:108px}.so-email-auth .so-auth-tabs{margin-bottom:22px}.so-email-auth .auth-footnote{margin-top:18px;padding-top:14px}
@media(max-width:600px){[role=dialog]:has(.so-email-auth){padding:40px 20px 22px!important;max-width:calc(100vw - 24px)!important}.so-email-auth .auth-icon{width:44px;height:44px;margin-bottom:12px}.so-email-auth .so-auth-tabs{margin-bottom:18px}.so-auth-progress{margin:18px 0 22px}.so-email-auth form{gap:18px}.so-email-auth .auth-role button{min-height:106px}.so-email-auth .fineprint{margin-top:6px}}
