login-register.less 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. @brand-ieee-color: #00629b;
  2. @brand-google-color: #276fea; // Not the "official" color but modified for a11y
  3. @brand-twitter-color: #1da1f2;
  4. @brand-orcid-color: #a6ce39;
  5. .login-register-alternatives {
  6. .form-group:last-child {
  7. margin-bottom: 0;
  8. }
  9. }
  10. .login-register-container {
  11. max-width: 400px;
  12. margin: 0 auto;
  13. padding-bottom: @line-height-computed * 5;
  14. }
  15. .login-register-header {
  16. padding-top: @line-height-computed;
  17. padding-bottom: @line-height-computed - 5;
  18. border-bottom: solid 1px @hr-border;
  19. }
  20. .login-register-header-heading {
  21. margin: 0;
  22. color: @text-color;
  23. }
  24. .login-register-card {
  25. padding-top: 0;
  26. padding-bottom: 0;
  27. text-align: center;
  28. }
  29. .login-register-form {
  30. padding: @line-height-computed;
  31. border-bottom: solid 1px @hr-border;
  32. &:last-child {
  33. border-bottom-width: 0;
  34. }
  35. }
  36. .login-register-text,
  37. .login-register-hr-text-container {
  38. margin: 0;
  39. }
  40. .login-register-text {
  41. padding-bottom: 25px;
  42. font-size: 90%;
  43. &:last-child {
  44. padding-bottom: 0;
  45. }
  46. }
  47. .login-register-hr-text-container {
  48. line-height: 1;
  49. position: relative;
  50. padding: @line-height-computed 0;
  51. &::before {
  52. content: '';
  53. position: absolute;
  54. height: 1px;
  55. background-color: @hr-border;
  56. top: 50%;
  57. left: 0;
  58. right: 0;
  59. }
  60. }
  61. .login-register-hr-text {
  62. position: relative;
  63. background-color: #fff;
  64. padding: 0 (@line-height-computed / 2);
  65. }
  66. .login-btn-icon {
  67. position: absolute;
  68. top: 4px;
  69. left: 4px;
  70. background: #fff url(../../../public/img/brand/lion.svg) center/20px no-repeat;
  71. border-radius: 99999px;
  72. width: 26px;
  73. height: 26px;
  74. &::before {
  75. content: '\00a0'; // Non-breakable space. A non-breakable character here makes this icon work like font-awesome.
  76. }
  77. }
  78. .login-btn-icon-twitter {
  79. background-image: url(../../../public/img/other-brands/logo_twitter.svg);
  80. }
  81. .registration-message-heading {
  82. color: @text-color;
  83. }
  84. .registration-message-details {
  85. font-size: 90%;
  86. }
  87. .registration-block-separator {
  88. margin-bottom: 0px;
  89. }
  90. .website-redesign {
  91. .login-register-container {
  92. max-width: 320px;
  93. }
  94. .login-register-text {
  95. font-size: 0.875rem;
  96. line-height: 1.4;
  97. text-align: left;
  98. &.login-register-text-center {
  99. text-align: center;
  100. }
  101. }
  102. .login-register-hr-text-container {
  103. padding: @line-height-computed 0 calc(@line-height-computed / 2) 0;
  104. &::before {
  105. top: calc(@line-height-computed + @line-height-computed / 4);
  106. }
  107. }
  108. .login-register-error-container {
  109. padding-bottom: calc(@line-height-computed / 2);
  110. }
  111. .login-register-other-links {
  112. padding: @line-height-computed 0;
  113. a {
  114. color: var(--green-50);
  115. text-decoration: underline;
  116. // text-decoration-;skip-ink is for letter with descender (like 'g' and 'y')
  117. // this will force underline to not skip the descender
  118. text-decoration-skip-ink: none;
  119. &:hover {
  120. color: var(--green-60);
  121. }
  122. // for accessibility with keyboard navigation
  123. &:focus {
  124. outline: 2px solid var(--green-50);
  125. outline-offset: 1px;
  126. }
  127. }
  128. }
  129. .flex-center {
  130. display: flex;
  131. justify-content: center;
  132. }
  133. .login-btn {
  134. display: flex;
  135. align-items: center;
  136. justify-content: center;
  137. padding: 4px 0;
  138. }
  139. .login-btn-icon {
  140. position: relative;
  141. top: unset;
  142. left: unset;
  143. background: unset;
  144. border-radius: unset;
  145. width: 20px;
  146. height: 20px;
  147. margin-right: 5px;
  148. &::before {
  149. content: unset;
  150. }
  151. }
  152. .form-group {
  153. text-align: left;
  154. position: relative;
  155. label {
  156. font-size: @font-size-small;
  157. }
  158. }
  159. .form-group-password {
  160. display: flex;
  161. position: relative;
  162. flex-direction: column;
  163. .form-group-password-input {
  164. input.form-control {
  165. padding-right: 35px;
  166. }
  167. }
  168. .visibility-toggle {
  169. position: absolute;
  170. right: 0;
  171. top: 0;
  172. width: @input-height-base;
  173. height: @input-height-base;
  174. display: flex;
  175. align-items: center;
  176. justify-content: center;
  177. border: unset;
  178. background-color: unset;
  179. #visibility-icon-off {
  180. margin-top: 2px; // workaround for the icon not having the same center as the non-slashed one
  181. }
  182. }
  183. }
  184. .top-padding-computed-2 {
  185. padding-top: @line-height-computed * 2;
  186. }
  187. .form-group-password-input {
  188. display: flex;
  189. flex-direction: column;
  190. width: 100%;
  191. }
  192. .register-container {
  193. .register-content-container {
  194. display: flex;
  195. background-color: #f2f4f7;
  196. min-height: 100vh;
  197. }
  198. .register-form {
  199. width: 100%;
  200. height: 100%;
  201. display: flex;
  202. justify-content: center;
  203. padding-top: @line-height-computed * 2;
  204. background-color: @white;
  205. @media (max-width: @screen-sm-max) {
  206. height: 100%;
  207. }
  208. .login-register-card {
  209. max-width: 320px;
  210. padding-bottom: @line-height-computed * 5; // for cookie banner
  211. }
  212. }
  213. .register-illustration-container {
  214. height: 100%;
  215. display: flex;
  216. align-items: center;
  217. .register-illustration {
  218. position: absolute;
  219. left: 80px;
  220. top: 100px;
  221. // for wide screen
  222. @media (min-width: 1700px) {
  223. position: relative;
  224. left: unset;
  225. top: unset;
  226. display: flex;
  227. align-items: center;
  228. justify-content: center;
  229. width: 100%;
  230. }
  231. .register-main-image {
  232. max-width: 850px;
  233. @media (max-width: 1350px) {
  234. max-width: 750px;
  235. }
  236. @media (max-width: 1150px) {
  237. max-width: 670px;
  238. }
  239. }
  240. .sticky-tags {
  241. position: absolute;
  242. height: 210px;
  243. bottom: -135px;
  244. right: 130px;
  245. // for wide screen
  246. @media (min-width: 1700px) {
  247. right: calc(50% - 300px);
  248. }
  249. }
  250. }
  251. }
  252. }
  253. .tos-agreement-notice {
  254. text-align: left;
  255. font-size: 12px;
  256. a {
  257. color: var(--green-50);
  258. text-decoration: underline;
  259. // text-decoration-;skip-ink is for letter with descender (like 'g' and 'y')
  260. // this will force underline to not skip the descender
  261. text-decoration-skip-ink: none;
  262. &:hover {
  263. color: var(--green-60);
  264. }
  265. // for accessibility with keyboard navigation
  266. &:focus {
  267. outline: 2px solid var(--green-50);
  268. outline-offset: 1px;
  269. }
  270. }
  271. }
  272. .register-header-logo {
  273. &:focus {
  274. outline: 2px solid var(--green-50);
  275. }
  276. }
  277. }