The code powering m.abunchtell.com https://m.abunchtell.com
Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.
 
 
 
 

3489 рядки
58 KiB

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