*{box-sizing:border-box}[hidden]{display:none!important}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#edf2fa;background:#060a11;font-family:Inter,Segoe UI,Arial,sans-serif}body{background:radial-gradient(at 50% 0,#12312825,#0000 65%),#060a11;place-items:center;min-height:100svh;margin:0;padding:40px 20px;display:grid}.card{background:linear-gradient(150deg,#0c141f,#0a111b 75%);border:1px solid #253248;border-radius:24px;width:100%;max-width:448px;padding:36px;animation:.45s both arrive;box-shadow:0 28px 90px #0004}.brand{align-items:center;gap:13px;margin-bottom:32px;display:flex}.logo-box{background:#fff;border-radius:13px;flex-shrink:0;place-items:center;width:52px;height:52px;padding:6px;display:grid;overflow:hidden;box-shadow:0 4px 16px #0002}.brand img{object-fit:contain;width:100%;height:100%;display:block}.brand>img{background:#fff;border-radius:12px;padding:4px}.brand strong{letter-spacing:-.3px;font-size:16px;font-weight:650}.brand small{color:#889bb6;margin-top:5px;font-size:12px;display:block}h1{letter-spacing:-.9px;margin:0 0 10px;font-size:29px;font-weight:650;line-height:1.25}p{color:#94a4bc;margin:0 0 18px;font-size:14px;line-height:1.65}.tabs{isolation:isolate;background:#080f1b;border:1px solid #233149;border-radius:12px;margin:26px 0 24px;padding:5px;display:flex;position:relative}.tabs:before{content:"";z-index:-1;background:#203654;border-radius:8px;width:calc(50% - 5px);transition:transform .28s cubic-bezier(.2,.8,.2,1);position:absolute;top:5px;bottom:5px;left:5px;box-shadow:0 2px 5px #0003}.tabs.is-register:before{transform:translate(100%)}button,input{font:inherit}button{cursor:pointer;color:#e3ecfa;background:#141f30;border:1px solid #2a3a52;border-radius:11px;padding:13px 16px;font-size:13px;font-weight:600;transition:background .18s,transform .16s,box-shadow .18s,border-color .18s;position:relative}button:hover{background:#1a2a40;border-color:#405777}button:active{transform:scale(.975)}button:disabled{cursor:not-allowed;opacity:.7}.tabs button{color:#8799b2;background:0 0;border:0;flex:1;padding:9px;transition:color .2s}.tabs button.active{color:#a9ccff}.tabs button:hover{color:#d8e8ff;background:0 0}label{color:#c2cede;margin:18px 0 9px;font-size:12px;font-weight:600;display:block}input{color:#edf2fa;background:#0b1422;border:1px solid #2a3a52;border-radius:11px;outline:none;width:100%;height:48px;padding:13px 14px;font-size:14px;transition:background .2s,border-color .2s,box-shadow .2s}input::placeholder{color:#5f718d}input:hover{border-color:#405370}input:focus{background:#101b2d;border-color:#7bcebd;box-shadow:0 0 0 3px #5897ff15}button:focus-visible{outline-offset:3px;outline:2px solid #86b7ff}.password-wrap{position:relative}.password-wrap input{padding-right:50px}.password-wrap button{color:#8196b4;background:0 0;border:0;border-radius:8px;padding:9px;position:absolute;top:5px;right:5px}.password-wrap button:hover{color:#c5dcff;background:#233550}.password-wrap svg{width:20px;height:20px;display:block}.primary{color:#09251f;background:#80d2bf;border-color:#0000;width:100%;margin-top:25px;box-shadow:0 6px 18px #4788eb12}.primary:hover{background:#9bdfce;border-color:#0000;transform:translateY(-1px);box-shadow:0 7px 22px #4788eb25}.primary:active{transform:scale(.98)}.text-button{color:#91aace;background:0 0;border-color:#0000;margin:12px auto 0;padding:8px 10px;font-size:12px;display:block}.text-button:hover{background:#19263a;border-color:#0000}.divider{color:#657b9a;align-items:center;gap:14px;margin:23px 0;font-size:11px;display:flex}.divider:before,.divider:after{content:"";background:#243248;flex:1;height:1px}.google{background:#101a29;justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.google-icon{flex-shrink:0;width:18px;height:18px}#message:empty{display:none}#message{color:#aac4e6;background:#142239;border:1px solid #293e5b;border-radius:10px;margin:18px 0 0;padding:12px 14px;font-size:12px;animation:.22s both arrive}#message.error{color:#f3b6b7;background:#34202b;border-color:#62404a}.footer{text-align:center;color:#5f7391;letter-spacing:.2px;margin-top:27px;font-size:11px;display:block}#pending{border-top:1px solid #263650;margin-top:20px;padding-top:18px}#pending button{margin:3px}.switching{animation:.25s both tab-in}.loading:after{content:"";vertical-align:middle;border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;margin-left:10px;animation:.7s linear infinite spin;display:inline-block}form{margin:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes tab-in{0%{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@media (width<=480px){body{padding:24px 18px}.card{border-radius:22px;padding:28px 24px}.brand{margin-bottom:27px}.brand strong{font-size:15px}h1{font-size:27px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}#message{text-align:center}.register-link{text-align:center;color:#7f94b1;margin:23px 0 0;font-size:12px}.register-link a{color:#9bdcca;margin-left:4px;text-decoration:none}.register-link a:hover{text-decoration:underline}#step-label{color:#82a8dd;letter-spacing:1.6px;margin-bottom:14px;font-size:10px;display:block}#invitation-list{gap:10px;margin-top:16px;display:grid}.invite-row{border:1px solid #293c57;border-radius:10px;padding:12px;font-size:12px}.invite-row p{margin:4px 0 8px;font-size:12px}.token-output{overflow-wrap:anywhere;color:#c8ddff;background:#0a1321;border-radius:8px;padding:8px;font-family:monospace}input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.remember-option{color:#acc7c4;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;width:fit-content;margin:18px 0 0;font-size:12px;font-weight:500;display:flex}.remember-option input{appearance:none;cursor:pointer;background:#0a151d;border:1px solid #3b555b;border-radius:5px;flex:0 0 18px;place-items:center;width:18px;height:18px;margin:0;padding:0;transition:background .18s,border-color .18s,box-shadow .18s;display:grid}.remember-option input:checked{background:#85d7c1;border-color:#85d7c1}.remember-option input:checked:after{content:"";border-bottom:2px solid #08271f;border-left:2px solid #08271f;width:7px;height:4px;transform:translateY(-1px)rotate(-45deg)}.remember-option:hover input{border-color:#8adbc6}.remember-option input:focus-visible{outline-offset:3px;box-shadow:none;outline:2px solid #a7edda}.remember-option input:disabled{opacity:.6;cursor:not-allowed}#login-auth-screen{z-index:100;background:#060a11;flex-direction:column;justify-content:center;align-items:center;gap:18px;display:flex;position:fixed;inset:0}#login-auth-screen p{color:#a9c8c0;margin:0}.login-auth-spinner{border:2px solid #233d37;border-top-color:#8ad5c1;border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}.login-auth-checking .card{visibility:hidden;pointer-events:none}#student-class{font:inherit;color:#edf2fa;background:#0b1422;border:1px solid #2a3a52;border-radius:11px;outline:none;width:100%;height:48px;padding:0 14px;font-size:14px;transition:border-color .18s,box-shadow .18s}#student-class:hover{border-color:var(--dropdown-border,#405370)}#student-class:focus-visible:not(.dropdown-pointer-focus){border-color:#7bcebd;box-shadow:0 0 0 3px #7bcebd18}#student-class:invalid{color:#879cad}select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.login-policy-tab{color:#94a4bc;background:#080f1b;border:1px solid #233149;border-radius:10px;width:max-content;max-width:100%;margin:24px auto 0;padding:10px 16px;font-size:12px;font-weight:600;text-decoration:none;transition:background .18s,border-color .18s;display:block}.login-policy-tab:hover{color:#e3ecfa;background:#141f30;border-color:#405370}.login-policy-tab:focus-visible{outline-offset:3px;outline:2px solid #83d7c4}.login-footer{color:#71859f;justify-content:space-between;align-items:center;gap:16px;width:100%;max-width:448px;margin-top:24px;font-size:11px;display:flex}.login-footer a{color:#94a4bc;text-decoration:none}.login-footer a:hover{color:#80d2bf;text-decoration:underline}body:has(.login-footer){flex-direction:column;justify-content:center;align-items:center;display:flex}@media (width<=480px){.login-footer{text-align:center;flex-wrap:wrap;justify-content:center}}.login-auth-checking .login-footer{visibility:hidden}.auth-action-card .brand{margin-bottom:28px}.auth-action-card h1{margin-bottom:10px}.auth-action-card p{margin:0 0 20px;line-height:1.6}.auth-action-card #verify-help:empty,.auth-action-card #recovery-error:empty{display:none}.auth-action-primary{color:#09251f;background:#80d2bf;border-radius:11px;justify-content:center;align-items:center;min-height:44px;margin-top:22px;padding:12px 18px;font-size:13px;font-weight:600;text-decoration:none;display:flex}.auth-action-primary:hover{background:#9bdfce}.auth-action-secondary{text-align:center;color:#91a8ba;margin-top:18px;font-size:12px;text-decoration:none;display:block}.auth-action-primary:focus-visible,.auth-action-secondary:focus-visible{outline-offset:4px;outline:2px solid #83d7c4}.auth-action-symbol{color:#9ae1ca;background:#17372e;border:1px solid #31584c;border-radius:16px;justify-content:center;align-items:center;width:52px;height:52px;margin-bottom:20px;display:none}.auth-action-symbol svg{width:28px;height:28px}.auth-action-card[data-state=success] .auth-action-symbol{display:flex}.auth-action-card .login-auth-spinner{margin:22px 0 18px}.auth-action-card[data-state=ready]>.auth-action-primary{color:#91a8ba;background:0 0;margin-top:18px}.auth-action-card #recovery-form{margin-top:20px}.auth-action-card #recovery-error{color:#efacb0}#student-class{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23e4edfa' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:16px;padding-right:42px}
