闭社主体 forked from https://github.com/tootsuite/mastodon
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.

3383 lines
56 KiB

7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
8 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
  1. @import 'variables';
  2. .app-body {
  3. -webkit-overflow-scrolling: touch;
  4. -ms-overflow-style: -ms-autohiding-scrollbar;
  5. }
  6. .button {
  7. background-color: darken($ui-highlight-color, 3%);
  8. border: 10px none;
  9. border-radius: 4px;
  10. box-sizing: border-box;
  11. color: $primary-text-color;
  12. cursor: pointer;
  13. display: inline-block;
  14. font-family: inherit;
  15. font-size: 14px;
  16. font-weight: 500;
  17. height: 36px;
  18. letter-spacing: 0;
  19. line-height: 36px;
  20. overflow: hidden;
  21. padding: 0 16px;
  22. position: relative;
  23. text-align: center;
  24. text-transform: uppercase;
  25. text-decoration: none;
  26. text-overflow: ellipsis;
  27. transition: all 100ms ease-in;
  28. white-space: nowrap;
  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-secondary {
  40. //
  41. }
  42. }
  43. .column-collapsable {
  44. position: relative;
  45. .column-collapsable__content {
  46. overflow: auto;
  47. transition: 300ms ease;
  48. opacity: 1;
  49. }
  50. &.collapsed .column-collapsable__content {
  51. height: 0 !important;
  52. opacity: 0;
  53. }
  54. .column-collapsable__button {
  55. color: $primary-text-color;
  56. background: lighten($ui-base-color, 8%);
  57. &:hover {
  58. color: $primary-text-color;
  59. background: lighten($ui-base-color, 8%);
  60. }
  61. }
  62. &.collapsed .column-collapsable__button {
  63. color: $ui-primary-color;
  64. background: lighten($ui-base-color, 4%);
  65. }
  66. }
  67. .column-icon {
  68. background: lighten($ui-base-color, 4%);
  69. color: $ui-primary-color;
  70. cursor: pointer;
  71. font-size: 16px;
  72. padding: 15px;
  73. position: absolute;
  74. right: 0;
  75. top: -48px;
  76. z-index: 3;
  77. &:hover {
  78. color: lighten($ui-primary-color, 7%);
  79. }
  80. }
  81. .column-icon-clear {
  82. font-size: 16px;
  83. padding: 15px;
  84. position: absolute;
  85. right: 48px;
  86. top: 0;
  87. cursor: pointer;
  88. z-index: 2;
  89. }
  90. @media screen and (min-width: 1025px) {
  91. .column-icon-clear {
  92. top: 10px;
  93. }
  94. }
  95. .icon-button {
  96. display: inline-block;
  97. padding: 0;
  98. color: lighten($ui-base-color, 26%);
  99. border: none;
  100. background: transparent;
  101. cursor: pointer;
  102. transition: color 100ms ease-in;
  103. &:hover,
  104. &:active,
  105. &:focus {
  106. color: lighten($ui-base-color, 33%);
  107. transition: color 200ms ease-out;
  108. }
  109. &.disabled {
  110. color: lighten($ui-base-color, 13%);
  111. cursor: default;
  112. }
  113. &.active {
  114. color: $ui-highlight-color;
  115. }
  116. &::-moz-focus-inner {
  117. border: 0;
  118. }
  119. &::-moz-focus-inner,
  120. &:focus,
  121. &:active {
  122. outline: 0 !important;
  123. }
  124. &.inverted {
  125. color: lighten($ui-base-color, 33%);
  126. &:hover,
  127. &:active,
  128. &:focus {
  129. color: lighten($ui-base-color, 26%);
  130. }
  131. &.active {
  132. color: $ui-highlight-color;
  133. }
  134. &.disabled {
  135. color: $ui-primary-color;
  136. }
  137. }
  138. &.overlayed {
  139. box-sizing: content-box;
  140. background: rgba($base-overlay-background, 0.6);
  141. color: rgba($primary-text-color, 0.7);
  142. border-radius: 4px;
  143. padding: 2px;
  144. &:hover {
  145. background: rgba($base-overlay-background, 0.9);
  146. }
  147. }
  148. }
  149. .text-icon-button {
  150. color: lighten($ui-base-color, 33%);
  151. border: none;
  152. background: transparent;
  153. cursor: pointer;
  154. font-weight: 600;
  155. font-size: 11px;
  156. padding: 0 3px;
  157. line-height: 27px;
  158. outline: 0;
  159. transition: color 100ms ease-in;
  160. &:hover,
  161. &:active,
  162. &:focus {
  163. color: lighten($ui-base-color, 26%);
  164. transition: color 200ms ease-out;
  165. }
  166. &.disabled {
  167. color: lighten($ui-base-color, 13%);
  168. cursor: default;
  169. }
  170. &.active {
  171. color: $ui-highlight-color;
  172. }
  173. &::-moz-focus-inner {
  174. border: 0;
  175. }
  176. &::-moz-focus-inner,
  177. &:focus,
  178. &:active {
  179. outline: 0 !important;
  180. }
  181. }
  182. .dropdown--active .icon-button {
  183. color: $ui-highlight-color;
  184. }
  185. .dropdown--active::after {
  186. content: "";
  187. display: block;
  188. position: absolute;
  189. width: 0;
  190. height: 0;
  191. border-style: solid;
  192. border-width: 0 4.5px 7.8px;
  193. border-color: transparent transparent $ui-secondary-color;
  194. bottom: 8px;
  195. right: 104px;
  196. }
  197. .invisible {
  198. font-size: 0;
  199. line-height: 0;
  200. display: inline-block;
  201. width: 0;
  202. }
  203. .ellipsis {
  204. &::after {
  205. content: "";
  206. }
  207. }
  208. .lightbox .icon-button {
  209. color: $ui-base-color;
  210. }
  211. .compose-form {
  212. padding: 10px;
  213. }
  214. .compose-form__warning {
  215. color: darken($ui-secondary-color, 65%);
  216. margin-bottom: 15px;
  217. background: $ui-primary-color;
  218. box-shadow: 0 2px 6px rgba($base-shadow-color, 0.3);
  219. padding: 8px 10px;
  220. border-radius: 4px;
  221. font-size: 13px;
  222. font-weight: 400;
  223. strong {
  224. color: darken($ui-secondary-color, 65%);
  225. font-weight: 500;
  226. }
  227. a {
  228. color: darken($ui-primary-color, 33%);
  229. font-weight: 500;
  230. text-decoration: underline;
  231. &:hover,
  232. &:active,
  233. &:focus {
  234. text-decoration: none;
  235. }
  236. }
  237. }
  238. .compose-form__modifiers {
  239. color: $ui-base-color;
  240. font-family: inherit;
  241. font-size: 14px;
  242. background: $simple-background-color;
  243. border-radius: 0 0 4px;
  244. }
  245. .compose-form__buttons-wrapper {
  246. display: flex;
  247. justify-content: space-between;
  248. }
  249. .compose-form__buttons {
  250. padding: 10px;
  251. background: darken($simple-background-color, 8%);
  252. box-shadow: inset 0 5px 5px rgba($base-shadow-color, 0.05);
  253. border-radius: 0 0 4px 4px;
  254. display: flex;
  255. .icon-button {
  256. box-sizing: content-box;
  257. padding: 0 3px;
  258. }
  259. }
  260. .compose-form__upload-button-icon {
  261. line-height: 27px;
  262. }
  263. .compose-form__upload-wrapper {
  264. overflow: hidden;
  265. }
  266. .compose-form__uploads-wrapper {
  267. display: flex;
  268. padding: 5px;
  269. }
  270. .compose-form__upload {
  271. flex: 1 1 0;
  272. margin: 5px;
  273. }
  274. .compose-form__upload-thumbnail {
  275. border-radius: 4px;
  276. background-position: center;
  277. background-size: cover;
  278. background-repeat: no-repeat;
  279. height: 100px;
  280. width: 100%;
  281. }
  282. .compose-form__upload-cancel {
  283. background-size: cover;
  284. border-radius: 4px;
  285. height: 100px;
  286. width: 100px;
  287. }
  288. .compose-form__label {
  289. display: block;
  290. line-height: 24px;
  291. vertical-align: middle;
  292. &.with-border {
  293. border-top: 1px solid $ui-base-color;
  294. padding-top: 10px;
  295. }
  296. .compose-form__label__text {
  297. display: inline-block;
  298. vertical-align: middle;
  299. margin-bottom: 14px;
  300. margin-left: 8px;
  301. color: $ui-primary-color;
  302. }
  303. }
  304. .compose-form__textarea,
  305. .follow-form__input {
  306. background: $simple-background-color;
  307. &:disabled {
  308. background: $ui-secondary-color;
  309. }
  310. }
  311. .compose-form__autosuggest-wrapper {
  312. position: relative;
  313. .dropdown--active::after {
  314. border-color: transparent transparent $base-border-color;
  315. bottom: -1px;
  316. right: 8px;
  317. }
  318. }
  319. .compose-form__publish {
  320. display: flex;
  321. min-width: 0;
  322. }
  323. .compose-form__publish-button-wrapper {
  324. overflow: hidden;
  325. padding-top: 10px;
  326. }
  327. .emojione {
  328. display: inline-block;
  329. font-size: inherit;
  330. vertical-align: middle;
  331. margin: -.2ex .15em .2ex;
  332. width: 16px;
  333. height: 16px;
  334. img {
  335. width: auto;
  336. }
  337. }
  338. .reply-indicator {
  339. border-radius: 4px 4px 0 0;
  340. position: relative;
  341. bottom: -2px;
  342. background: $ui-primary-color;
  343. padding: 10px;
  344. }
  345. .reply-indicator__header {
  346. margin-bottom: 5px;
  347. overflow: hidden;
  348. }
  349. .reply-indicator__cancel {
  350. float: right;
  351. line-height: 24px;
  352. }
  353. .reply-indicator__display-name {
  354. color: $ui-base-color;
  355. display: block;
  356. max-width: 100%;
  357. line-height: 24px;
  358. overflow: hidden;
  359. padding-right: 25px;
  360. text-decoration: none;
  361. }
  362. .reply-indicator__display-avatar {
  363. float: left;
  364. margin-right: 5px;
  365. }
  366. .status__content {
  367. cursor: pointer;
  368. }
  369. .status__content--no-action {
  370. cursor: default;
  371. }
  372. .status__content,
  373. .reply-indicator__content {
  374. font-size: 15px;
  375. line-height: 20px;
  376. word-wrap: break-word;
  377. font-weight: 400;
  378. overflow: hidden;
  379. white-space: pre-wrap;
  380. .emojione {
  381. width: 18px;
  382. height: 18px;
  383. }
  384. p {
  385. margin-bottom: 20px;
  386. &:last-child {
  387. margin-bottom: 0;
  388. }
  389. }
  390. a {
  391. color: $ui-secondary-color;
  392. text-decoration: none;
  393. &:hover {
  394. text-decoration: underline;
  395. .fa {
  396. color: lighten($ui-base-color, 40%);
  397. }
  398. }
  399. &.mention {
  400. &:hover {
  401. text-decoration: none;
  402. span {
  403. text-decoration: underline;
  404. }
  405. }
  406. }
  407. .fa {
  408. color: lighten($ui-base-color, 30%);
  409. }
  410. }
  411. .status__content__spoiler-link {
  412. background: lighten($ui-base-color, 30%);
  413. &:hover {
  414. background: lighten($ui-base-color, 33%);
  415. text-decoration: none;
  416. }
  417. }
  418. }
  419. .status__content__spoiler-link {
  420. display: inline-block;
  421. border-radius: 2px;
  422. background: transparent;
  423. border: 0;
  424. color: lighten($ui-base-color, 8%);
  425. font-weight: 500;
  426. font-size: 11px;
  427. padding: 0 6px;
  428. text-transform: uppercase;
  429. line-height: inherit;
  430. cursor: pointer;
  431. }
  432. .status__prepend-icon-wrapper {
  433. left: -26px;
  434. position: absolute;
  435. }
  436. .status {
  437. padding: 8px 10px;
  438. padding-left: 68px;
  439. position: relative;
  440. min-height: 48px;
  441. border-bottom: 1px solid lighten($ui-base-color, 8%);
  442. cursor: default;
  443. &.status-direct {
  444. background: lighten($ui-base-color, 8%);
  445. .status__display-name strong {
  446. color: $primary-text-color;
  447. }
  448. .icon-button.disabled {
  449. color: lighten($ui-base-color, 16%);
  450. }
  451. }
  452. &.light {
  453. .status__relative-time {
  454. color: $ui-primary-color;
  455. }
  456. .status__display-name {
  457. color: $ui-base-color;
  458. }
  459. .display-name {
  460. strong {
  461. color: $ui-base-color;
  462. }
  463. span {
  464. color: $ui-primary-color;
  465. }
  466. }
  467. .status__content {
  468. color: $ui-base-color;
  469. a {
  470. color: $ui-highlight-color;
  471. }
  472. a.status__content__spoiler-link {
  473. color: $primary-text-color;
  474. background: $ui-primary-color;
  475. &:hover {
  476. background: lighten($ui-primary-color, 8%);
  477. }
  478. }
  479. }
  480. }
  481. }
  482. .status__relative-time {
  483. color: lighten($ui-base-color, 26%);
  484. }
  485. .status__display-name {
  486. color: lighten($ui-base-color, 26%);
  487. }
  488. .status__info .status__display-name {
  489. display: block;
  490. max-width: 100%;
  491. padding-right: 25px;
  492. }
  493. .status__info {
  494. font-size: 15px;
  495. }
  496. .status__info-time {
  497. float: right;
  498. font-size: 14px;
  499. }
  500. .status-check-box {
  501. border-bottom: 1px solid lighten($ui-base-color, 8%);
  502. display: flex;
  503. .status__content {
  504. background: lighten($ui-base-color, 4%);
  505. flex: 1 1 auto;
  506. padding: 10px;
  507. }
  508. }
  509. .status-check-box-toggle {
  510. align-items: center;
  511. display: flex;
  512. flex: 0 0 auto;
  513. justify-content: center;
  514. padding: 10px;
  515. }
  516. .status__prepend {
  517. margin-left: 68px;
  518. color: lighten($ui-base-color, 26%);
  519. padding: 8px 0;
  520. padding-bottom: 2px;
  521. font-size: 14px;
  522. position: relative;
  523. .status__display-name strong {
  524. color: lighten($ui-base-color, 26%);
  525. }
  526. }
  527. .status__action-bar {
  528. align-items: center;
  529. display: flex;
  530. margin-top: 10px;
  531. }
  532. .status__action-bar-button-wrapper {
  533. float: left;
  534. margin-right: 18px;
  535. }
  536. .status__action-bar-dropdown {
  537. float: left;
  538. height: 18px;
  539. width: 18px;
  540. }
  541. .detailed-status__action-bar-dropdown {
  542. flex: 1 1 auto;
  543. display: flex;
  544. align-items: center;
  545. justify-content: center;
  546. position: relative;
  547. .dropdown {
  548. display: block;
  549. width: 18px;
  550. height: 18px;
  551. }
  552. .dropdown--active {
  553. .dropdown__content.dropdown__left {
  554. left: 20px;
  555. right: initial;
  556. }
  557. &::after {
  558. bottom: initial;
  559. margin-left: 7px;
  560. margin-top: -7px;
  561. right: initial;
  562. }
  563. }
  564. }
  565. .detailed-status {
  566. background: lighten($ui-base-color, 4%);
  567. padding: 14px 10px;
  568. .status__content {
  569. font-size: 19px;
  570. line-height: 24px;
  571. .emojione {
  572. width: 22px;
  573. height: 22px;
  574. }
  575. }
  576. }
  577. .detailed-status__meta {
  578. margin-top: 15px;
  579. color: lighten($ui-base-color, 26%);
  580. font-size: 14px;
  581. line-height: 18px;
  582. }
  583. .detailed-status__action-bar {
  584. background: lighten($ui-base-color, 4%);
  585. border-top: 1px solid lighten($ui-base-color, 8%);
  586. border-bottom: 1px solid lighten($ui-base-color, 8%);
  587. display: flex;
  588. flex-direction: row;
  589. padding: 10px 0;
  590. }
  591. .detailed-status__link {
  592. color: inherit;
  593. text-decoration: none;
  594. }
  595. .detailed-status__favorites,
  596. .detailed-status__reblogs {
  597. display: inline-block;
  598. font-weight: 500;
  599. font-size: 12px;
  600. margin-left: 6px;
  601. }
  602. .reply-indicator__content {
  603. color: $ui-base-color;
  604. font-size: 14px;
  605. a {
  606. color: lighten($ui-base-color, 20%);
  607. }
  608. }
  609. .account {
  610. padding: 10px;
  611. border-bottom: 1px solid lighten($ui-base-color, 8%);
  612. .account__display-name {
  613. flex: 1 1 auto;
  614. display: block;
  615. color: $ui-primary-color;
  616. overflow: hidden;
  617. text-decoration: none;
  618. font-size: 14px;
  619. }
  620. }
  621. .account__wrapper {
  622. display: flex;
  623. }
  624. .account__avatar-wrapper {
  625. float: left;
  626. margin-left: 12px;
  627. margin-right: 12px;
  628. }
  629. .account__avatar {
  630. @include avatar-radius();
  631. position: relative;
  632. cursor: pointer;
  633. &-inline {
  634. display: inline-block;
  635. vertical-align: middle;
  636. margin-right: 5px;
  637. }
  638. }
  639. .account__avatar-overlay {
  640. @include avatar-size(48px);
  641. &-base {
  642. @include avatar-radius();
  643. @include avatar-size(36px);
  644. }
  645. &-overlay {
  646. @include avatar-radius();
  647. @include avatar-size(24px);
  648. position: absolute;
  649. bottom: 0;
  650. right: 0;
  651. z-index: 1;
  652. }
  653. }
  654. .account__relationship {
  655. height: 18px;
  656. padding: 10px;
  657. }
  658. .account__header {
  659. flex: 0 0 auto;
  660. background: lighten($ui-base-color, 4%);
  661. text-align: center;
  662. background-size: cover;
  663. background-position: center;
  664. position: relative;
  665. & > div {
  666. background: rgba(lighten($ui-base-color, 4%), 0.9);
  667. }
  668. .account__header__content {
  669. color: $ui-secondary-color;
  670. }
  671. .account__header__display-name {
  672. color: $primary-text-color;
  673. }
  674. .account__header__username {
  675. color: $ui-highlight-color;
  676. }
  677. }
  678. .account__header__content {
  679. color: $ui-primary-color;
  680. font-size: 14px;
  681. font-weight: 400;
  682. overflow: hidden;
  683. word-break: normal;
  684. word-wrap: break-word;
  685. p {
  686. margin-bottom: 20px;
  687. &:last-child {
  688. margin-bottom: 0;
  689. }
  690. }
  691. a {
  692. color: inherit;
  693. text-decoration: underline;
  694. &:hover {
  695. text-decoration: none;
  696. }
  697. }
  698. }
  699. .account__header__display-name {
  700. .emojione {
  701. width: 25px;
  702. height: 25px;
  703. }
  704. }
  705. .account__action-bar {
  706. border-top: 1px solid lighten($ui-base-color, 8%);
  707. border-bottom: 1px solid lighten($ui-base-color, 8%);
  708. line-height: 36px;
  709. overflow: hidden;
  710. flex: 0 0 auto;
  711. display: flex;
  712. }
  713. .account__action-bar-dropdown {
  714. flex: 1 1 auto;
  715. padding: 10px;
  716. .dropdown--active {
  717. .dropdown__content.dropdown__right {
  718. left: 6px;
  719. right: initial;
  720. }
  721. &::after {
  722. bottom: initial;
  723. margin-left: 11px;
  724. margin-top: -7px;
  725. right: initial;
  726. }
  727. }
  728. }
  729. .account__action-bar-links {
  730. display: flex;
  731. flex: 1 1 auto;
  732. line-height: 18px;
  733. }
  734. .account__action-bar__tab {
  735. text-decoration: none;
  736. overflow: hidden;
  737. width: 80px;
  738. border-left: 1px solid lighten($ui-base-color, 8%);
  739. padding: 10px 5px;
  740. & > span {
  741. display: block;
  742. text-transform: uppercase;
  743. font-size: 11px;
  744. color: $ui-primary-color;
  745. }
  746. strong {
  747. display: block;
  748. font-size: 15px;
  749. font-weight: 500;
  750. color: $primary-text-color;
  751. }
  752. abbr {
  753. color: lighten($ui-base-color, 26%);
  754. }
  755. }
  756. .account__header__avatar {
  757. background-size: 90px 90px;
  758. display: block;
  759. height: 90px;
  760. margin: 0 auto 10px;
  761. overflow: hidden;
  762. width: 90px;
  763. }
  764. .account-authorize {
  765. padding: 14px 10px;
  766. .detailed-status__display-name {
  767. display: block;
  768. margin-bottom: 15px;
  769. overflow: hidden;
  770. }
  771. }
  772. .account-authorize__avatar {
  773. float: left;
  774. margin-right: 10px;
  775. }
  776. .status__display-name,
  777. .status__relative-time,
  778. .detailed-status__display-name,
  779. .detailed-status__datetime,
  780. .detailed-status__application,
  781. .account__display-name {
  782. text-decoration: none;
  783. }
  784. .status__display-name,
  785. .account__display-name {
  786. strong {
  787. color: $primary-text-color;
  788. }
  789. &.muted {
  790. .emojione {
  791. opacity: 0.5;
  792. }
  793. }
  794. }
  795. .status__display-name,
  796. .reply-indicator__display-name,
  797. .detailed-status__display-name,
  798. .account__display-name {
  799. &:hover strong {
  800. text-decoration: underline;
  801. }
  802. }
  803. .account__display-name strong {
  804. display: block;
  805. }
  806. .detailed-status__application,
  807. .detailed-status__datetime {
  808. color: inherit;
  809. }
  810. .detailed-status__display-name {
  811. color: $ui-secondary-color;
  812. display: block;
  813. line-height: 24px;
  814. margin-bottom: 15px;
  815. overflow: hidden;
  816. strong,
  817. span {
  818. display: block;
  819. }
  820. strong {
  821. font-size: 16px;
  822. color: $primary-text-color;
  823. }
  824. }
  825. .detailed-status__display-avatar {
  826. float: left;
  827. margin-right: 10px;
  828. }
  829. .status__avatar {
  830. height: 48px;
  831. left: 10px;
  832. position: absolute;
  833. top: 10px;
  834. width: 48px;
  835. }
  836. .muted {
  837. .status__content p,
  838. .status__content a {
  839. color: lighten($ui-base-color, 26%);
  840. }
  841. .status__display-name strong {
  842. color: lighten($ui-base-color, 26%);
  843. }
  844. .status__avatar {
  845. opacity: 0.5;
  846. }
  847. a.status__content__spoiler-link {
  848. background: lighten($ui-base-color, 26%);
  849. color: lighten($ui-base-color, 4%);
  850. &:hover {
  851. background: lighten($ui-base-color, 29%);
  852. text-decoration: none;
  853. }
  854. }
  855. }
  856. .notification__message {
  857. margin-left: 68px;
  858. padding: 8px 0;
  859. padding-bottom: 0;
  860. cursor: default;
  861. color: $ui-primary-color;
  862. font-size: 15px;
  863. position: relative;
  864. .fa {
  865. color: $ui-highlight-color;
  866. }
  867. }
  868. .notification__favourite-icon-wrapper {
  869. left: -26px;
  870. position: absolute;
  871. .star-icon {
  872. color: $gold-star;
  873. }
  874. }
  875. .star-icon.active {
  876. color: $gold-star;
  877. }
  878. .notification__display-name {
  879. color: inherit;
  880. font-weight: 500;
  881. text-decoration: none;
  882. &:hover {
  883. color: $primary-text-color;
  884. text-decoration: underline;
  885. }
  886. }
  887. .display-name {
  888. display: block;
  889. max-width: 100%;
  890. overflow: hidden;
  891. text-overflow: ellipsis;
  892. white-space: nowrap;
  893. }
  894. .display-name__html {
  895. font-weight: 500;
  896. }
  897. .display-name__account {
  898. font-size: 14px;
  899. }
  900. .status__relative-time,
  901. .detailed-status__datetime {
  902. &:hover {
  903. text-decoration: underline;
  904. }
  905. }
  906. .transparent-background,
  907. .imageloader {
  908. background: url('../images/void.png');
  909. }
  910. .imageloader {
  911. display: block;
  912. }
  913. .navigation-bar {
  914. padding: 10px;
  915. display: flex;
  916. flex-shrink: 0;
  917. cursor: default;
  918. color: $ui-primary-color;
  919. strong {
  920. color: $primary-text-color;
  921. }
  922. .permalink {
  923. text-decoration: none;
  924. }
  925. }
  926. .navigation-bar__profile {
  927. flex: 1 1 auto;
  928. margin-left: 8px;
  929. }
  930. .navigation-bar__profile-account {
  931. display: block;
  932. font-weight: 500;
  933. }
  934. .navigation-bar__profile-edit {
  935. color: inherit;
  936. text-decoration: none;
  937. }
  938. .dropdown {
  939. display: inline-block;
  940. }
  941. .dropdown__content {
  942. display: none;
  943. position: absolute;
  944. }
  945. .dropdown__sep {
  946. border-bottom: 1px solid darken($ui-secondary-color, 8%);
  947. margin: 5px 7px 6px;
  948. padding-top: 1px;
  949. }
  950. .dropdown--active .dropdown__content {
  951. display: block;
  952. line-height: 18px;
  953. max-width: 311px;
  954. right: 0;
  955. text-align: left;
  956. z-index: 9999;
  957. & > ul {
  958. list-style: none;
  959. background: $ui-secondary-color;
  960. padding: 4px 0;
  961. border-radius: 4px;
  962. box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
  963. min-width: 140px;
  964. position: relative;
  965. }
  966. &.dropdown__right {
  967. right: 0;
  968. }
  969. &.dropdown__left {
  970. & > ul {
  971. left: -98px;
  972. }
  973. }
  974. & > ul > li > a {
  975. font-size: 13px;
  976. line-height: 18px;
  977. display: block;
  978. padding: 4px 14px;
  979. box-sizing: border-box;
  980. text-decoration: none;
  981. background: $ui-secondary-color;
  982. color: $ui-base-color;
  983. overflow: hidden;
  984. text-overflow: ellipsis;
  985. white-space: nowrap;
  986. &:focus {
  987. outline: 0;
  988. }
  989. &:hover {
  990. background: $ui-highlight-color;
  991. color: $ui-secondary-color;
  992. }
  993. }
  994. }
  995. .dropdown__icon {
  996. vertical-align: middle;
  997. }
  998. .static-content {
  999. padding: 10px;
  1000. padding-top: 20px;
  1001. color: lighten($ui-base-color, 26%);
  1002. h1 {
  1003. font-size: 16px;
  1004. font-weight: 500;
  1005. margin-bottom: 40px;
  1006. text-align: center;
  1007. }
  1008. p {
  1009. font-size: 13px;
  1010. margin-bottom: 20px;
  1011. }
  1012. }
  1013. .columns-area {
  1014. display: flex;
  1015. flex: 1 1 auto;
  1016. flex-direction: row;
  1017. justify-content: flex-start;
  1018. overflow-x: auto;
  1019. position: relative;
  1020. }
  1021. @media screen and (min-width: 360px) {
  1022. .columns-area {
  1023. padding: 10px;
  1024. }
  1025. }
  1026. .column {
  1027. width: 330px;
  1028. position: relative;
  1029. box-sizing: border-box;
  1030. display: flex;
  1031. flex-direction: column;
  1032. > .scrollable {
  1033. background: $ui-base-color;
  1034. }
  1035. }
  1036. .ui {
  1037. flex: 0 0 auto;
  1038. display: flex;
  1039. flex-direction: column;
  1040. width: 100%;
  1041. height: 100%;
  1042. background: darken($ui-base-color, 7%);
  1043. }
  1044. .drawer {
  1045. width: 300px;
  1046. box-sizing: border-box;
  1047. display: flex;
  1048. flex-direction: column;
  1049. overflow-y: hidden;
  1050. }
  1051. .drawer__tab {
  1052. display: block;
  1053. flex: 1 1 auto;
  1054. padding: 15px;
  1055. padding-bottom: 13px;
  1056. color: $ui-primary-color;
  1057. text-decoration: none;
  1058. text-align: center;
  1059. font-size: 16px;
  1060. border-bottom: 2px solid transparent;
  1061. }
  1062. .column,
  1063. .drawer {
  1064. flex: 1 1 100%;
  1065. overflow: hidden;
  1066. }
  1067. @media screen and (min-width: 360px) {
  1068. .tabs-bar {
  1069. margin: 10px;
  1070. margin-bottom: 0;
  1071. }
  1072. .search {
  1073. margin-bottom: 10px;
  1074. }
  1075. }
  1076. @media screen and (max-width: 1024px) {
  1077. .column,
  1078. .drawer {
  1079. width: 100%;
  1080. padding: 0;
  1081. }
  1082. .columns-area {
  1083. flex-direction: column;
  1084. }
  1085. .search__input,
  1086. .autosuggest-textarea__textarea {
  1087. font-size: 16px;
  1088. }
  1089. }
  1090. @media screen and (min-width: 1025px) {
  1091. .columns-area {
  1092. padding: 0;
  1093. }
  1094. .column,
  1095. .drawer {
  1096. flex: 0 0 auto;
  1097. padding: 10px;
  1098. padding-left: 5px;
  1099. padding-right: 5px;
  1100. &:first-child {
  1101. padding-left: 10px;
  1102. }
  1103. &:last-child {
  1104. padding-right: 10px;
  1105. }
  1106. }
  1107. .columns-area > div {
  1108. .column,
  1109. .drawer {
  1110. padding-left: 5px;
  1111. padding-right: 5px;
  1112. }
  1113. }
  1114. }
  1115. .drawer__pager {
  1116. box-sizing: border-box;
  1117. padding: 0;
  1118. flex-grow: 1;
  1119. position: relative;
  1120. overflow: hidden;
  1121. display: flex;
  1122. }
  1123. .drawer__inner {
  1124. position: absolute;
  1125. top: 0;
  1126. left: 0;
  1127. background: lighten($ui-base-color, 13%);
  1128. box-sizing: border-box;
  1129. padding: 0;
  1130. display: flex;
  1131. flex-direction: column;
  1132. overflow: hidden;
  1133. overflow-y: auto;
  1134. width: 100%;
  1135. height: 100%;
  1136. &.darker {
  1137. background: $ui-base-color;
  1138. }
  1139. }
  1140. .pseudo-drawer {
  1141. background: lighten($ui-base-color, 13%);
  1142. font-size: 13px;
  1143. text-align: left;
  1144. }
  1145. .drawer__header {
  1146. flex: 0 0 auto;
  1147. font-size: 16px;
  1148. background: lighten($ui-base-color, 8%);
  1149. margin-bottom: 10px;
  1150. display: flex;
  1151. flex-direction: row;
  1152. a {
  1153. transition: background 100ms ease-in;
  1154. &:hover {
  1155. background: lighten($ui-base-color, 3%);
  1156. transition: background 200ms ease-out;
  1157. }
  1158. }
  1159. }
  1160. .tabs-bar {
  1161. display: flex;
  1162. background: lighten($ui-base-color, 8%);
  1163. flex: 0 0 auto;
  1164. overflow-y: auto;
  1165. }
  1166. .tabs-bar__link {
  1167. display: block;
  1168. flex: 1 1 auto;
  1169. padding: 15px 10px;
  1170. color: $primary-text-color;
  1171. text-decoration: none;
  1172. text-align: center;
  1173. font-size: 14px;
  1174. font-weight: 500;
  1175. border-bottom: 2px solid lighten($ui-base-color, 8%);
  1176. transition: all 200ms linear;
  1177. .fa {
  1178. font-weight: 400;
  1179. font-size: 16px;
  1180. }
  1181. &.active {
  1182. border-bottom: 2px solid $ui-highlight-color;
  1183. color: $ui-highlight-color;
  1184. }
  1185. &:hover,
  1186. &:focus,
  1187. &:active {
  1188. background: lighten($ui-base-color, 14%);
  1189. transition: all 100ms linear;
  1190. }
  1191. span {
  1192. margin-left: 5px;
  1193. display: none;
  1194. }
  1195. }
  1196. @media screen and (min-width: 600px) {
  1197. .tabs-bar__link {
  1198. span {
  1199. display: inline;
  1200. }
  1201. }
  1202. }
  1203. @media screen and (min-width: 1025px) {
  1204. .tabs-bar {
  1205. display: none;
  1206. }
  1207. }
  1208. .react-autosuggest__container {
  1209. position: relative;
  1210. }
  1211. .react-autosuggest__suggestions-container {
  1212. position: absolute;
  1213. top: 100%;
  1214. width: 100%;
  1215. z-index: 99;
  1216. box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
  1217. }
  1218. .react-autosuggest__section-title {
  1219. background: $ui-primary-color;
  1220. padding: 4px 10px;
  1221. font-weight: 500;
  1222. cursor: default;
  1223. color: $ui-base-color;
  1224. text-transform: uppercase;
  1225. font-size: 11px;
  1226. }
  1227. .react-autosuggest__suggestions-list {
  1228. background: $ui-secondary-color;
  1229. color: $ui-base-color;
  1230. font-size: 14px;
  1231. }
  1232. .react-autosuggest__suggestion {
  1233. padding: 10px;
  1234. cursor: pointer;
  1235. }
  1236. .react-autosuggest__suggestion--focused {
  1237. background: $ui-highlight-color;
  1238. color: $primary-text-color;
  1239. }
  1240. .scrollable {
  1241. overflow-y: scroll;
  1242. overflow-x: hidden;
  1243. flex: 1 1 auto;
  1244. backface-visibility: hidden;
  1245. -webkit-overflow-scrolling: touch;
  1246. &.optionally-scrollable {
  1247. overflow-y: auto;
  1248. }
  1249. }
  1250. .column-back-button {
  1251. background: lighten($ui-base-color, 4%);
  1252. color: $ui-highlight-color;
  1253. cursor: pointer;
  1254. flex: 0 0 auto;
  1255. font-size: 16px;
  1256. padding: 15px;
  1257. z-index: 3;
  1258. &:hover {
  1259. text-decoration: underline;
  1260. }
  1261. }
  1262. .column-back-button__icon {
  1263. display: inline-block;
  1264. margin-right: 5px;
  1265. }
  1266. .column-back-button--slim {
  1267. position: relative;
  1268. }
  1269. .column-back-button--slim-button {
  1270. cursor: pointer;
  1271. flex: 0 0 auto;
  1272. font-size: 16px;
  1273. padding: 15px;
  1274. position: absolute;
  1275. right: 0;
  1276. top: -48px;
  1277. }
  1278. .react-toggle {
  1279. display: inline-block;
  1280. position: relative;
  1281. cursor: pointer;
  1282. background-color: transparent;
  1283. border: 0;
  1284. padding: 0;
  1285. user-select: none;
  1286. -webkit-tap-highlight-color: rgba($base-overlay-background, 0);
  1287. -webkit-tap-highlight-color: transparent;
  1288. }
  1289. .react-toggle-screenreader-only {
  1290. border: 0;
  1291. clip: rect(0 0 0 0);
  1292. height: 1px;
  1293. margin: -1px;
  1294. overflow: hidden;
  1295. padding: 0;
  1296. position: absolute;
  1297. width: 1px;
  1298. }
  1299. .react-toggle--disabled {
  1300. cursor: not-allowed;
  1301. opacity: 0.5;
  1302. transition: opacity 0.25s;
  1303. }
  1304. .react-toggle-track {
  1305. width: 50px;
  1306. height: 24px;
  1307. padding: 0;
  1308. border-radius: 30px;
  1309. background-color: $ui-base-color;
  1310. transition: all 0.2s ease;
  1311. }
  1312. .react-toggle:hover:not(.react-toggle--disabled) .react-toggle-track {
  1313. background-color: darken($ui-base-color, 10%);
  1314. }
  1315. .react-toggle--checked .react-toggle-track {
  1316. background-color: $ui-highlight-color;
  1317. }
  1318. .react-toggle--checked:hover:not(.react-toggle--disabled) .react-toggle-track {
  1319. background-color: lighten($ui-highlight-color, 10%);
  1320. }
  1321. .react-toggle-track-check {
  1322. position: absolute;
  1323. width: 14px;
  1324. height: 10px;
  1325. top: 0;
  1326. bottom: 0;
  1327. margin-top: auto;
  1328. margin-bottom: auto;
  1329. line-height: 0;
  1330. left: 8px;
  1331. opacity: 0;
  1332. transition: opacity 0.25s ease;
  1333. }
  1334. .react-toggle--checked .react-toggle-track-check {
  1335. opacity: 1;
  1336. transition: opacity 0.25s ease;
  1337. }
  1338. .react-toggle-track-x {
  1339. position: absolute;
  1340. width: 10px;
  1341. height: 10px;
  1342. top: 0;
  1343. bottom: 0;
  1344. margin-top: auto;
  1345. margin-bottom: auto;
  1346. line-height: 0;
  1347. right: 10px;
  1348. opacity: 1;
  1349. transition: opacity 0.25s ease;
  1350. }
  1351. .react-toggle--checked .react-toggle-track-x {
  1352. opacity: 0;
  1353. }
  1354. .react-toggle-thumb {
  1355. transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1) 0ms;
  1356. position: absolute;
  1357. top: 1px;
  1358. left: 1px;
  1359. width: 22px;
  1360. height: 22px;
  1361. border: 1px solid $ui-base-color;
  1362. border-radius: 50%;
  1363. background-color: darken($simple-background-color, 2%);
  1364. box-sizing: border-box;
  1365. transition: all 0.25s ease;
  1366. }
  1367. .react-toggle--checked .react-toggle-thumb {
  1368. left: 27px;
  1369. border-color: $ui-highlight-color;
  1370. }
  1371. .column-link {
  1372. background: lighten($ui-base-color, 8%);
  1373. color: $primary-text-color;
  1374. display: block;
  1375. font-size: 16px;
  1376. padding: 15px;
  1377. text-decoration: none;
  1378. &:hover {
  1379. background: lighten($ui-base-color, 11%);
  1380. }
  1381. &.hidden-on-mobile {
  1382. @media screen and (max-width: 1024px) {
  1383. display: none;
  1384. }
  1385. }
  1386. }
  1387. .column-link__icon {
  1388. display: inline-block;
  1389. margin-right: 5px;
  1390. }
  1391. .column-subheading {
  1392. background: $ui-base-color;
  1393. color: lighten($ui-base-color, 26%);
  1394. padding: 8px 20px;
  1395. font-size: 12px;
  1396. font-weight: 500;
  1397. text-transform: uppercase;
  1398. cursor: default;
  1399. }
  1400. .autosuggest-textarea,
  1401. .spoiler-input {
  1402. position: relative;
  1403. }
  1404. .autosuggest-textarea__textarea,
  1405. .spoiler-input__input {
  1406. display: block;
  1407. box-sizing: border-box;
  1408. width: 100%;
  1409. margin: 0;
  1410. color: $ui-base-color;
  1411. padding: 10px;
  1412. font-family: inherit;
  1413. font-size: 14px;
  1414. resize: vertical;
  1415. border: 0;
  1416. outline: 0;
  1417. &:focus {
  1418. outline: 0;
  1419. }
  1420. @media screen and (max-width: 600px) {
  1421. font-size: 16px;
  1422. }
  1423. }
  1424. .spoiler-input__input {
  1425. border-radius: 4px;
  1426. }
  1427. .autosuggest-textarea__textarea {
  1428. min-height: 100px;
  1429. background: $simple-background-color;
  1430. border-radius: 4px 4px 0 0;
  1431. padding-bottom: 0;
  1432. padding-right: 10px + 22px;
  1433. resize: none;
  1434. @media screen and (max-width: 600px) {
  1435. height: 100px !important; // prevent auto-resize textarea
  1436. resize: vertical;
  1437. }
  1438. }
  1439. .autosuggest-textarea__suggestions {
  1440. position: absolute;
  1441. top: 100%;
  1442. width: 100%;
  1443. z-index: 99;
  1444. box-shadow: 0 0 15px rgba($base-shadow-color, 0.4);
  1445. background: $ui-secondary-color;
  1446. color: $ui-base-color;
  1447. font-size: 14px;
  1448. }
  1449. .autosuggest-textarea__suggestions__item {
  1450. padding: 10px;
  1451. cursor: pointer;
  1452. &:hover {
  1453. background: darken($ui-secondary-color, 10%);
  1454. }
  1455. &.selected {
  1456. background: $ui-highlight-color;
  1457. color: $base-border-color;
  1458. }
  1459. }
  1460. .autosuggest-account {
  1461. overflow: hidden;
  1462. }
  1463. .autosuggest-account-icon {
  1464. float: left;
  1465. margin-right: 5px;
  1466. }
  1467. .autosuggest-status {
  1468. overflow: hidden;
  1469. white-space: nowrap;
  1470. text-overflow: ellipsis;
  1471. strong {
  1472. font-weight: 500;
  1473. }
  1474. }
  1475. .character-counter__wrapper {
  1476. line-height: 36px;
  1477. margin-right: 16px;
  1478. padding-top: 10px;
  1479. }
  1480. .character-counter {
  1481. cursor: default;
  1482. font-size: 16px;
  1483. }
  1484. .character-counter--over {
  1485. color: $warning-red;
  1486. }
  1487. .getting-started__wrapper {
  1488. position: relative;
  1489. }
  1490. .getting-started {
  1491. box-sizing: border-box;
  1492. padding-bottom: 235px;
  1493. background: url('../images/mastodon-getting-started.png') no-repeat 0 100%;
  1494. flex: 1 0 auto;
  1495. p {
  1496. color: $ui-secondary-color;
  1497. }
  1498. a {
  1499. color: lighten($ui-base-color, 26%);
  1500. }
  1501. }
  1502. .setting-text {
  1503. color: $ui-primary-color;
  1504. background: transparent;
  1505. border: none;
  1506. border-bottom: 2px solid $ui-primary-color;
  1507. box-sizing: border-box;
  1508. display: block;
  1509. font-family: inherit;
  1510. margin-bottom: 10px;
  1511. padding: 7px 0;
  1512. width: 100%;
  1513. &:focus,
  1514. &:active {
  1515. color: $primary-text-color;
  1516. border-bottom-color: $ui-highlight-color;
  1517. }
  1518. @media screen and (max-width: 600px) {
  1519. font-size: 16px;
  1520. }
  1521. }
  1522. @import 'boost';
  1523. button.icon-button i.fa-retweet {
  1524. background-position: 0 0;
  1525. height: 19px;
  1526. transition: background-position 0.9s steps(10);
  1527. transition-duration: 0s;
  1528. vertical-align: middle;
  1529. width: 22px;
  1530. &::before {
  1531. display: none !important;
  1532. }
  1533. }
  1534. button.icon-button.active i.fa-retweet {
  1535. transition-duration: 0.9s;
  1536. background-position: 0 100%;
  1537. }
  1538. .status-card {
  1539. display: flex;
  1540. cursor: pointer;
  1541. font-size: 14px;
  1542. border: 1px solid lighten($ui-base-color, 8%);
  1543. border-radius: 4px;
  1544. color: lighten($ui-base-color, 26%);
  1545. margin-top: 14px;
  1546. text-decoration: none;
  1547. overflow: hidden;
  1548. &:hover {
  1549. background: lighten($ui-base-color, 8%);
  1550. }
  1551. }
  1552. .status-card-video,
  1553. .status-card-rich,
  1554. .status-card-photo {
  1555. margin-top: 14px;
  1556. overflow: hidden;
  1557. iframe {
  1558. width: 100%;
  1559. height: auto;
  1560. }
  1561. }
  1562. .status-card-photo {
  1563. display: block;
  1564. text-decoration: none;
  1565. img {
  1566. display: block;
  1567. width: 100%;
  1568. height: auto;
  1569. margin: 0;
  1570. }
  1571. }
  1572. .status-card-video {
  1573. position: relative;
  1574. width: 100%;
  1575. height: auto;
  1576. padding-top: 56.25%;
  1577. iframe {
  1578. position: absolute;
  1579. top: 0;
  1580. left: 0;
  1581. bottom: 0;
  1582. right: 0;
  1583. width: 1px;
  1584. min-width: 100%;
  1585. height: 1px;
  1586. min-height: 100%;
  1587. margin: auto;
  1588. }
  1589. }
  1590. .status-card__title {
  1591. display: block;
  1592. font-weight: 500;
  1593. margin-bottom: 5px;
  1594. color: $ui-primary-color;
  1595. overflow: hidden;
  1596. text-overflow: ellipsis;
  1597. white-space: nowrap;
  1598. }
  1599. .status-card__content {
  1600. flex: 1 1 auto;
  1601. overflow: hidden;
  1602. padding: 14px 14px 14px 8px;
  1603. }
  1604. .status-card__description {
  1605. color: $ui-primary-color;
  1606. }
  1607. .status-card__host {
  1608. display: block;
  1609. margin-top: 5px;
  1610. font-size: 13px;
  1611. }
  1612. .status-card__image {
  1613. flex: 0 0 100px;
  1614. background: lighten($ui-base-color, 8%);
  1615. }
  1616. .status-card__image-image {
  1617. border-radius: 4px 0 0 4px;
  1618. display: block;
  1619. height: auto;
  1620. margin: 0;
  1621. width: 100%;
  1622. }
  1623. .load-more {
  1624. display: block;
  1625. color: lighten($ui-base-color, 26%);
  1626. text-align: center;
  1627. padding: 15px;
  1628. text-decoration: none;
  1629. &:hover {
  1630. background: lighten($ui-base-color, 2%);
  1631. }
  1632. }
  1633. .missing-indicator {
  1634. text-align: center;
  1635. font-size: 16px;
  1636. font-weight: 500;
  1637. color: lighten($ui-base-color, 16%);
  1638. background: $ui-base-color;
  1639. cursor: default;
  1640. display: flex;
  1641. flex: 1 1 auto;
  1642. align-items: center;
  1643. justify-content: center;
  1644. & > div {
  1645. background: url('../images/mastodon-not-found.png') no-repeat center -50px;
  1646. padding-top: 210px;
  1647. width: 100%;
  1648. }
  1649. }
  1650. .column-header {
  1651. padding: 15px;
  1652. font-size: 16px;
  1653. background: lighten($ui-base-color, 4%);
  1654. flex: 0 0 auto;
  1655. cursor: pointer;
  1656. position: relative;
  1657. z-index: 2;
  1658. outline: 0;
  1659. &.active {
  1660. box-shadow: 0 1px 0 rgba($ui-highlight-color, 0.3);
  1661. }
  1662. &.active .fa {
  1663. color: $ui-highlight-color;
  1664. text-shadow: 0 0 10px rgba($ui-highlight-color, 0.4);
  1665. }
  1666. &.hidden-on-mobile {
  1667. @media screen and (max-width: 1024px) {
  1668. display: none;
  1669. }
  1670. }
  1671. &:focus,
  1672. &:active {
  1673. outline: 0;
  1674. }
  1675. }
  1676. .column-header__icon {
  1677. display: inline-block;
  1678. margin-right: 5px;
  1679. }
  1680. .loading-indicator {
  1681. color: $ui-secondary-color;
  1682. font-size: 16px;
  1683. font-weight: 500;
  1684. padding-top: 120px;
  1685. text-align: center;
  1686. }
  1687. .video-error-cover {
  1688. align-items: center;
  1689. background: $base-overlay-background;
  1690. color: $primary-text-color;
  1691. cursor: pointer;
  1692. display: flex;
  1693. flex-direction: column;
  1694. height: 100%;
  1695. justify-content: center;
  1696. margin-top: 8px;
  1697. position: relative;
  1698. text-align: center;
  1699. z-index: 100;
  1700. }
  1701. .media-spoiler {
  1702. align-items: center;
  1703. background: $base-overlay-background;
  1704. color: $primary-text-color;
  1705. cursor: pointer;
  1706. display: flex;
  1707. flex-direction: column;
  1708. height: 100%;
  1709. justify-content: center;
  1710. position: relative;
  1711. text-align: center;
  1712. z-index: 100;
  1713. }
  1714. .media-spoiler__warning {
  1715. display: block;
  1716. font-size: 14px;
  1717. }
  1718. .media-spoiler__trigger {
  1719. display: block;
  1720. font-size: 11px;
  1721. font-weight: 500;
  1722. }
  1723. .spoiler-button {
  1724. left: 4px;
  1725. position: absolute;
  1726. text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
  1727. top: 4px;
  1728. z-index: 100;
  1729. }
  1730. .modal-container--preloader {
  1731. background: lighten($ui-base-color, 8%);
  1732. }
  1733. .account--panel {
  1734. background: lighten($ui-base-color, 4%);
  1735. border-top: 1px solid lighten($ui-base-color, 8%);
  1736. border-bottom: 1px solid lighten($ui-base-color, 8%);
  1737. display: flex;
  1738. flex-direction: row;
  1739. padding: 10px 0;
  1740. }
  1741. .account--panel__button,
  1742. .detailed-status__button {
  1743. flex: 1 1 auto;
  1744. text-align: center;
  1745. }
  1746. .column-settings__outer {
  1747. background: lighten($ui-base-color, 8%);
  1748. padding: 15px;
  1749. }
  1750. .column-settings__section {
  1751. color: $ui-primary-color;
  1752. cursor: default;
  1753. display: block;
  1754. font-weight: 500;
  1755. margin-bottom: 10px;
  1756. }
  1757. .modal-container__nav {
  1758. align-items: center;
  1759. background: rgba($base-overlay-background, 0.5);
  1760. box-sizing: border-box;
  1761. color: $primary-text-color;
  1762. cursor: pointer;
  1763. display: flex;
  1764. font-size: 24px;
  1765. height: 100%;
  1766. padding: 30px 15px;
  1767. position: absolute;
  1768. top: 0;
  1769. }
  1770. .modal-container__nav--left {
  1771. left: -61px;
  1772. }
  1773. .modal-container__nav--right {
  1774. right: -61px;
  1775. }
  1776. .account--follows-info {
  1777. color: $primary-text-color;
  1778. }
  1779. .setting-toggle__label {
  1780. display: block;
  1781. line-height: 24px;
  1782. vertical-align: middle;
  1783. }
  1784. .setting-toggle {
  1785. color: $ui-primary-color;
  1786. display: inline-block;
  1787. margin-bottom: 14px;
  1788. margin-left: 8px;
  1789. vertical-align: middle;
  1790. }
  1791. .report.scrollable {
  1792. box-sizing: border-box;
  1793. display: flex;
  1794. flex-direction: column;
  1795. max-height: 100%;
  1796. }
  1797. .report__target {
  1798. border-bottom: 1px solid lighten($ui-base-color, 4%);
  1799. color: $ui-secondary-color;
  1800. flex: 0 0 auto;
  1801. padding: 10px;
  1802. strong {
  1803. display: block;
  1804. color: $primary-text-color;
  1805. font-weight: 500;
  1806. }
  1807. }
  1808. .report__statuses {
  1809. flex: 1 1 auto;
  1810. }
  1811. .report__textarea-wrapper {
  1812. flex: 0 0 100px;
  1813. padding: 10px;
  1814. }
  1815. .report__textarea {
  1816. background: transparent;
  1817. box-sizing: border-box;
  1818. border: 0;
  1819. border-bottom: 2px solid $ui-primary-color;
  1820. border-radius: 2px 2px 0 0;
  1821. color: $primary-text-color;
  1822. display: block;
  1823. font-family: inherit;
  1824. font-size: 14px;
  1825. margin-bottom: 10px;
  1826. outline: 0;
  1827. padding: 7px 4px;
  1828. resize: vertical;
  1829. width: 100%;
  1830. &:active,
  1831. &:focus {
  1832. border-bottom-color: $ui-highlight-color;
  1833. background: rgba($base-overlay-background, 0.1);
  1834. }
  1835. }
  1836. .report__submit {
  1837. margin-top: 10px;
  1838. overflow: hidden;
  1839. }
  1840. .report__submit-button {
  1841. float: right;
  1842. }
  1843. .empty-column-indicator {
  1844. color: lighten($ui-base-color, 20%);
  1845. background: $ui-base-color;
  1846. text-align: center;
  1847. padding: 20px;
  1848. font-size: 15px;
  1849. font-weight: 400;
  1850. cursor: default;
  1851. display: flex;
  1852. flex: 1 1 auto;
  1853. align-items: center;
  1854. justify-content: center;
  1855. a {
  1856. color: $ui-highlight-color;
  1857. text-decoration: none;
  1858. &:hover {
  1859. text-decoration: underline;
  1860. }
  1861. }
  1862. }
  1863. .status-list__unread-indicator,
  1864. .notifications__unread-indicator {
  1865. position: absolute;
  1866. top: 35px;
  1867. left: 0;
  1868. right: 0;
  1869. margin: 0 auto;
  1870. width: 60%;
  1871. pointer-events: none;
  1872. height: 28px;
  1873. z-index: 1;
  1874. background: radial-gradient(ellipse, rgba($ui-highlight-color, 0.23) 0%, rgba($ui-highlight-color, 0) 60%);
  1875. }
  1876. @keyframes pulse {
  1877. 0% {
  1878. opacity: 1;
  1879. }
  1880. 100% {
  1881. opacity: 0.5;
  1882. }
  1883. }
  1884. .pulse-loading {
  1885. animation: pulse 1s ease-in-out infinite;
  1886. animation-direction: alternate;
  1887. }
  1888. .emoji-dialog {
  1889. width: 245px;
  1890. height: 270px;
  1891. background: $simple-background-color;
  1892. box-sizing: border-box;
  1893. border-radius: 4px;
  1894. overflow: hidden;
  1895. position: relative;
  1896. box-shadow: 0 0 8px rgba($base-shadow-color, 0.2);
  1897. .emojione {
  1898. margin: 0;
  1899. width: 100%;
  1900. height: auto;
  1901. }
  1902. .emoji-dialog-header {
  1903. padding: 0 10px;
  1904. ul {
  1905. padding: 0;
  1906. margin: 0;
  1907. list-style: none;
  1908. }
  1909. li {
  1910. display: inline-block;
  1911. box-sizing: border-box;
  1912. padding: 10px 5px;
  1913. cursor: pointer;
  1914. border-bottom: 2px solid transparent;
  1915. .emoji {
  1916. width: 18px;
  1917. height: 18px;
  1918. }
  1919. img,
  1920. svg {
  1921. width: 18px;
  1922. height: 18px;
  1923. filter: grayscale(100%);
  1924. }
  1925. &:hover {
  1926. img,
  1927. svg {
  1928. filter: grayscale(0);
  1929. }
  1930. }
  1931. &.active {
  1932. border-bottom-color: $ui-highlight-color;
  1933. img,
  1934. svg {
  1935. filter: grayscale(0);
  1936. }
  1937. }
  1938. }
  1939. }
  1940. .emoji-row {
  1941. box-sizing: border-box;
  1942. overflow-y: hidden;
  1943. padding-left: 10px;
  1944. .emoji {
  1945. display: inline-block;
  1946. padding: 2.5px;
  1947. border-radius: 4px;
  1948. }
  1949. }
  1950. .emoji-category-header {
  1951. box-sizing: border-box;
  1952. overflow-y: hidden;
  1953. padding: 10px 8px 10px 16px;
  1954. display: table;
  1955. > * {
  1956. display: table-cell;
  1957. vertical-align: middle;
  1958. }
  1959. }
  1960. .emoji-category-title {
  1961. font-size: 12px;
  1962. text-transform: uppercase;
  1963. font-weight: 500;
  1964. color: darken($ui-secondary-color, 18%);
  1965. cursor: default;
  1966. }
  1967. .emoji-category-heading-decoration {
  1968. text-align: right;
  1969. }
  1970. .modifiers {
  1971. list-style: none;
  1972. padding: 0;
  1973. margin: 0;
  1974. vertical-align: middle;
  1975. white-space: nowrap;
  1976. margin-top: 4px;
  1977. li {
  1978. display: inline-block;
  1979. padding: 0 2px;
  1980. &:last-of-type {
  1981. padding-right: 0;
  1982. }
  1983. }
  1984. .modifier {
  1985. display: inline-block;
  1986. border-radius: 10px;
  1987. width: 15px;
  1988. height: 15px;
  1989. position: relative;
  1990. cursor: pointer;
  1991. &.active::after {
  1992. content: "";
  1993. display: block;
  1994. position: absolute;
  1995. width: 7px;
  1996. height: 7px;
  1997. border-radius: 10px;
  1998. border: 2px solid $base-border-color;
  1999. top: 2px;
  2000. left: 2px;
  2001. }
  2002. }
  2003. }
  2004. .emoji-search-wrapper {
  2005. padding: 10px;
  2006. border-bottom: 1px solid lighten($ui-secondary-color, 4%);
  2007. }
  2008. .emoji-search {
  2009. font-size: 14px;
  2010. font-weight: 400;
  2011. padding: 7px 9px;
  2012. font-family: inherit;
  2013. display: block;
  2014. width: 100%;
  2015. background: rgba($ui-secondary-color, 0.3);
  2016. color: darken($ui-secondary-color, 18%);
  2017. border: 1px solid $ui-secondary-color;
  2018. border-radius: 4px;
  2019. }
  2020. .emoji-categories-wrapper {
  2021. position: absolute;
  2022. top: 42px;
  2023. bottom: 0;
  2024. left: 0;
  2025. right: 0;
  2026. }
  2027. .emoji-search-wrapper + .emoji-categories-wrapper {
  2028. top: 93px;
  2029. }
  2030. .emoji-row .emoji {
  2031. img,
  2032. svg {
  2033. transition: transform 60ms ease-in-out;
  2034. }
  2035. &:hover {
  2036. background: lighten($ui-secondary-color, 3%);
  2037. img,
  2038. svg {
  2039. transform: translateZ(0) scale(1.2);
  2040. }
  2041. }
  2042. }
  2043. .emoji {
  2044. width: 22px;
  2045. height: 22px;
  2046. cursor: pointer;
  2047. &:focus {
  2048. outline: 0;
  2049. }
  2050. }
  2051. }
  2052. .upload-area {
  2053. align-items: center;
  2054. background: rgba($base-overlay-background, 0.8);
  2055. display: flex;
  2056. height: 100%;
  2057. justify-content: center;
  2058. left: 0;
  2059. opacity: 0;
  2060. position: absolute;
  2061. top: 0;
  2062. visibility: hidden;
  2063. width: 100%;
  2064. z-index: 2000;
  2065. * {
  2066. pointer-events: none;
  2067. }
  2068. }
  2069. .upload-area__drop {
  2070. width: 320px;
  2071. height: 160px;
  2072. display: flex;
  2073. box-sizing: border-box;
  2074. position: relative;
  2075. padding: 8px;
  2076. }
  2077. .upload-area__background {
  2078. position: absolute;
  2079. top: 0;
  2080. right: 0;
  2081. bottom: 0;
  2082. left: 0;
  2083. z-index: -1;
  2084. border-radius: 4px;
  2085. background: $ui-base-color;
  2086. box-shadow: 0 0 5px rgba($base-shadow-color, 0.2);
  2087. }
  2088. .upload-area__content {
  2089. flex: 1;
  2090. display: flex;
  2091. align-items: center;
  2092. justify-content: center;
  2093. color: $ui-secondary-color;
  2094. font-size: 18px;
  2095. font-weight: 500;
  2096. border: 2px dashed lighten($ui-base-color, 26%);
  2097. border-radius: 4px;
  2098. }
  2099. .upload-progress {
  2100. padding: 10px;
  2101. color: lighten($ui-base-color, 26%);
  2102. overflow: hidden;
  2103. display: flex;
  2104. .fa {
  2105. font-size: 34px;
  2106. margin-right: 10px;
  2107. }
  2108. span {
  2109. font-size: 12px;
  2110. text-transform: uppercase;
  2111. font-weight: 500;
  2112. display: block;
  2113. }
  2114. }
  2115. .upload-progess__message {
  2116. flex: 1 1 auto;
  2117. }
  2118. .upload-progress__backdrop {
  2119. width: 100%;
  2120. height: 6px;
  2121. border-radius: 6px;
  2122. background: lighten($ui-base-color, 26%);
  2123. position: relative;
  2124. margin-top: 5px;
  2125. }
  2126. .upload-progress__tracker {
  2127. position: absolute;
  2128. left: 0;
  2129. top: 0;
  2130. height: 6px;
  2131. background: $ui-highlight-color;
  2132. border-radius: 6px;
  2133. }
  2134. .emoji-button {
  2135. outline: 0;
  2136. &:active,
  2137. &:focus {
  2138. outline: 0 !important;
  2139. }
  2140. img {
  2141. filter: grayscale(100%);
  2142. opacity: 0.8;
  2143. display: block;
  2144. margin: 0;
  2145. width: 22px;
  2146. height: 22px;
  2147. margin-top: 2px;
  2148. }
  2149. &:hover,
  2150. &:active,
  2151. &:focus {
  2152. img {
  2153. opacity: 1;
  2154. filter: none;
  2155. }
  2156. }
  2157. }
  2158. .dropdown--active .emoji-button img {
  2159. opacity: 1;
  2160. filter: none;
  2161. }
  2162. .privacy-dropdown {
  2163. position: relative;
  2164. }
  2165. .privacy-dropdown__dropdown {
  2166. display: none;
  2167. position: absolute;
  2168. left: 0;
  2169. top: 27px;
  2170. width: 230px;
  2171. background: $simple-background-color;
  2172. border-radius: 0 4px 4px;
  2173. z-index: 2;
  2174. overflow: hidden;
  2175. }
  2176. .privacy-dropdown__option {
  2177. color: $ui-base-color;
  2178. padding: 10px;
  2179. cursor: pointer;
  2180. display: flex;
  2181. &:hover,
  2182. &.active {
  2183. background: $ui-highlight-color;
  2184. color: $primary-text-color;
  2185. .privacy-dropdown__option__content {
  2186. color: $primary-text-color;
  2187. strong {
  2188. color: $primary-text-color;
  2189. }
  2190. }
  2191. }
  2192. &.active:hover {
  2193. background: lighten($ui-highlight-color, 4%);
  2194. }
  2195. }
  2196. .privacy-dropdown__option__icon {
  2197. display: flex;
  2198. align-items: center;
  2199. justify-content: center;
  2200. margin-right: 10px;
  2201. }
  2202. .privacy-dropdown__option__content {
  2203. flex: 1 1 auto;
  2204. color: darken($ui-primary-color, 24%);
  2205. strong {
  2206. font-weight: 500;
  2207. display: block;
  2208. color: $ui-base-color;
  2209. }
  2210. }
  2211. .privacy-dropdown.active {
  2212. .privacy-dropdown__value {
  2213. background: $simple-background-color;
  2214. border-radius: 4px 4px 0 0;
  2215. box-shadow: 0 -4px 4px rgba($base-shadow-color, 0.1);
  2216. }
  2217. .privacy-dropdown__dropdown {
  2218. display: block;
  2219. box-shadow: 2px 4px 6px rgba($base-shadow-color, 0.1);
  2220. }
  2221. }
  2222. .search {
  2223. position: relative;
  2224. }
  2225. .search__input {
  2226. padding-right: 30px;
  2227. color: $ui-secondary-color;
  2228. outline: 0;
  2229. box-sizing: border-box;
  2230. display: block;
  2231. width: 100%;
  2232. border: none;
  2233. padding: 10px;
  2234. padding-right: 30px;
  2235. font-family: inherit;
  2236. background: $ui-base-color;
  2237. color: $ui-primary-color;
  2238. font-size: 14px;
  2239. margin: 0;
  2240. &::-moz-focus-inner {
  2241. border: 0;
  2242. }
  2243. &::-moz-focus-inner,
  2244. &:focus,
  2245. &:active {
  2246. outline: 0 !important;
  2247. }
  2248. &:focus {
  2249. background: lighten($ui-base-color, 4%);
  2250. }
  2251. @media screen and (max-width: 600px) {
  2252. font-size: 16px;
  2253. }
  2254. }
  2255. .search__icon {
  2256. .fa {
  2257. position: absolute;
  2258. top: 10px;
  2259. right: 10px;
  2260. z-index: 2;
  2261. display: inline-block;
  2262. opacity: 0;
  2263. transition: all 100ms linear;
  2264. font-size: 18px;
  2265. width: 18px;
  2266. height: 18px;
  2267. color: $ui-secondary-color;
  2268. cursor: default;
  2269. pointer-events: none;
  2270. &.active {
  2271. pointer-events: auto;
  2272. opacity: 0.3;
  2273. }
  2274. }
  2275. .fa-search {
  2276. transform: translateZ(0) rotate(90deg);
  2277. &.active {
  2278. pointer-events: none;
  2279. transform: translateZ(0) rotate(0deg);
  2280. }
  2281. }
  2282. .fa-times-circle {
  2283. top: 11px;
  2284. transform: translateZ(0) rotate(0deg);
  2285. cursor: pointer;
  2286. &.active {
  2287. transform: translateZ(0) rotate(90deg);
  2288. }
  2289. &:hover {
  2290. color: $primary-text-color;
  2291. }
  2292. }
  2293. }
  2294. .search-results__header {
  2295. color: lighten($ui-base-color, 26%);
  2296. background: lighten($ui-base-color, 2%);
  2297. border-bottom: 1px solid darken($ui-base-color, 4%);
  2298. padding: 15px 10px;
  2299. font-size: 14px;
  2300. font-weight: 500;
  2301. }
  2302. .search-results__hashtag {
  2303. display: block;
  2304. padding: 10px;
  2305. color: $ui-secondary-color;
  2306. text-decoration: none;
  2307. &:hover,
  2308. &:active,
  2309. &:focus {
  2310. color: lighten($ui-secondary-color, 4%);
  2311. text-decoration: underline;
  2312. }
  2313. }
  2314. .modal-root__overlay {
  2315. position: absolute;
  2316. top: 0;
  2317. left: 0;
  2318. right: 0;
  2319. bottom: 0;
  2320. z-index: 9999;
  2321. opacity: 0;
  2322. background: rgba($base-overlay-background, 0.7);
  2323. transform: translateZ(0);
  2324. }
  2325. .modal-root__container {
  2326. position: absolute;
  2327. top: 0;
  2328. left: 0;
  2329. width: 100%;
  2330. height: 100%;
  2331. display: flex;
  2332. flex-direction: column;
  2333. align-items: center;
  2334. justify-content: center;
  2335. align-content: space-around;
  2336. z-index: 9999;
  2337. opacity: 0;
  2338. pointer-events: none;
  2339. user-select: none;
  2340. }
  2341. .modal-root__modal {
  2342. pointer-events: auto;
  2343. display: flex;
  2344. z-index: 9999;
  2345. }
  2346. .media-modal {
  2347. max-width: 80vw;
  2348. max-height: 80vh;
  2349. position: relative;
  2350. img,
  2351. video {
  2352. max-width: 80vw;
  2353. max-height: 80vh;
  2354. }
  2355. }
  2356. .media-modal__close {
  2357. position: absolute;
  2358. right: 4px;
  2359. top: 4px;
  2360. z-index: 100;
  2361. }
  2362. .onboarding-modal {
  2363. background: $ui-secondary-color;
  2364. color: $ui-base-color;
  2365. border-radius: 8px;
  2366. overflow: hidden;
  2367. display: flex;
  2368. flex-direction: column;
  2369. }
  2370. .onboarding-modal__pager {
  2371. height: 80vh;
  2372. width: 80vw;
  2373. max-width: 520px;
  2374. max-height: 420px;
  2375. position: relative;
  2376. & > div {
  2377. position: absolute;
  2378. top: 0;
  2379. left: 0;
  2380. width: 100%;
  2381. height: 100%;
  2382. box-sizing: border-box;
  2383. padding: 25px;
  2384. display: none;
  2385. flex-direction: column;
  2386. align-items: center;
  2387. justify-content: center;
  2388. display: flex;
  2389. opacity: 0;
  2390. user-select: text;
  2391. }
  2392. }
  2393. @media screen and (max-width: 550px) {
  2394. .onboarding-modal {
  2395. width: 100%;
  2396. height: 100%;
  2397. border-radius: 0;
  2398. }
  2399. .onboarding-modal__pager {
  2400. width: 100%;
  2401. height: auto;
  2402. max-width: none;
  2403. max-height: none;
  2404. flex: 1 1 auto;
  2405. }
  2406. }
  2407. .onboarding-modal__paginator {
  2408. flex: 0 0 auto;
  2409. background: darken($ui-secondary-color, 8%);
  2410. display: flex;
  2411. padding: 25px;
  2412. & > div {
  2413. min-width: 33px;
  2414. }
  2415. a {
  2416. color: darken($ui-secondary-color, 34%);
  2417. text-decoration: none;
  2418. font-size: 14px;
  2419. font-weight: 500;
  2420. &:hover,
  2421. &:focus,
  2422. &:active {
  2423. color: darken($ui-secondary-color, 38%);
  2424. }
  2425. &.onboarding-modal__done,
  2426. &.onboarding-modal__next {
  2427. color: $ui-highlight-color;
  2428. }
  2429. }
  2430. }
  2431. .onboarding-modal__dots {
  2432. flex: 1 1 auto;
  2433. display: flex;
  2434. align-items: center;
  2435. justify-content: center;
  2436. }
  2437. .onboarding-modal__dot {
  2438. width: 14px;
  2439. height: 14px;
  2440. border-radius: 14px;
  2441. background: darken($ui-secondary-color, 16%);
  2442. margin: 0 3px;
  2443. cursor: pointer;
  2444. &:hover {
  2445. background: darken($ui-secondary-color, 18%);
  2446. }
  2447. &.active {
  2448. cursor: default;
  2449. background: darken($ui-secondary-color, 24%);
  2450. }
  2451. }
  2452. .onboarding-modal__page {
  2453. cursor: default;
  2454. line-height: 21px;
  2455. h1 {
  2456. font-size: 18px;
  2457. font-weight: 500;
  2458. color: $ui-base-color;
  2459. margin-bottom: 20px;
  2460. }
  2461. a {
  2462. color: $ui-highlight-color;
  2463. &:hover,
  2464. &:focus,
  2465. &:active {
  2466. color: lighten($ui-highlight-color, 4%);
  2467. }
  2468. }
  2469. p {
  2470. font-size: 16px;
  2471. color: lighten($ui-base-color, 8%);
  2472. margin-top: 10px;
  2473. margin-bottom: 10px;
  2474. &:last-child {
  2475. margin-bottom: 0;
  2476. }
  2477. strong {
  2478. font-weight: 500;
  2479. background: $ui-base-color;
  2480. color: $ui-secondary-color;
  2481. border-radius: 4px;
  2482. font-size: 14px;
  2483. padding: 3px 6px;
  2484. }
  2485. }
  2486. }
  2487. .onboarding-modal__page-one {
  2488. display: flex;
  2489. }
  2490. .onboarding-modal__page-one__elephant-friend {
  2491. background: url('../images/elephant-friend.png') no-repeat center center / contain;
  2492. width: 147px;
  2493. height: 160px;
  2494. margin-right: 10px;
  2495. }
  2496. @media screen and (max-width: 400px) {
  2497. .onboarding-modal__page-one {
  2498. flex-direction: column;
  2499. }
  2500. .onboarding-modal__page-one__elephant-friend {
  2501. width: 100%;
  2502. height: 30vh;
  2503. max-height: 160px;
  2504. margin-bottom: 5vh;
  2505. }
  2506. }
  2507. .onboarding-modal__page-two,
  2508. .onboarding-modal__page-three,
  2509. .onboarding-modal__page-four,
  2510. .onboarding-modal__page-five {
  2511. p {
  2512. text-align: left;
  2513. }
  2514. .figure {
  2515. background: darken($ui-base-color, 8%);
  2516. color: $ui-secondary-color;
  2517. margin-bottom: 20px;
  2518. border-radius: 4px;
  2519. padding: 10px;
  2520. text-align: center;
  2521. font-size: 14px;
  2522. box-shadow: 1px 2px 6px rgba($base-shadow-color, 0.3);
  2523. .onboarding-modal__image {
  2524. border-radius: 4px;
  2525. margin-bottom: 10px;
  2526. }
  2527. &.non-interactive {
  2528. pointer-events: none;
  2529. text-align: left;
  2530. }
  2531. }
  2532. }
  2533. .onboarding-modal__page-four__columns {
  2534. .row {
  2535. display: flex;
  2536. margin-bottom: 20px;
  2537. & > div {
  2538. flex: 1 1 0;
  2539. margin: 0 10px;
  2540. &:first-child {
  2541. margin-left: 0;
  2542. }
  2543. &:last-child {
  2544. margin-right: 0;
  2545. }
  2546. p {
  2547. text-align: center;
  2548. }
  2549. }
  2550. &:last-child {
  2551. margin-bottom: 0;
  2552. }
  2553. }
  2554. .column-header {
  2555. color: $primary-text-color;
  2556. }
  2557. }
  2558. @media screen and (max-width: 320px) and (max-height: 600px) {
  2559. .onboarding-modal__page p {
  2560. font-size: 14px;
  2561. line-height: 20px;
  2562. }
  2563. .onboarding-modal__page-two .figure,
  2564. .onboarding-modal__page-three .figure,
  2565. .onboarding-modal__page-four .figure,
  2566. .onboarding-modal__page-five .figure {
  2567. font-size: 12px;
  2568. margin-bottom: 10px;
  2569. }
  2570. .onboarding-modal__page-four__columns .row {
  2571. margin-bottom: 10px;
  2572. }
  2573. .onboarding-modal__page-four__columns .column-header {
  2574. padding: 5px;
  2575. font-size: 12px;
  2576. }
  2577. }
  2578. .onboarding-modal__image {
  2579. border-radius: 8px;
  2580. width: 70vw;
  2581. max-width: 450px;
  2582. max-height: auto;
  2583. display: block;
  2584. margin: auto;
  2585. margin-bottom: 20px;
  2586. }
  2587. .onboard-sliders {
  2588. display: inline-block;
  2589. max-width: 30px;
  2590. max-height: auto;
  2591. margin-left: 10px;
  2592. }
  2593. .boost-modal,
  2594. .confirmation-modal {
  2595. background: lighten($ui-secondary-color, 8%);
  2596. color: $ui-base-color;
  2597. border-radius: 8px;
  2598. overflow: hidden;
  2599. max-width: 90vw;
  2600. width: 480px;
  2601. position: relative;
  2602. flex-direction: column;
  2603. .status__display-name {
  2604. display: block;
  2605. max-width: 100%;
  2606. padding-right: 25px;
  2607. }
  2608. .status__avatar {
  2609. height: 28px;
  2610. left: 10px;
  2611. position: absolute;
  2612. top: 10px;
  2613. width: 48px;
  2614. }
  2615. }
  2616. .boost-modal__container {
  2617. overflow-x: scroll;
  2618. padding: 10px;
  2619. .status {
  2620. user-select: text;
  2621. border-bottom: 0;
  2622. }
  2623. }
  2624. .boost-modal__action-bar,
  2625. .confirmation-modal__action-bar {
  2626. display: flex;
  2627. background: $ui-secondary-color;
  2628. padding: 10px;
  2629. line-height: 36px;
  2630. & > div {
  2631. flex: 1 1 auto;
  2632. text-align: right;
  2633. color: lighten($ui-base-color, 33%);
  2634. padding-right: 10px;
  2635. }
  2636. .button {
  2637. flex: 0 0 auto;
  2638. }
  2639. }
  2640. .boost-modal__status-header {
  2641. font-size: 15px;
  2642. }
  2643. .boost-modal__status-time {
  2644. float: right;
  2645. font-size: 14px;
  2646. }
  2647. .confirmation-modal {
  2648. max-width: 280px;
  2649. @media screen and (min-width: 480px) {
  2650. max-width: 380px;
  2651. }
  2652. }
  2653. .confirmation-modal__action-bar {
  2654. & > div {
  2655. text-align: left;
  2656. padding: 0 16px;
  2657. }
  2658. a {
  2659. color: darken($ui-secondary-color, 34%);
  2660. text-decoration: none;
  2661. font-size: 14px;
  2662. font-weight: 500;
  2663. &:hover,
  2664. &:focus,
  2665. &:active {
  2666. color: darken($ui-secondary-color, 38%);
  2667. }
  2668. }
  2669. }
  2670. .confirmation-modal__container {
  2671. padding: 30px;
  2672. font-size: 16px;
  2673. text-align: center;
  2674. strong {
  2675. font-weight: 500;
  2676. }
  2677. }
  2678. .loading-bar {
  2679. background-color: $ui-highlight-color;
  2680. height: 3px;
  2681. position: absolute;
  2682. top: 0;
  2683. left: 0;
  2684. }
  2685. .media-gallery__gifv__label {
  2686. display: block;
  2687. position: absolute;
  2688. color: $primary-text-color;
  2689. background: rgba($base-overlay-background, 0.5);
  2690. bottom: 6px;
  2691. left: 6px;
  2692. padding: 2px 6px;
  2693. border-radius: 2px;
  2694. font-size: 11px;
  2695. font-weight: 600;
  2696. z-index: 1;
  2697. pointer-events: none;
  2698. opacity: 0.9;
  2699. transition: opacity 0.1s ease;
  2700. }
  2701. .media-gallery__gifv {
  2702. &.autoplay {
  2703. .media-gallery__gifv__label {
  2704. display: none;
  2705. }
  2706. }
  2707. &:hover {
  2708. .media-gallery__gifv__label {
  2709. opacity: 1;
  2710. }
  2711. }
  2712. }
  2713. .attachment-list {
  2714. display: flex;
  2715. font-size: 14px;
  2716. border: 1px solid lighten($ui-base-color, 8%);
  2717. border-radius: 4px;
  2718. margin-top: 14px;
  2719. overflow: hidden;
  2720. }
  2721. .attachment-list__icon {
  2722. flex: 0 0 auto;
  2723. color: lighten($ui-base-color, 26%);
  2724. padding: 8px 18px;
  2725. cursor: default;
  2726. border-right: 1px solid lighten($ui-base-color, 8%);
  2727. display: flex;
  2728. flex-direction: column;
  2729. align-items: center;
  2730. justify-content: center;
  2731. font-size: 26px;
  2732. .fa {
  2733. display: block;
  2734. }
  2735. }
  2736. .attachment-list__list {
  2737. list-style: none;
  2738. padding: 4px 0;
  2739. padding-left: 8px;
  2740. display: flex;
  2741. flex-direction: column;
  2742. justify-content: center;
  2743. li {
  2744. display: block;
  2745. padding: 4px 0;
  2746. }
  2747. a {
  2748. text-decoration: none;
  2749. color: lighten($ui-base-color, 26%);
  2750. font-weight: 500;
  2751. &:hover {
  2752. text-decoration: underline;
  2753. }
  2754. }
  2755. }
  2756. /* Media Gallery */
  2757. .media-gallery {
  2758. box-sizing: border-box;
  2759. margin-top: 8px;
  2760. overflow: hidden;
  2761. position: relative;
  2762. width: 100%;
  2763. }
  2764. .media-gallery__item {
  2765. border: none;
  2766. box-sizing: border-box;
  2767. display: block;
  2768. float: left;
  2769. position: relative;
  2770. }
  2771. .media-gallery__item-thumbnail {
  2772. background-position: center;
  2773. background-repeat: no-repeat;
  2774. background-size: cover;
  2775. cursor: zoom-in;
  2776. display: block;
  2777. height: 100%;
  2778. text-decoration: none;
  2779. width: 100%;
  2780. }
  2781. .media-gallery__gifv {
  2782. height: 100%;
  2783. overflow: hidden;
  2784. position: relative;
  2785. width: 100%;
  2786. }
  2787. .media-gallery__item-gifv-thumbnail {
  2788. cursor: zoom-in;
  2789. height: 100%;
  2790. object-fit: cover;
  2791. position: relative;
  2792. top: 50%;
  2793. transform: translateY(-50%);
  2794. width: 100%;
  2795. z-index: 1;
  2796. }
  2797. .media-gallery__item-thumbnail-label {
  2798. clip: rect(1px 1px 1px 1px); /* IE6, IE7 */
  2799. clip: rect(1px, 1px, 1px, 1px);
  2800. overflow: hidden;
  2801. position: absolute;
  2802. }
  2803. /* End Media Gallery */
  2804. /* Status Video Player */
  2805. .status__video-player {
  2806. background: $base-overlay-background;
  2807. box-sizing: border-box;
  2808. cursor: default; /* May not be needed */
  2809. margin-top: 8px;
  2810. overflow: hidden;
  2811. position: relative;
  2812. }
  2813. .status__video-player-video {
  2814. height: 100%;
  2815. object-fit: cover;
  2816. position: relative;
  2817. top: 50%;
  2818. transform: translateY(-35%);
  2819. width: 100%;
  2820. z-index: 1;
  2821. }
  2822. .status__video-player-expand,
  2823. .status__video-player-mute {
  2824. color: $primary-text-color;
  2825. opacity: 0.8;
  2826. position: absolute;
  2827. right: 4px;
  2828. text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
  2829. }
  2830. .status__video-player-spoiler {
  2831. color: $primary-text-color;
  2832. left: 4px;
  2833. position: absolute;
  2834. text-shadow: 0 1px 1px $base-shadow-color, 1px 0 1px $base-shadow-color;
  2835. top: 4px;
  2836. z-index: 100;
  2837. }
  2838. .status__video-player-expand {
  2839. bottom: 4px;
  2840. z-index: 100;
  2841. }
  2842. .status__video-player-mute {
  2843. top: 4px;
  2844. z-index: 5;
  2845. }
  2846. .media-spoiler-video {
  2847. background-size: cover;
  2848. cursor: pointer;
  2849. margin-top: 8px;
  2850. position: relative;
  2851. }
  2852. .media-spoiler-video-play-icon {
  2853. border-radius: 100px;
  2854. color: rgba($primary-text-color, 0.8);
  2855. font-size: 36px;
  2856. left: 50%;
  2857. padding: 5px;
  2858. position: absolute;
  2859. top: 50%;
  2860. transform: translate(-50%, -50%);
  2861. }
  2862. /* End Video Player */