.auth-page{--edu-green:#0e5a5a;--edu-green-dark:#0a4545;color:#051320;background:#f7f9f8;flex-direction:column;min-height:100dvh;font-family:Inter,system-ui,sans-serif;display:flex}.auth-top{justify-content:space-between;align-items:center;padding:16px 28px;display:flex}.auth-brand{color:#051320;letter-spacing:-.02em;font-size:15px;font-weight:600;text-decoration:none}.auth-brand span{color:var(--edu-green)}.auth-back{color:#666;font-size:13px;text-decoration:none}.auth-back:hover{color:var(--edu-green)}.auth-main{flex:1;justify-content:center;align-items:center;padding:24px 16px 48px;display:flex}.auth-card{background:#fff;border:1px solid #e2e2e2;border-radius:16px;width:100%;max-width:440px;padding:28px 24px;box-shadow:0 10px 30px #0513200a}.auth-card h1{letter-spacing:-.02em;margin:0;font-size:22px;font-weight:700}.auth-card>p{color:#666;margin:8px 0 22px;font-size:14px;line-height:1.5}.auth-field{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.auth-field label{letter-spacing:.06em;text-transform:uppercase;color:#888;font-size:11px;font-weight:600}.auth-field input{box-sizing:border-box;color:#111;background:#fff;border:1px solid #e2e2e2;border-radius:10px;width:100%;padding:11px 12px;font-family:inherit;font-size:14px}.auth-field input:focus{border-color:var(--edu-green);outline:none}.auth-password-wrap{position:relative}.auth-password-wrap input{padding-right:44px}.auth-password-toggle{color:#888;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex;position:absolute;top:50%;right:8px;transform:translateY(-50%)}.auth-password-toggle:hover{color:var(--edu-green);background:#f7fbfa}.auth-forgot{text-align:right;margin:6px 0 0;font-size:12px}.auth-forgot a{color:var(--edu-green);font-weight:600;text-decoration:none}.auth-forgot a:hover{text-decoration:underline}.auth-roles{gap:8px;margin-bottom:16px;display:grid}.auth-role{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e2e2;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:12px 14px;font-family:inherit;transition:border-color .15s,background .15s;display:flex}.auth-role:hover{background:#f7fbfa;border-color:#b7d5cf}.auth-role.is-active{border-color:var(--edu-green);background:#eef7f5}.auth-role-title{color:#111;font-size:14px;font-weight:600}.auth-role.is-active .auth-role-title{color:var(--edu-green)}.auth-role-hint{color:#777;font-size:12px;line-height:1.4}.auth-error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:13px}.auth-ok{color:var(--edu-green);background:#eef7f5;border:1px solid #b7d5cf;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:13px}.auth-submit{background:var(--edu-green);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;height:42px;font-family:inherit;font-size:14px;font-weight:600}.auth-submit:hover:not(:disabled){background:var(--edu-green-dark)}.auth-submit:disabled{opacity:.65;cursor:not-allowed}.auth-footer{text-align:center;color:#666;margin-top:18px;font-size:13px}.auth-footer a{color:var(--edu-green);font-weight:600;text-decoration:none}.auth-footer a:hover{text-decoration:underline}
