launcher.css 27 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261
  1. /*******************************************************************************
  2. * *
  3. * Fonts *
  4. * *
  5. ******************************************************************************/
  6. @font-face {
  7. font-family: 'Avenir Book';
  8. src: url('../fonts/Avenir-Book.ttf');
  9. }
  10. @font-face {
  11. font-family: 'Avenir Medium';
  12. src: url('../fonts/Avenir-Medium.ttf');
  13. }
  14. @font-face {
  15. font-family: 'Ringbearer';
  16. src: url('../fonts/Ringbearer.ttf');
  17. }
  18. /*******************************************************************************
  19. * *
  20. * Element Styles *
  21. * *
  22. ******************************************************************************/
  23. /* Reset body, html, and div presets. */
  24. body, html, div {
  25. margin: 0px;
  26. padding: 0px;
  27. }
  28. /* Reset p presets. */
  29. p {
  30. -webkit-margin-before: 0em;
  31. -webkit-margin-after: 0em;
  32. }
  33. /*body {
  34. background: url('./../images/backgrounds/0.jpg') no-repeat center center fixed;
  35. background-size: cover;
  36. }*/
  37. /*******************************************************************************
  38. * *
  39. * Frame Styles (frame.ejs) *
  40. * *
  41. ******************************************************************************/
  42. #frame_bar {
  43. -webkit-app-region: drag;
  44. -webkit-user-select: none;
  45. background: rgba(1, 2, 1, 0.5);
  46. min-height: 22px;
  47. display: flex;
  48. align-items: center;
  49. position: relative;
  50. z-index: 10000;
  51. }
  52. #frame_btn_dock {
  53. margin-left: 2px;
  54. }
  55. .frame_btn {
  56. height: 12px;
  57. width: 12px;
  58. border-radius: 50%;
  59. border: 0px;
  60. margin-left: 5px;
  61. -webkit-app-region: no-drag !important;
  62. cursor: pointer;
  63. }
  64. .frame_btn:focus {
  65. outline: 0px;
  66. }
  67. #frame_btn_close {
  68. background-color: #e74c32;
  69. }
  70. #frame_btn_close:hover,
  71. #frame_btn_close:focus {
  72. background-color: #FF9A8A;
  73. }
  74. #frame_btn_close:active {
  75. background-color: #ff8d7b;
  76. }
  77. #frame_btn_restoredown {
  78. background-color: #fed045;
  79. }
  80. #frame_btn_restoredown:hover,
  81. #frame_btn_restoredown:focus {
  82. background-color: #FFE9A9;
  83. }
  84. #frame_btn_restoredown:active {
  85. background-color: #ffde7b;
  86. }
  87. #frame_btn_minimize {
  88. background-color: #96e734;
  89. }
  90. #frame_btn_minimize:hover,
  91. #frame_btn_minimize:focus {
  92. background-color: #D6FFA6;
  93. }
  94. #frame_btn_minimize:active {
  95. background-color: #bfff76;
  96. }
  97. /*******************************************************************************
  98. * *
  99. * Welcome View (welcome.ejs) *
  100. * *
  101. ******************************************************************************/
  102. #welcomeContainer {
  103. position: relative;
  104. display: flex;
  105. justify-content: center;
  106. align-items: center;
  107. height: 100%;
  108. width: 100%;
  109. transition: 0.25s ease;
  110. }
  111. #welcomeContent {
  112. display: flex;
  113. flex-direction: column;
  114. justify-content: center;
  115. align-items: center;
  116. width: 50%;
  117. top: -10%;
  118. position: relative;
  119. }
  120. .cloudDiv {
  121. position: absolute;
  122. height: 100%;
  123. width: 100%;
  124. display: flex;
  125. flex-direction: column;
  126. }
  127. .cloudTop {
  128. height: 50%;
  129. width: 100%;
  130. background-image: url('../images/cloudTrans.png');
  131. animation: clouds1 80s linear infinite;
  132. background-size: cover;
  133. }
  134. .cloudBottom {
  135. height: 50%;
  136. width: 100%;
  137. background-image: url('../images/cloudTrans2.png');
  138. animation: clouds2 70s linear infinite;
  139. background-size: cover;
  140. }
  141. @keyframes clouds1 {
  142. to {
  143. background-position: 200%;
  144. }
  145. }
  146. @keyframes clouds2 {
  147. to {
  148. background-position: 230%;
  149. }
  150. }
  151. #welcomeImageSeal {
  152. border-radius: 50%;
  153. border: 2px solid #cad7e1;
  154. background: rgba(1, 2, 1, 0.5);
  155. height: 125px;
  156. width: 125px;
  157. box-shadow: 0px 0px 10px 0px rgb(0, 0, 0);
  158. margin-bottom: 10%;
  159. margin-top: 10%;
  160. }
  161. #welcomeHeader {
  162. font-family: 'Avenir Medium';
  163. text-align: center;
  164. color: white;
  165. margin-bottom: 25px;
  166. letter-spacing: 1px;
  167. font-size: 20px;
  168. text-shadow: white 0px 0px 0px;
  169. }
  170. #welcomeDescription {
  171. font-family: 'Avenir Book';
  172. text-align: center;
  173. color: white;
  174. font-size: 14px;
  175. font-weight: 100;
  176. text-shadow: rgba(255, 255, 255, 0.75) 0px 0px 20px
  177. }
  178. /* Login button styles. */
  179. #welcomeButton {
  180. background: none;
  181. color: #fff;
  182. font-weight: bold;
  183. font-family: 'Avenir Book';
  184. letter-spacing: 2px;
  185. border: none;
  186. padding: 15px 5px;
  187. margin: 10px 0px;
  188. cursor: pointer;
  189. position: relative;
  190. right: -20px;
  191. transition: 0.5s ease;
  192. margin-top: 5%;
  193. margin-bottom: -5%;
  194. }
  195. #welcomeButton:disabled {
  196. color: rgba(255, 255, 255, 0.75);
  197. pointer-events: none;
  198. }
  199. #welcomeButton:hover,
  200. #welcomeButton:focus {
  201. text-shadow: 0px 0px 20px #fff;
  202. outline: none;
  203. }
  204. #welcomeButton:active {
  205. color: #c7c7c7;
  206. text-shadow: 0px 0px 20px #c7c7c7;
  207. }
  208. #welcomeSVG {
  209. -webkit-transform: translate3d(0, 0, 0);
  210. overflow: visible;
  211. transform: rotate(90deg);
  212. margin-left: 20px;
  213. transition: 0.25s ease;
  214. width: 20px;
  215. height: 20px;
  216. }
  217. #welcomeButton:hover #welcomeSVG,
  218. #welcomeButton:focus #welcomeSVG {
  219. -webkit-filter: drop-shadow(0px 0px 2px #fff);
  220. }
  221. #welcomeButton:active #welcomeSVG .arrowLine {
  222. stroke: #c7c7c7;
  223. }
  224. #welcomeButton:active #welcomeSVG {
  225. -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7);
  226. }
  227. #welcomeButton:disabled #welcomeSVG .arrowLine {
  228. stroke: rgba(255, 255, 255, 0.75);
  229. }
  230. #welcomeButtonContent {
  231. display: flex;
  232. align-items: center;
  233. }
  234. /*******************************************************************************
  235. * *
  236. * Login View (login.ejs) *
  237. * *
  238. ******************************************************************************/
  239. /* Login span styles. */
  240. .loginSpan {
  241. font-family: 'Avenir Book';
  242. font-size: 14px;
  243. color: #fff;
  244. font-weight: bold;
  245. }
  246. /* Styles for dimmer login span. */
  247. .loginSpanDim {
  248. font-family: 'Avenir Book';
  249. font-size: 12px;
  250. color: #848484;
  251. font-weight: bold;
  252. }
  253. /* Main login container. */
  254. #loginContainer {
  255. position: relative;
  256. display: flex;
  257. justify-content: center;
  258. align-items: center;
  259. height: 100%;
  260. width: 100%;
  261. transition: filter 0.25s ease;
  262. }
  263. /* Login content wrapper. */
  264. #loginContent {
  265. display: flex;
  266. justify-content: center;
  267. align-items: center;
  268. height: 100%;
  269. padding: 0px 25px;
  270. }
  271. /* Login form. */
  272. #loginForm {
  273. display: flex;
  274. flex-direction: column;
  275. justify-content: center;
  276. align-items: center;
  277. }
  278. /* Login form anchor styles. */
  279. #loginForm a {
  280. font-family: 'Avenir Book';
  281. font-size: 12px;
  282. color: #848484;
  283. font-weight: bold;
  284. text-decoration: none;
  285. transition: 0.25s ease;
  286. }
  287. #loginForm a:hover,
  288. #loginForm a:focus {
  289. color: #a2a2a2;
  290. outline: none;
  291. }
  292. #loginForm a:active {
  293. color: #8b8b8b;
  294. }
  295. /* Logo on login form. */
  296. #loginImageSeal {
  297. border-radius: 50%;
  298. border: 2px solid #cad7e1;
  299. background: rgba(1, 2, 1, 0.5);
  300. height: 125px;
  301. width: 125px;
  302. box-shadow: 0px 0px 10px 0px rgb(0, 0, 0);
  303. margin-bottom: 20px;
  304. }
  305. /* Header on login view. */
  306. #loginSubheader {
  307. font-family: 'Avenir Medium';
  308. margin-bottom: 25px;
  309. font-size: 12px;
  310. letter-spacing: 1px;
  311. }
  312. /* Container to organize login field elements. */
  313. .loginFieldContainer {
  314. position: relative;
  315. display: flex;
  316. flex-direction: column;
  317. justify-content: center;
  318. align-items: center;
  319. }
  320. /* SVG icons on the login view. */
  321. .loginSVG {
  322. fill: #fff;
  323. height: 20px;
  324. width: 20px;
  325. }
  326. /* Span which displays errors related to login field content. */
  327. .loginErrorSpan {
  328. font-family: 'Avenir Medium';
  329. font-weight: bold;
  330. font-size: 8px;
  331. color: #ff1b0c;
  332. width: 100%;
  333. text-align: right;
  334. position: absolute;
  335. top: 7px;
  336. opacity: 0;
  337. transition: 0.25s ease;
  338. }
  339. .shake {
  340. animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
  341. }
  342. @keyframes shake {
  343. 10%, 90% {
  344. transform: translate3d(-1px, 0, 0);
  345. }
  346. 20%, 80% {
  347. transform: translate3d(2px, 0, 0);
  348. }
  349. 30%, 50%, 70% {
  350. transform: translate3d(-4px, 0, 0);
  351. }
  352. 40%, 60% {
  353. transform: translate3d(4px, 0, 0);
  354. }
  355. }
  356. /* Login text input styles. */
  357. .loginField {
  358. font-family: 'Avenir Book';
  359. background: none;
  360. border-width: 1.5px 0px 0px 0px;
  361. border-style: solid;
  362. width: 250px;
  363. margin-bottom: 20px;
  364. border-color: #fff;
  365. color: rgba(255, 255, 255, 0.75);
  366. font-weight: bold;
  367. text-align: center;
  368. box-sizing: border-box;
  369. padding: 7.5px;
  370. font-size: 10px;
  371. letter-spacing: 1px;
  372. }
  373. .loginField:focus {
  374. outline: none;
  375. }
  376. .loginField:disabled {
  377. color: rgba(255, 255, 255, 0.50);
  378. }
  379. .loginField::-webkit-input-placeholder {
  380. color: rgba(255, 255, 255, 0.75);
  381. font-size: 10px;
  382. letter-spacing: 1px;
  383. text-align: center;
  384. font-weight: bold;
  385. }
  386. .loginField:focus::-webkit-input-placeholder {
  387. color: transparent;
  388. }
  389. /* Add spacing between password field and options bar. */
  390. #labelPassword {
  391. margin-bottom: 13px;
  392. }
  393. /* Container which contains the forgot and remember options. */
  394. #loginOptions {
  395. display: flex;
  396. justify-content: space-between;
  397. width: 100%;
  398. }
  399. /* Remember option text. */
  400. #loginRememberText {
  401. padding-right: 10px;
  402. transition: 0.25s ease;
  403. }
  404. /* Login button styles. */
  405. #loginButton {
  406. background: none;
  407. color: #fff;
  408. font-weight: bold;
  409. font-family: 'Avenir Book';
  410. letter-spacing: 2px;
  411. border: none;
  412. padding: 15px 5px;
  413. margin: 10px 0px;
  414. cursor: pointer;
  415. position: relative;
  416. right: -20px;
  417. transition: 0.5s ease;
  418. }
  419. #loginButton:disabled {
  420. color: rgba(255, 255, 255, 0.75);
  421. pointer-events: none;
  422. }
  423. #loginButton[loading] {
  424. color: #fff;
  425. }
  426. #loginButton:hover,
  427. #loginButton:focus {
  428. text-shadow: 0px 0px 20px #fff;
  429. outline: none;
  430. }
  431. #loginButton:active {
  432. color: #c7c7c7;
  433. text-shadow: 0px 0px 20px #c7c7c7;
  434. }
  435. #loginSVG {
  436. -webkit-transform: translate3d(0, 0, 0);
  437. overflow: visible;
  438. transform: rotate(90deg);
  439. margin-left: 20px;
  440. transition: 0.25s ease;
  441. width: 20px;
  442. height: 20px;
  443. }
  444. #loginButton:hover #loginSVG,
  445. #loginButton:focus #loginSVG {
  446. -webkit-filter: drop-shadow(0px 0px 2px #fff);
  447. }
  448. #loginButton:active #loginSVG .arrowLine {
  449. stroke: #c7c7c7;
  450. }
  451. #loginButton:active #loginSVG {
  452. -webkit-filter: drop-shadow(0px 0px 2px #c7c7c7);
  453. }
  454. #loginButton:disabled #loginSVG .arrowLine {
  455. stroke: rgba(255, 255, 255, 0.75);
  456. }
  457. #loginButtonContent {
  458. display: flex;
  459. align-items: center;
  460. }
  461. #loginButton .circle-loader,
  462. #loginButton[loading] #loginSVG {
  463. display: none;
  464. }
  465. #loginButton[loading] .circle-loader,
  466. #loginButton #loginSVG {
  467. display: initial;
  468. }
  469. .circle-loader {
  470. margin-left: 20px;
  471. border: 2px solid rgba(255, 255, 255, 0.5);
  472. border-left-color: #ffffff;
  473. animation-name: loader-spin;
  474. animation-duration: 1s;
  475. animation-iteration-count: infinite;
  476. animation-timing-function: linear;
  477. position: relative;
  478. display: inline-block;
  479. vertical-align: top;
  480. border-radius: 50%;
  481. width: 16px;
  482. height: 16px;
  483. }
  484. .load-complete {
  485. animation: none;
  486. border-color: #ffffff;
  487. transition: border 500ms ease-out;
  488. }
  489. .checkmark {
  490. display: none;
  491. }
  492. .checkmark.draw:after {
  493. animation-duration: 800ms;
  494. animation-timing-function: ease;
  495. animation-name: checkmark;
  496. transform: scaleX(-1) rotate(135deg);
  497. }
  498. .checkmark:after {
  499. opacity: 1;
  500. height: 8px;
  501. width: 4px;
  502. transform-origin: left top;
  503. border-right: 2px solid #ffffff;
  504. border-top: 2px solid #ffffff;
  505. content: '';
  506. left: 2px;
  507. top: 8px;
  508. position: absolute;
  509. }
  510. @keyframes loader-spin {
  511. 0% {
  512. transform: rotate(0deg);
  513. }
  514. 100% {
  515. transform: rotate(360deg);
  516. }
  517. }
  518. @keyframes checkmark {
  519. 0% {
  520. height: 0;
  521. width: 0;
  522. opacity: 1;
  523. }
  524. 20% {
  525. height: 0;
  526. width: 4px;
  527. opacity: 1;
  528. }
  529. 40% {
  530. height: 8px;
  531. width: 4px;
  532. opacity: 1;
  533. }
  534. 100% {
  535. height: 8px;
  536. width: 4px;
  537. opacity: 1;
  538. }
  539. }
  540. /*.spinningCircle {
  541. margin-left: 20px;
  542. height: 16px;
  543. width: 16px;
  544. border-radius: 50%;
  545. border: 2px solid rgba(255,255,255,0);
  546. border-top-color: #ffffff;
  547. border-right-color: #ffffff;
  548. border-left-color: rgba(255, 255, 255, 0.50);
  549. border-bottom-color: rgba(255, 255, 255, 0.50);
  550. animation: single2 4s infinite linear;
  551. }
  552. @keyframes single2 {
  553. 0% {
  554. transform: rotate(0deg);
  555. }
  556. 100% {
  557. transform: rotate(720deg);
  558. }
  559. }*/
  560. /* Disclaimer container. */
  561. #loginDisclaimer {
  562. display: flex;
  563. flex-direction: column;
  564. justify-content: center;
  565. align-items: center;
  566. }
  567. /* Add spacing between register anchor and disclaimer. */
  568. #loginRegisterSpan {
  569. margin-bottom: 5px;
  570. }
  571. /* Disclaimer text styles. */
  572. .loginDisclaimerText {
  573. font-family: 'Avenir Book';
  574. font-size: 7px;
  575. color: #848484;
  576. font-weight: bold;
  577. text-align: center;
  578. }
  579. /* * *
  580. * Login View | Custom Checkbox
  581. * * */
  582. /* Checkbox container. */
  583. #checkmarkContainer {
  584. display: flex;
  585. justify-content: flex-end;
  586. align-items: center;
  587. position: relative;
  588. cursor: pointer;
  589. font-size: 22px;
  590. -webkit-user-select: none;
  591. }
  592. /* Hide the default checkbox. */
  593. #checkmarkContainer input {
  594. opacity: 0;
  595. cursor: pointer;
  596. position: absolute;
  597. }
  598. /* Create a custom checkbox. */
  599. .loginCheckmark {
  600. position: relative;
  601. height: 10px;
  602. width: 10px;
  603. border: 1px solid #848484;
  604. border-radius: 1px;
  605. background: none;
  606. transition: 0.25s ease;
  607. }
  608. /* On hover and focus, add a grey border color. */
  609. #checkmarkContainer:hover input ~ *,
  610. #checkmarkContainer input:focus ~ * {
  611. color: #a2a2a2;
  612. border-color: #a2a2a2;
  613. }
  614. /* On keydown, darken the checkbox a bit. */
  615. #checkmarkContainer input:active ~ *:not(#loginRememberText) {
  616. color: #8d8d8d;
  617. border-color: #8d8d8d;
  618. }
  619. #checkmarkContainer[disabled] {
  620. pointer-events: none;
  621. }
  622. /* For checked -> #checkmarkContainer input:checked ~ * */
  623. /* Create the checkmark/indicator (hidden when not checked). */
  624. .loginCheckmark:after {
  625. content: "";
  626. display: none;
  627. }
  628. /* Show the checkmark when checked. */
  629. #checkmarkContainer input:checked ~ .loginCheckmark:after {
  630. display: block;
  631. }
  632. /* Style the checkmark/indicator. */
  633. #checkmarkContainer .loginCheckmark:after {
  634. position: absolute;
  635. left: 3.5px;
  636. top: 0.5px;
  637. width: 2px;
  638. height: 6px;
  639. border: solid #a2a2a2;
  640. border-width: 0 2px 2px 0;
  641. transform: rotate(45deg);
  642. }
  643. /* * *
  644. * Login View | Error Overlay
  645. * * */
  646. #loginErrorContainer {
  647. position: absolute;
  648. display: none;
  649. align-items: center;
  650. justify-content: center;
  651. width: 100%;
  652. height: 100%;
  653. background: rgba(0, 0, 0, 0.50);
  654. }
  655. /*#loginContainer[error] > #loginErrorContainer {
  656. display: flex;
  657. }*/
  658. #loginContainer[error] > div:not(#loginErrorContainer) {
  659. filter: blur(3px) contrast(0.9) brightness(1.0);
  660. }
  661. #loginErrorContent {
  662. position: relative;
  663. display: flex;
  664. flex-direction: column;
  665. align-items: center;
  666. justify-content: space-between;
  667. width: 300px;
  668. height: 35%;
  669. box-sizing: border-box;
  670. padding: 15px 0px;
  671. /* background-color: #424242; */
  672. text-align: center;
  673. }
  674. #loginErrorTitle {
  675. font-family: 'Avenir Medium';
  676. font-size: 20px;
  677. color: #fff;
  678. font-weight: bold;
  679. letter-spacing: 1px;
  680. }
  681. #loginErrorDesc {
  682. font-family: 'Avenir Book';
  683. font-size: 12px;
  684. color: #fff;
  685. font-weight: bold;
  686. }
  687. #loginErrorAcknowledge {
  688. background: none;
  689. border: 1px solid #ffffff;
  690. color: white;
  691. font-family: 'Avenir Medium';
  692. font-weight: bold;
  693. border-radius: 2px;
  694. width: 75px;
  695. cursor: pointer;
  696. transition: 0.25s ease;
  697. }
  698. #loginErrorAcknowledge:hover,
  699. #loginErrorAcknowledge:focus {
  700. box-shadow: 0px 0px 10px 0px #fff;
  701. outline: none;
  702. }
  703. #loginErrorAcknowledge:active {
  704. border-color: rgba(255, 255, 255, 0.75);
  705. color: rgba(255, 255, 255, 0.75);
  706. }
  707. /* * *
  708. * Login View | Loader
  709. * * */
  710. /* Will reuse this elsewhere down the line.
  711. #loginLoading {
  712. position: absolute;
  713. display: flex;
  714. align-items: center;
  715. justify-content: center;
  716. width: 100%;
  717. height: 100%;
  718. background: rgba(0, 0, 0, 0.80);
  719. }
  720. #loginLoadingContent {
  721. position: relative;
  722. display: flex;
  723. flex-direction: column;
  724. align-items: center;
  725. justify-content: center;
  726. }
  727. #loadSpinnerContainer {
  728. position: relative;
  729. display: flex;
  730. align-items: center;
  731. justify-content: center;
  732. }
  733. #loadCenterImage {
  734. position: absolute;
  735. width: 200px;
  736. height: auto;
  737. }
  738. #loadSpinnerImage {
  739. width: 280px;
  740. height: auto;
  741. }
  742. #loadDescText {
  743. color: #f1eada;
  744. font-family: 'Avenir Medium';
  745. font-weight: bold;
  746. letter-spacing: 1px;
  747. font-size: 16px;
  748. }
  749. @keyframes rotating {
  750. from {
  751. transform: rotate(0deg);
  752. }
  753. to {
  754. transform: rotate(360deg);
  755. }
  756. }
  757. .rotating {
  758. animation: rotating 10s linear infinite;
  759. }*/
  760. /*
  761. #login_filter {
  762. height: calc(100% - 22px);
  763. width: 100%;
  764. z-index: 9000;
  765. position: absolute;
  766. filter: blur(8px) contrast(0.9) brightness(1.0);
  767. background: url('./../images/backgrounds/0.jpg') no-repeat center center fixed;
  768. transform: scale(1.2);
  769. background-size: cover;
  770. }
  771. */
  772. /*******************************************************************************
  773. * *
  774. * Landing View (Structural Styles) *
  775. * *
  776. ******************************************************************************/
  777. /* Main content container. */
  778. #landingContainer {
  779. height: 100%;
  780. }
  781. /* Upper content container. */
  782. #landingContainer > #upper {
  783. height: 77%;
  784. display: flex;
  785. }
  786. #landingContainer > #upper > #left {
  787. display: inline-flex;
  788. width: 15%;
  789. height: 100%;
  790. justify-content: flex-end;
  791. }
  792. #landingContainer > #upper > #content {
  793. display: inline-flex;
  794. width: 59%;
  795. height: 100%;
  796. }
  797. #landingContainer > #upper > #right {
  798. display: inline-flex;
  799. width: 26%;
  800. height: 100%;
  801. }
  802. /* Lower content container. */
  803. #landingContainer > #lower {
  804. height: 23%;
  805. display: flex;
  806. background: linear-gradient(to top, rgba(0, 0, 0, 0.75), rgba(0, 0, 0, 0));
  807. }
  808. #landingContainer > #lower > #left {
  809. height: 100%;
  810. width: 33%;
  811. display: inline-flex;
  812. justify-content: center;
  813. }
  814. #landingContainer > #lower > #left #content {
  815. position: relative;
  816. top: 25px;
  817. display: inline-flex;
  818. line-height: 24px;
  819. left: 50px;
  820. }
  821. #landingContainer > #lower > #center {
  822. height: 100%;
  823. width: 34%;
  824. display: inline-flex;
  825. justify-content: center;
  826. }
  827. #landingContainer > #lower > #center #content {
  828. position: relative;
  829. top: 10px;
  830. }
  831. #landingContainer > #lower > #right {
  832. height: 100%;
  833. width: 33%;
  834. display: inline-flex;
  835. }
  836. /*******************************************************************************
  837. * *
  838. * Landing View (Top Styles) *
  839. * *
  840. ******************************************************************************/
  841. /* * *
  842. * Landing View (Top Styles) | Left Content
  843. * * */
  844. /* Logo image. */
  845. #image_seal {
  846. height: 70px;
  847. width: auto;
  848. position: relative;
  849. margin-top: 50px;
  850. border: 2px solid white;
  851. border-radius: 50%;
  852. box-shadow: 0px 0px 10px 0px rgb(0, 0, 0);
  853. }
  854. /* * *
  855. * Landing View (Bottom Styles) | Right Content
  856. * * */
  857. /* Wrapper container for top, right content. */
  858. #rightContainer {
  859. display: flex;
  860. flex-direction: column;
  861. position: relative;
  862. top: 50px;
  863. align-items: flex-end;
  864. height: calc(100% - 50px);
  865. }
  866. /* Right hand user content container. */
  867. #user_content {
  868. display: flex;
  869. align-items: center;
  870. justify-content: center;
  871. box-sizing: border-box;
  872. height: 75px;
  873. }
  874. /* User profile avatar container. */
  875. #avatarContainer {
  876. border-radius: 50%;
  877. border: 2px solid #cad7e1;
  878. background: rgba(1, 2, 1, 0.5);
  879. height: 70px;
  880. width: 70px;
  881. box-shadow: 0px 0px 10px 0px rgb(0, 0, 0);
  882. overflow: hidden;
  883. position: relative;
  884. }
  885. /* Avatar edit overlay. */
  886. #avatarOverlay {
  887. opacity: 0;
  888. position: absolute;
  889. z-index: 1;
  890. top: 0;
  891. bottom: 0;
  892. left: 0;
  893. right: 0;
  894. display: flex;
  895. justify-content: center;
  896. align-items: center;
  897. font-family: 'Avenir Book';
  898. color: #fff;
  899. transition: 0.25s ease;
  900. font-weight: bold;
  901. letter-spacing: 2px;
  902. background: linear-gradient(65deg, rgba(0, 0, 0, 0.4), rgba(136, 77, 77, 0.4) 60%);
  903. -webkit-user-select: none;
  904. cursor: pointer;
  905. }
  906. #avatarOverlay:hover {
  907. opacity: 1;
  908. }
  909. /* User profile avater image. */
  910. #avatarImage {
  911. height: 100%;
  912. width: auto;
  913. }
  914. /* User profile name text. */
  915. #user_text {
  916. font-family: 'Avenir Book';
  917. font-size: 12px;
  918. min-width: 112px;
  919. font-weight: 900;
  920. letter-spacing: 1px;
  921. color: white;
  922. text-shadow: 0px 0px 20px black;
  923. position: relative;
  924. right: 25px;
  925. text-align: right;
  926. }
  927. /* Social media icon content container. */
  928. #mediaContent {
  929. position: relative;
  930. display: flex;
  931. flex-direction: column;
  932. right: 25px;
  933. align-items: flex-end;
  934. margin-top: 40px;
  935. height: 100%;
  936. align-items: center;
  937. }
  938. /* Social Media Icon division containers. */
  939. #internalMedia, #externalMedia {
  940. display: flex;
  941. flex-direction: column;
  942. }
  943. /* Container object which wraps an icon to ensure fluid transitions. */
  944. .mediaContainer {
  945. display: flex;
  946. justify-content: center;
  947. align-items: center;
  948. height: 27px;
  949. }
  950. /* Divider bar between the external and internal icons. */
  951. .mediaDivider {
  952. height: 1px;
  953. width: 14px;
  954. background: rgb(255, 255, 255);
  955. margin: 10px 0px;
  956. }
  957. /* Social media icon shared styles. */
  958. .mediaSVG {
  959. fill: #ffffff;
  960. height: 12px;
  961. transition: 0.25s ease;
  962. cursor: pointer;
  963. height: 12px;
  964. width: 25px;
  965. }
  966. .mediaSVG:hover, .mediaSVG:active {
  967. height: 20px;
  968. }
  969. /* News icon colors. */
  970. #newsSVG {
  971. stroke: #ffffff;
  972. }
  973. /* Twitter icon colors. */
  974. #twitterSVG:hover {
  975. fill: #1da1f2;
  976. }
  977. #twitterSVG:active {
  978. fill: #1b8dd4;
  979. }
  980. /* Instagram icon colors. */
  981. #instagramSVG:hover {
  982. fill: url('#instaFill')
  983. /*fill: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); */
  984. }
  985. #instagramSVG:active {
  986. fill: url('#instaFill')
  987. }
  988. /* Youtube icon colors. */
  989. #youtubeSVG:hover {
  990. fill: #f00;
  991. }
  992. #youtubeSVG:active {
  993. fill: #ea0202;
  994. }
  995. /* Discord icon colors. */
  996. #discordSVG:hover {
  997. fill: #7288d9;
  998. }
  999. #discordSVG:active {
  1000. fill: #657ac4;
  1001. }
  1002. /*******************************************************************************
  1003. * *
  1004. * Landing View (Bottom Styles) *
  1005. * *
  1006. ******************************************************************************/
  1007. /* Style for a general label on the bottom of the landing view. */
  1008. .bot_label {
  1009. color: white;
  1010. font-family: 'Avenir Book';
  1011. font-size: 9px;
  1012. letter-spacing: 1px;
  1013. font-weight: bold;
  1014. text-shadow: 0px 0px 0px #bebcbb;
  1015. }
  1016. /* Divider used on the bottom of the landing view. */
  1017. .bot_divider {
  1018. height: 25px;
  1019. width: 2px;
  1020. background: rgba(107, 105, 105, 0.7);
  1021. margin-left: 20px;
  1022. margin-right: 20px;
  1023. }
  1024. /* * *
  1025. * Landing View (Bottom Styles) | Left Content
  1026. * * */
  1027. /* Span which displays the player count of the selected server. */
  1028. #player_count {
  1029. color: #949494;
  1030. font-family: 'Avenir Book';
  1031. font-size: 8px;
  1032. font-weight: 900;
  1033. text-shadow: 0px 0px 20px #949494;
  1034. margin-left: 10px;
  1035. }
  1036. /* Icon which displays the status of the mojang services. */
  1037. #mojang_status_icon {
  1038. font-size: 30px;
  1039. color: #848484;
  1040. margin-left: 15px;
  1041. }
  1042. /* * *
  1043. * Landing View (Bottom Styles) | Center Content
  1044. * * */
  1045. /* Button which opens the menu view. */
  1046. #menu_button {
  1047. font-family: 'Avenir Book';
  1048. background: none;
  1049. border: none;
  1050. cursor: pointer;
  1051. }
  1052. /* Arrow image which floats above the menu button. */
  1053. #menu_img {
  1054. height: 11px;
  1055. margin-left: -2px;
  1056. }
  1057. /* Span which contains the menu button text. */
  1058. #menu_text {
  1059. color: white;
  1060. font-weight: 900;
  1061. letter-spacing: 2px;
  1062. text-shadow: 0px 0px 0px #bebcbb;
  1063. font-size: 11px;
  1064. line-height: 30px;
  1065. display: flex;
  1066. }
  1067. /* * *
  1068. * Landing View (Bottom Styles) | Right Content
  1069. * * */
  1070. /* Main launch content container. */
  1071. #landingContainer > #lower > #right #launch_content {
  1072. position: relative;
  1073. top: 25px;
  1074. display: inline-flex;
  1075. line-height: 24px;
  1076. }
  1077. /* The launch button. */
  1078. #launch_button {
  1079. font-family: 'Avenir Book';
  1080. background: none;
  1081. border: none;
  1082. cursor: pointer;
  1083. color: #fff;
  1084. font-weight: 900;
  1085. letter-spacing: 2px;
  1086. text-shadow: 0px 0px 0px #bebcbb;
  1087. font-size: 20px;
  1088. padding: 0px;
  1089. }
  1090. /* Launch details main container, hidden until launch processing begins. */
  1091. #launch_details {
  1092. position: relative;
  1093. top: 25px;
  1094. display: none;
  1095. }
  1096. /* Left side of launch details container, displays percentage and a divider. */
  1097. #launch_details_left {
  1098. display: flex;
  1099. }
  1100. /* Span which displays percentage complete. */
  1101. #launch_progress_label {
  1102. color: white;
  1103. font-family: 'Avenir Book';
  1104. font-weight: 900;
  1105. letter-spacing: 1px;
  1106. text-shadow: 0px 0px 0px #bebcbb;
  1107. font-size: 20px;
  1108. min-width: 53.21px;
  1109. max-width: 53.21px;
  1110. text-align: right;
  1111. }
  1112. /* Right side of launch details container, displays progress bar and details. */
  1113. #launch_details_right {
  1114. display: flex;
  1115. flex-direction: column;
  1116. justify-content: center;
  1117. }
  1118. /* Progress bar styles. */
  1119. #launch_progress[value] {
  1120. height: 3px;
  1121. width: 265px;
  1122. -webkit-appearance: none;
  1123. }
  1124. #launch_progress[value]::-webkit-progress-bar {
  1125. background-color: transparent;
  1126. }
  1127. #launch_progress[value]::-webkit-progress-value {
  1128. background-color: #fff;
  1129. }
  1130. /* Span which displays information about the status of the launch process. */
  1131. #launch_details_text {
  1132. font-size: 11px;
  1133. text-overflow: ellipsis;
  1134. white-space: nowrap;
  1135. overflow: hidden;
  1136. }