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.

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