You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1174 lines
20 KiB

8 years ago
8 years ago
  1. .app-body {
  2. -webkit-overflow-scrolling: touch;
  3. -ms-overflow-style: -ms-autohiding-scrollbar;
  4. }
  5. .button {
  6. background-color: darken($ui-highlight-color, 3%);
  7. border: 10px none;
  8. border-radius: 4px;
  9. box-sizing: border-box;
  10. color: $primary-text-color;
  11. cursor: pointer;
  12. display: inline-block;
  13. font-family: inherit;
  14. font-size: 14px;
  15. font-weight: 500;
  16. height: 36px;
  17. letter-spacing: 0;
  18. line-height: 36px;
  19. overflow: hidden;
  20. padding: 0 16px;
  21. position: relative;
  22. text-align: center;
  23. text-transform: uppercase;
  24. text-decoration: none;
  25. text-overflow: ellipsis;
  26. transition: all 100ms ease-in;
  27. white-space: nowrap;
  28. width: auto;
  29. &:active,
  30. &:focus,
  31. &:hover {
  32. background-color: lighten($ui-highlight-color, 7%);
  33. transition: all 200ms ease-out;
  34. }
  35. &:disabled {
  36. background-color: $ui-primary-color;
  37. cursor: default;
  38. }
  39. &.button-primary,
  40. &.button-alternative,
  41. &.button-secondary,
  42. &.button-alternative-2 {
  43. font-size: 16px;
  44. line-height: 36px;
  45. height: auto;
  46. text-transform: none;
  47. padding: 4px 16px;
  48. }
  49. &.button-alternative {
  50. color: $inverted-text-color;
  51. background: $ui-primary-color;
  52. &:active,
  53. &:focus,
  54. &:hover {
  55. background-color: lighten($ui-primary-color, 4%);
  56. }
  57. }
  58. &.button-alternative-2 {
  59. background: $ui-base-lighter-color;
  60. &:active,
  61. &:focus,
  62. &:hover {
  63. background-color: lighten($ui-base-lighter-color, 4%);
  64. }
  65. }
  66. &.button-secondary {
  67. font-size: 16px;
  68. line-height: 36px;
  69. height: auto;
  70. color: $darker-text-color;
  71. text-transform: none;
  72. background: transparent;
  73. padding: 3px 15px;
  74. border-radius: 4px;
  75. border: 1px solid $ui-primary-color;
  76. &:active,
  77. &:focus,
  78. &:hover {
  79. border-color: lighten($ui-primary-color, 4%);
  80. color: lighten($darker-text-color, 4%);
  81. }
  82. }
  83. &.button--block {
  84. display: block;
  85. width: 100%;
  86. }
  87. }
  88. .icon-button {
  89. display: inline-block;
  90. padding: 0;
  91. color: $action-button-color;
  92. border: none;
  93. background: transparent;
  94. cursor: pointer;
  95. transition: color 100ms ease-in;
  96. &:hover,
  97. &:active,
  98. &:focus {
  99. color: lighten($action-button-color, 7%);
  100. transition: color 200ms ease-out;
  101. }
  102. &.disabled {
  103. color: darken($action-button-color, 13%);
  104. cursor: default;
  105. }
  106. &.active {
  107. color: $highlight-text-color;
  108. }
  109. &::-moz-focus-inner {
  110. border: 0;
  111. }
  112. &::-moz-focus-inner,
  113. &:focus,
  114. &:active {
  115. outline: 0 !important;
  116. }
  117. &.inverted {
  118. color: $lighter-text-color;
  119. &:hover,
  120. &:active,
  121. &:focus {
  122. color: darken($lighter-text-color, 7%);
  123. }
  124. &.disabled {
  125. color: lighten($lighter-text-color, 7%);
  126. }
  127. &.active {
  128. color: $highlight-text-color;
  129. &.disabled {
  130. color: lighten($highlight-text-color, 13%);
  131. }
  132. }
  133. }
  134. &.overlayed {
  135. box-sizing: content-box;
  136. background: rgba($base-overlay-background, 0.6);
  137. color: rgba($primary-text-color, 0.7);
  138. border-radius: 4px;
  139. padding: 2px;
  140. &:hover {
  141. background: rgba($base-overlay-background, 0.9);
  142. }
  143. }
  144. }
  145. .text-icon-button {
  146. color: $lighter-text-color;
  147. border: none;
  148. background: transparent;
  149. cursor: pointer;
  150. font-weight: 600;
  151. font-size: 11px;
  152. padding: 0 3px;
  153. line-height: 27px;
  154. outline: 0;
  155. transition: color 100ms ease-in;
  156. &:hover,
  157. &:active,
  158. &:focus {
  159. color: darken($lighter-text-color, 7%);
  160. transition: color 200ms ease-out;
  161. }
  162. &.disabled {
  163. color: lighten($lighter-text-color, 20%);
  164. cursor: default;
  165. }
  166. &.active {
  167. color: $highlight-text-color;
  168. }
  169. &::-moz-focus-inner {
  170. border: 0;
  171. }
  172. &::-moz-focus-inner,
  173. &:focus,
  174. &:active {
  175. outline: 0 !important;
  176. }
  177. }
  178. .dropdown-menu {
  179. position: absolute;
  180. transform-origin: 50% 0;
  181. }
  182. .invisible {
  183. font-size: 0;
  184. line-height: 0;
  185. display: inline-block;
  186. width: 0;
  187. height: 0;
  188. position: absolute;
  189. img,
  190. svg {
  191. margin: 0 !important;
  192. border: 0 !important;
  193. padding: 0 !important;
  194. width: 0 !important;
  195. height: 0 !important;
  196. }
  197. }
  198. .ellipsis {
  199. &::after {
  200. content: "";
  201. }
  202. }
  203. .notification__favourite-icon-wrapper {
  204. left: 0;
  205. position: absolute;
  206. .fa.star-icon {
  207. color: $gold-star;
  208. }
  209. }
  210. .star-icon.active {
  211. color: $gold-star;
  212. }
  213. .notification__display-name {
  214. color: inherit;
  215. font-weight: 500;
  216. text-decoration: none;
  217. &:hover {
  218. color: $primary-text-color;
  219. text-decoration: underline;
  220. }
  221. }
  222. .display-name {
  223. display: block;
  224. padding: 6px 0;
  225. max-width: 100%;
  226. height: 36px;
  227. overflow: hidden;
  228. text-overflow: ellipsis;
  229. white-space: nowrap;
  230. strong {
  231. display: block;
  232. height: 18px;
  233. font-size: 16px;
  234. font-weight: 500;
  235. line-height: 18px;
  236. text-overflow: ellipsis;
  237. overflow: hidden;
  238. white-space: nowrap;
  239. }
  240. span {
  241. display: block;
  242. height: 18px;
  243. font-size: 15px;
  244. line-height: 18px;
  245. text-overflow: ellipsis;
  246. overflow: hidden;
  247. white-space: nowrap;
  248. }
  249. &:hover {
  250. strong {
  251. text-decoration: underline;
  252. }
  253. }
  254. &.inline {
  255. padding: 0;
  256. height: 18px;
  257. font-size: 15px;
  258. line-height: 18px;
  259. text-overflow: ellipsis;
  260. white-space: nowrap;
  261. overflow: hidden;
  262. strong {
  263. display: inline;
  264. height: auto;
  265. font-size: inherit;
  266. line-height: inherit;
  267. }
  268. span {
  269. display: inline;
  270. height: auto;
  271. font-size: inherit;
  272. line-height: inherit;
  273. }
  274. }
  275. }
  276. .display-name__html {
  277. font-weight: 500;
  278. }
  279. .display-name__account {
  280. font-size: 14px;
  281. }
  282. .image-loader {
  283. position: relative;
  284. width: 100%;
  285. height: 100%;
  286. display: flex;
  287. align-items: center;
  288. justify-content: center;
  289. .image-loader__preview-canvas {
  290. max-width: $media-modal-media-max-width;
  291. max-height: $media-modal-media-max-height;
  292. background: url('~images/void.png') repeat;
  293. object-fit: contain;
  294. }
  295. &.image-loader--loading .image-loader__preview-canvas {
  296. filter: blur(2px);
  297. }
  298. &.image-loader--amorphous .image-loader__preview-canvas {
  299. display: none;
  300. }
  301. }
  302. .zoomable-image {
  303. position: relative;
  304. width: 100%;
  305. height: 100%;
  306. display: flex;
  307. align-items: center;
  308. justify-content: center;
  309. img {
  310. max-width: $media-modal-media-max-width;
  311. max-height: $media-modal-media-max-height;
  312. width: auto;
  313. height: auto;
  314. object-fit: contain;
  315. }
  316. }
  317. .dropdown {
  318. display: inline-block;
  319. }
  320. .dropdown__content {
  321. display: none;
  322. position: absolute;
  323. }
  324. .dropdown-menu__separator {
  325. border-bottom: 1px solid darken($ui-secondary-color, 8%);
  326. margin: 5px 7px 6px;
  327. height: 0;
  328. }
  329. .dropdown-menu {
  330. background: $ui-secondary-color;
  331. padding: 4px 0;
  332. border-radius: 4px;
  333. box-shadow: 2px 4px 15px rgba($base-shadow-color, 0.4);
  334. ul {
  335. list-style: none;
  336. }
  337. }
  338. .dropdown-menu__arrow {
  339. position: absolute;
  340. width: 0;
  341. height: 0;
  342. border: 0 solid transparent;
  343. &.left {
  344. right: -5px;
  345. margin-top: -5px;
  346. border-width: 5px 0 5px 5px;
  347. border-left-color: $ui-secondary-color;
  348. }
  349. &.top {
  350. bottom: -5px;
  351. margin-left: -13px;
  352. border-width: 5px 7px 0;
  353. border-top-color: $ui-secondary-color;
  354. }
  355. &.bottom {
  356. top: -5px;
  357. margin-left: -13px;
  358. border-width: 0 7px 5px;
  359. border-bottom-color: $ui-secondary-color;
  360. }
  361. &.right {
  362. left: -5px;
  363. margin-top: -5px;
  364. border-width: 5px 5px 5px 0;
  365. border-right-color: $ui-secondary-color;
  366. }
  367. }
  368. .dropdown-menu__item {
  369. a {
  370. font-size: 13px;
  371. line-height: 18px;
  372. display: block;
  373. padding: 4px 14px;
  374. box-sizing: border-box;
  375. text-decoration: none;
  376. background: $ui-secondary-color;
  377. color: $inverted-text-color;
  378. overflow: hidden;
  379. text-overflow: ellipsis;
  380. white-space: nowrap;
  381. &:focus,
  382. &:hover,
  383. &:active {
  384. background: $ui-highlight-color;
  385. color: $secondary-text-color;
  386. outline: 0;
  387. }
  388. }
  389. }
  390. .dropdown--active .dropdown__content {
  391. display: block;
  392. line-height: 18px;
  393. max-width: 311px;
  394. right: 0;
  395. text-align: left;
  396. z-index: 9999;
  397. & > ul {
  398. list-style: none;
  399. background: $ui-secondary-color;
  400. padding: 4px 0;
  401. border-radius: 4px;
  402. box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
  403. min-width: 140px;
  404. position: relative;
  405. }
  406. &.dropdown__right {
  407. right: 0;
  408. }
  409. &.dropdown__left {
  410. & > ul {
  411. left: -98px;
  412. }
  413. }
  414. & > ul > li > a {
  415. font-size: 13px;
  416. line-height: 18px;
  417. display: block;
  418. padding: 4px 14px;
  419. box-sizing: border-box;
  420. text-decoration: none;
  421. background: $ui-secondary-color;
  422. color: $inverted-text-color;
  423. overflow: hidden;
  424. text-overflow: ellipsis;
  425. white-space: nowrap;
  426. &:focus {
  427. outline: 0;
  428. }
  429. &:hover {
  430. background: $ui-highlight-color;
  431. color: $secondary-text-color;
  432. }
  433. }
  434. }
  435. .dropdown__icon {
  436. vertical-align: middle;
  437. }
  438. .static-content {
  439. padding: 10px;
  440. padding-top: 20px;
  441. color: $dark-text-color;
  442. h1 {
  443. font-size: 16px;
  444. font-weight: 500;
  445. margin-bottom: 40px;
  446. text-align: center;
  447. }
  448. p {
  449. font-size: 13px;
  450. margin-bottom: 20px;
  451. }
  452. }
  453. .tabs-bar {
  454. display: flex;
  455. background: lighten($ui-base-color, 8%);
  456. flex: 0 0 auto;
  457. overflow-y: auto;
  458. }
  459. .tabs-bar__link {
  460. display: block;
  461. flex: 1 1 auto;
  462. padding: 15px 10px;
  463. color: $primary-text-color;
  464. text-decoration: none;
  465. text-align: center;
  466. font-size: 14px;
  467. font-weight: 500;
  468. border-bottom: 2px solid lighten($ui-base-color, 8%);
  469. transition: all 200ms linear;
  470. .fa {
  471. font-weight: 400;
  472. font-size: 16px;
  473. }
  474. &.active {
  475. border-bottom: 2px solid $ui-highlight-color;
  476. color: $highlight-text-color;
  477. }
  478. &:hover,
  479. &:focus,
  480. &:active {
  481. @include multi-columns('screen and (min-width: 631px)') {
  482. background: lighten($ui-base-color, 14%);
  483. transition: all 100ms linear;
  484. }
  485. }
  486. span {
  487. margin-left: 5px;
  488. display: none;
  489. }
  490. }
  491. @include limited-single-column('screen and (max-width: 600px)', $parent: null) {
  492. .tabs-bar__link {
  493. span {
  494. display: inline;
  495. }
  496. }
  497. }
  498. @include multi-columns('screen and (min-width: 631px)', $parent: null) {
  499. .tabs-bar {
  500. display: none;
  501. }
  502. }
  503. .scrollable {
  504. overflow-y: scroll;
  505. overflow-x: hidden;
  506. flex: 1 1 auto;
  507. -webkit-overflow-scrolling: touch;
  508. will-change: transform; // improves perf in mobile Chrome
  509. &.optionally-scrollable {
  510. overflow-y: auto;
  511. }
  512. @supports(display: grid) { // hack to fix Chrome <57
  513. contain: strict;
  514. }
  515. }
  516. .scrollable.fullscreen {
  517. @supports(display: grid) { // hack to fix Chrome <57
  518. contain: none;
  519. }
  520. }
  521. .react-toggle {
  522. display: inline-block;
  523. position: relative;
  524. cursor: pointer;
  525. background-color: transparent;
  526. border: 0;
  527. padding: 0;
  528. user-select: none;
  529. -webkit-tap-highlight-color: rgba($base-overlay-background, 0);
  530. -webkit-tap-highlight-color: transparent;
  531. }
  532. .react-toggle-screenreader-only {
  533. border: 0;
  534. clip: rect(0 0 0 0);
  535. height: 1px;
  536. margin: -1px;
  537. overflow: hidden;
  538. padding: 0;
  539. position: absolute;
  540. width: 1px;
  541. }
  542. .react-toggle--disabled {
  543. cursor: not-allowed;
  544. opacity: 0.5;
  545. transition: opacity 0.25s;
  546. }
  547. .react-toggle-track {
  548. width: 50px;
  549. height: 24px;
  550. padding: 0;
  551. border-radius: 30px;
  552. background-color: $ui-base-color;
  553. transition: all 0.2s ease;
  554. }
  555. .react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
  556. background-color: darken($ui-base-color, 10%);
  557. }
  558. .react-toggle--checked .react-toggle-track {
  559. background-color: $ui-highlight-color;
  560. }
  561. .react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
  562. background-color: lighten($ui-highlight-color, 10%);
  563. }
  564. .react-toggle-track-check {
  565. position: absolute;
  566. width: 14px;
  567. height: 10px;
  568. top: 0;
  569. bottom: 0;
  570. margin-top: auto;
  571. margin-bottom: auto;
  572. line-height: 0;
  573. left: 8px;
  574. opacity: 0;
  575. transition: opacity 0.25s ease;
  576. }
  577. .react-toggle--checked .react-toggle-track-check {
  578. opacity: 1;
  579. transition: opacity 0.25s ease;
  580. }
  581. .react-toggle-track-x {
  582. position: absolute;
  583. width: 10px;
  584. height: 10px;
  585. top: 0;
  586. bottom: 0;
  587. margin-top: auto;
  588. margin-bottom: auto;
  589. line-height: 0;
  590. right: 10px;
  591. opacity: 1;
  592. transition: opacity 0.25s ease;
  593. }
  594. .react-toggle--checked .react-toggle-track-x {
  595. opacity: 0;
  596. }
  597. .react-toggle-thumb {
  598. transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1) 0ms;
  599. position: absolute;
  600. top: 1px;
  601. left: 1px;
  602. width: 22px;
  603. height: 22px;
  604. border: 1px solid $ui-base-color;
  605. border-radius: 50%;
  606. background-color: darken($simple-background-color, 2%);
  607. box-sizing: border-box;
  608. transition: all 0.25s ease;
  609. }
  610. .react-toggle--checked .react-toggle-thumb {
  611. left: 27px;
  612. border-color: $ui-highlight-color;
  613. }
  614. .getting-started__wrapper,
  615. .getting_started {
  616. background: $ui-base-color;
  617. }
  618. .getting-started__wrapper {
  619. position: relative;
  620. overflow-y: auto;
  621. }
  622. .getting-started {
  623. background: $ui-base-color;
  624. flex: 1 0 auto;
  625. p {
  626. color: $secondary-text-color;
  627. }
  628. a {
  629. color: $dark-text-color;
  630. }
  631. }
  632. .column-link__badge {
  633. display: inline-block;
  634. border-radius: 4px;
  635. font-size: 12px;
  636. line-height: 19px;
  637. font-weight: 500;
  638. background: $ui-base-color;
  639. padding: 4px 8px;
  640. margin: -6px 10px;
  641. }
  642. .keyboard-shortcuts {
  643. padding: 8px 0 0;
  644. overflow: hidden;
  645. thead {
  646. position: absolute;
  647. left: -9999px;
  648. }
  649. td {
  650. padding: 0 10px 8px;
  651. }
  652. kbd {
  653. display: inline-block;
  654. padding: 3px 5px;
  655. background-color: lighten($ui-base-color, 8%);
  656. border: 1px solid darken($ui-base-color, 4%);
  657. }
  658. }
  659. .setting-text {
  660. color: $darker-text-color;
  661. background: transparent;
  662. border: none;
  663. border-bottom: 2px solid $ui-primary-color;
  664. box-sizing: border-box;
  665. display: block;
  666. font-family: inherit;
  667. margin-bottom: 10px;
  668. padding: 7px 0;
  669. width: 100%;
  670. &:focus,
  671. &:active {
  672. color: $primary-text-color;
  673. border-bottom-color: $ui-highlight-color;
  674. }
  675. @include limited-single-column('screen and (max-width: 600px)') {
  676. font-size: 16px;
  677. }
  678. &.light {
  679. color: $inverted-text-color;
  680. border-bottom: 2px solid lighten($ui-base-color, 27%);
  681. &:focus,
  682. &:active {
  683. color: $inverted-text-color;
  684. border-bottom-color: $ui-highlight-color;
  685. }
  686. }
  687. }
  688. .no-reduce-motion button.icon-button i.fa-retweet {
  689. background-position: 0 0;
  690. height: 19px;
  691. transition: background-position 0.9s steps(10);
  692. transition-duration: 0s;
  693. vertical-align: middle;
  694. width: 22px;
  695. &::before {
  696. display: none !important;
  697. }
  698. }
  699. .no-reduce-motion button.icon-button.active i.fa-retweet {
  700. transition-duration: 0.9s;
  701. background-position: 0 100%;
  702. }
  703. .reduce-motion button.icon-button i.fa-retweet {
  704. color: $action-button-color;
  705. transition: color 100ms ease-in;
  706. }
  707. .reduce-motion button.icon-button.active i.fa-retweet {
  708. color: $highlight-text-color;
  709. }
  710. .load-more {
  711. display: block;
  712. color: $dark-text-color;
  713. background-color: transparent;
  714. border: 0;
  715. font-size: inherit;
  716. text-align: center;
  717. line-height: inherit;
  718. margin: 0;
  719. padding: 15px;
  720. width: 100%;
  721. clear: both;
  722. &:hover {
  723. background: lighten($ui-base-color, 2%);
  724. }
  725. }
  726. .missing-indicator {
  727. padding-top: 20px + 48px;
  728. .regeneration-indicator__figure {
  729. background-image: url('~flavours/glitch/images/elephant_ui_disappointed.svg');
  730. }
  731. }
  732. .scrollable > div > :first-child .notification__dismiss-overlay > .wrappy {
  733. border-top: 1px solid $ui-base-color;
  734. }
  735. .notification__dismiss-overlay {
  736. overflow: hidden;
  737. position: absolute;
  738. top: 0;
  739. right: 0;
  740. bottom: -1px;
  741. padding-left: 15px; // space for the box shadow to be visible
  742. z-index: 999;
  743. align-items: center;
  744. justify-content: flex-end;
  745. cursor: pointer;
  746. display: flex;
  747. .wrappy {
  748. width: $dismiss-overlay-width;
  749. align-self: stretch;
  750. display: flex;
  751. flex-direction: column;
  752. align-items: center;
  753. justify-content: center;
  754. background: lighten($ui-base-color, 8%);
  755. border-left: 1px solid lighten($ui-base-color, 20%);
  756. box-shadow: 0 0 5px black;
  757. border-bottom: 1px solid $ui-base-color;
  758. }
  759. .ckbox {
  760. border: 2px solid $ui-primary-color;
  761. border-radius: 2px;
  762. width: 30px;
  763. height: 30px;
  764. font-size: 20px;
  765. color: $inverted-text-color;
  766. text-shadow: 0 0 5px black;
  767. display: flex;
  768. justify-content: center;
  769. align-items: center;
  770. }
  771. &:focus {
  772. outline: 0 !important;
  773. .ckbox {
  774. box-shadow: 0 0 1px 1px $ui-highlight-color;
  775. }
  776. }
  777. }
  778. .text-btn {
  779. display: inline-block;
  780. padding: 0;
  781. font-family: inherit;
  782. font-size: inherit;
  783. color: inherit;
  784. border: 0;
  785. background: transparent;
  786. cursor: pointer;
  787. }
  788. .loading-indicator {
  789. color: $dark-text-color;
  790. font-size: 12px;
  791. font-weight: 400;
  792. text-transform: uppercase;
  793. overflow: visible;
  794. position: absolute;
  795. top: 50%;
  796. left: 50%;
  797. transform: translate(-50%, -50%);
  798. span {
  799. display: block;
  800. float: left;
  801. margin-left: 50%;
  802. transform: translateX(-50%);
  803. margin: 82px 0 0 50%;
  804. white-space: nowrap;
  805. animation: loader-label 1.15s infinite cubic-bezier(0.215, 0.610, 0.355, 1.000);
  806. }
  807. }
  808. .loading-indicator__figure {
  809. position: absolute;
  810. top: 50%;
  811. left: 50%;
  812. transform: translate(-50%, -50%);
  813. width: 0;
  814. height: 0;
  815. box-sizing: border-box;
  816. border: 0 solid lighten($ui-base-color, 26%);
  817. border-radius: 50%;
  818. animation: loader-figure 1.15s infinite cubic-bezier(0.215, 0.610, 0.355, 1.000);
  819. }
  820. @keyframes loader-figure {
  821. 0% {
  822. width: 0;
  823. height: 0;
  824. background-color: lighten($ui-base-color, 26%);
  825. }
  826. 29% {
  827. background-color: lighten($ui-base-color, 26%);
  828. }
  829. 30% {
  830. width: 42px;
  831. height: 42px;
  832. background-color: transparent;
  833. border-width: 21px;
  834. opacity: 1;
  835. }
  836. 100% {
  837. width: 42px;
  838. height: 42px;
  839. border-width: 0;
  840. opacity: 0;
  841. background-color: transparent;
  842. }
  843. }
  844. @keyframes loader-label {
  845. 0% { opacity: 0.25; }
  846. 30% { opacity: 1; }
  847. 100% { opacity: 0.25; }
  848. }
  849. .spoiler-button {
  850. display: none;
  851. left: 4px;
  852. position: absolute;
  853. text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
  854. top: 4px;
  855. z-index: 100;
  856. &.spoiler-button--visible {
  857. display: block;
  858. }
  859. }
  860. .setting-toggle {
  861. display: block;
  862. line-height: 24px;
  863. }
  864. .setting-toggle__label,
  865. .setting-meta__label {
  866. color: $darker-text-color;
  867. display: inline-block;
  868. margin-bottom: 14px;
  869. margin-left: 8px;
  870. vertical-align: middle;
  871. }
  872. .setting-meta__label {
  873. float: right;
  874. }
  875. @keyframes heartbeat {
  876. from {
  877. transform: scale(1);
  878. transform-origin: center center;
  879. animation-timing-function: ease-out;
  880. }
  881. 10% {
  882. transform: scale(0.91);
  883. animation-timing-function: ease-in;
  884. }
  885. 17% {
  886. transform: scale(0.98);
  887. animation-timing-function: ease-out;
  888. }
  889. 33% {
  890. transform: scale(0.87);
  891. animation-timing-function: ease-in;
  892. }
  893. 45% {
  894. transform: scale(1);
  895. animation-timing-function: ease-out;
  896. }
  897. }
  898. .pulse-loading {
  899. animation: heartbeat 1.5s ease-in-out infinite both;
  900. }
  901. .upload-area {
  902. align-items: center;
  903. background: rgba($base-overlay-background, 0.8);
  904. display: flex;
  905. height: 100%;
  906. justify-content: center;
  907. left: 0;
  908. opacity: 0;
  909. position: absolute;
  910. top: 0;
  911. visibility: hidden;
  912. width: 100%;
  913. z-index: 2000;
  914. * {
  915. pointer-events: none;
  916. }
  917. }
  918. .upload-area__drop {
  919. width: 320px;
  920. height: 160px;
  921. display: flex;
  922. box-sizing: border-box;
  923. position: relative;
  924. padding: 8px;
  925. }
  926. .upload-area__background {
  927. position: absolute;
  928. top: 0;
  929. right: 0;
  930. bottom: 0;
  931. left: 0;
  932. z-index: -1;
  933. border-radius: 4px;
  934. background: $ui-base-color;
  935. box-shadow: 0 0 5px rgba($base-shadow-color, 0.2);
  936. }
  937. .upload-area__content {
  938. flex: 1;
  939. display: flex;
  940. align-items: center;
  941. justify-content: center;
  942. color: $secondary-text-color;
  943. font-size: 18px;
  944. font-weight: 500;
  945. border: 2px dashed $ui-base-lighter-color;
  946. border-radius: 4px;
  947. }
  948. .dropdown--active .emoji-button img {
  949. opacity: 1;
  950. filter: none;
  951. }
  952. .loading-bar {
  953. background-color: $ui-highlight-color;
  954. height: 3px;
  955. position: absolute;
  956. top: 0;
  957. left: 0;
  958. }
  959. ::-webkit-scrollbar-thumb {
  960. border-radius: 0;
  961. }
  962. noscript {
  963. text-align: center;
  964. img {
  965. width: 200px;
  966. opacity: 0.5;
  967. animation: flicker 4s infinite;
  968. }
  969. div {
  970. font-size: 14px;
  971. margin: 30px auto;
  972. color: $secondary-text-color;
  973. max-width: 400px;
  974. a {
  975. color: $highlight-text-color;
  976. text-decoration: underline;
  977. &:hover {
  978. text-decoration: none;
  979. }
  980. }
  981. }
  982. }
  983. @keyframes flicker {
  984. 0% { opacity: 1; }
  985. 30% { opacity: 0.75; }
  986. 100% { opacity: 1; }
  987. }
  988. @import 'boost';
  989. @import 'accounts';
  990. @import 'domains';
  991. @import 'status';
  992. @import 'modal';
  993. @import 'metadata';
  994. @import 'composer';
  995. @import 'columns';
  996. @import 'regeneration_indicator';
  997. @import 'search';
  998. @import 'emoji';
  999. @import 'doodle';
  1000. @import 'drawer';
  1001. @import 'media';
  1002. @import 'sensitive';
  1003. @import 'lists';
  1004. @import 'emoji_picker';
  1005. @import 'local_settings';