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.

3258 lines
52 KiB

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