custom.scss 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654
  1. html, body {
  2. min-height:100vh;
  3. }
  4. body {
  5. display: flex;
  6. flex-flow: column;
  7. }
  8. #content {
  9. margin-bottom: auto !important;
  10. }
  11. body, button, input, textarea {
  12. font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  13. }
  14. .navbar-laravel {
  15. background-color: #fff;
  16. box-shadow: 0 2px 4px rgba(0, 0, 0, 0.04);
  17. }
  18. .bg-pixelfed {
  19. background:#10c5f8;
  20. background:-webkit-gradient(linear,left top,right bottom,from(#6736dd),to(#10c5f8));
  21. background:linear-gradient(to bottom right,#6736dd,#10c5f8);
  22. }
  23. @media (min-width: 1200px) {
  24. .container {
  25. max-width: 935px;
  26. }
  27. }
  28. .text-dark {
  29. color: #212529 !important;
  30. }
  31. .settings-nav .active .nav-link{
  32. font-weight: bold;
  33. }
  34. .card-disabled {
  35. background-color: rgba(245, 245, 245, 1);
  36. opacity: .4;
  37. }
  38. .card-img-top {
  39. height: auto;
  40. }
  41. .card.status-container .status-photo {
  42. margin: auto !important;
  43. }
  44. @media (min-width: map-get($grid-breakpoints, "md")) {
  45. .card.status-container .status-comments {
  46. overflow-y:scroll;
  47. border-bottom:1px solid rgba(0,0,0,.1);
  48. height: 200px;
  49. }
  50. }
  51. .no-caret.dropdown-toggle {
  52. text-decoration: none !important;
  53. }
  54. .no-caret.dropdown-toggle::after {
  55. display:none;
  56. }
  57. .notification-page .profile-link {
  58. color: #212529;
  59. font-weight: bold;
  60. }
  61. .notification-page .list-group-item:first-child {
  62. border-top: none;
  63. }
  64. .nav-topbar {
  65. border-top: 1px solid $gray-300;
  66. }
  67. .nav-topbar .nav-item {
  68. margin: -1px 1.5rem 0;
  69. }
  70. .nav-topbar .nav-link {
  71. border: 1px solid transparent;
  72. color: $gray-300;
  73. padding: 0.75rem 0;
  74. }
  75. .nav-topbar .nav-link:focus, .nav-topbar .nav-link:hover {
  76. border-top-color: $gray-300;
  77. }
  78. .nav-topbar .nav-link.disabled {
  79. color: $gray-300;
  80. background-color: transparent;
  81. border-color: transparent;
  82. }
  83. .nav-topbar .nav-item.show .nav-link, .nav-topbar .nav-link.active {
  84. color: $gray-600;
  85. border-top-color: $gray-600;
  86. }
  87. .nav-topbar .dropdown-menu {
  88. margin-top:-1px;
  89. }
  90. .info-overlay {
  91. position: relative;
  92. }
  93. .info-overlay .info-overlay-text {
  94. display: none;
  95. position: absolute;
  96. }
  97. .info-overlay:hover .info-overlay-text {
  98. display: flex;
  99. }
  100. @media (max-width: map-get($grid-breakpoints, "sm")) {
  101. .info-overlay:hover .info-overlay-text h5 {
  102. font-size: 12px;
  103. }
  104. }
  105. .info-overlay-text {
  106. width: 100%;
  107. height: 100%;
  108. background-color: rgba(0,0,0,0.5);
  109. }
  110. .info-overlay-text-label {
  111. display: flex;
  112. position: absolute;
  113. width: 100%;
  114. height: 100%;
  115. background-color: rgba(0,0,0,0.5);
  116. h5 {
  117. z-index: 2;
  118. }
  119. }
  120. .info-overlay:hover .info-overlay-text-label {
  121. display: none;
  122. }
  123. .font-weight-lighter {
  124. font-weight: 300 !important
  125. }
  126. .font-weight-ultralight {
  127. font-weight: 200 !important;
  128. }
  129. .square {
  130. position: relative;
  131. width: 100%;
  132. }
  133. .square::after {
  134. content: "";
  135. display: block;
  136. padding-bottom: 100%;
  137. }
  138. .square-content {
  139. position: absolute;
  140. width: 100%;
  141. height: 100%;
  142. background-repeat: no-repeat;
  143. background-size: cover;
  144. background-position: 50%;
  145. }
  146. @media (max-width: map-get($grid-breakpoints, "md")) {
  147. .border-md-left-0 {
  148. border-left:0!important
  149. }
  150. }
  151. @media (max-width: map-get($grid-breakpoints, "md")) {
  152. .border-md-left-0 {
  153. border-left:0!important
  154. }
  155. .card.status-container .status-comments {
  156. border-top:1px solid rgba(0,0,0,.1);
  157. }
  158. .sticky-md-bottom {
  159. position:-webkit-sticky;
  160. position:sticky;
  161. bottom:0;
  162. z-index:1020
  163. }
  164. }
  165. @media (max-width: map-get($grid-breakpoints, "sm")) {
  166. .card-md-border-0 {
  167. border-width: 0!important;
  168. border-radius: 0!important;
  169. }
  170. .card-md-rounded-0 {
  171. border-width: 1px 0;
  172. border-radius:0 !important;
  173. }
  174. }
  175. @keyframes loading-bar {
  176. from { background-position: 0 0; }
  177. to { background-position: 100vw 0; }
  178. }
  179. .loading-page {
  180. background-image: linear-gradient(to right, #6736dd, #10c5f8, #10c5f8, #6736dd);
  181. width: 100vw;
  182. height: .25rem;
  183. animation: loading-bar 3s linear infinite;
  184. }
  185. .liked {
  186. position: relative;
  187. z-index: 1;
  188. }
  189. .liked::after {
  190. content: "\F0a3";
  191. color: transparent;
  192. animation: liking 1.5s;
  193. position: absolute;
  194. z-index: -1;
  195. left: 50%;
  196. top: 0;
  197. }
  198. @keyframes liking {
  199. 0% {
  200. -webkit-transform:rotate(0deg);
  201. transform:rotate(0deg);
  202. font-size:0;
  203. top: .25rem;
  204. color: #ebf70e;
  205. }
  206. 75% {
  207. -webkit-transform:rotate(1turn);
  208. transform:rotate(1turn);
  209. top: -0.55rem;
  210. font-size: 2.8rem;
  211. opacity:1;
  212. left: -0.55rem;
  213. }
  214. 100% {
  215. transform:rotate(1turn);
  216. top: 2.5rem;
  217. font-size:0;
  218. left: 0.9rem
  219. }
  220. }
  221. .max-hide-overflow {
  222. max-height: 500px;
  223. overflow-y: hidden;
  224. }
  225. @media (min-width: map-get($grid-breakpoints, "xs")) {
  226. .max-hide-overflow {
  227. max-height: 600px!important;
  228. }
  229. }
  230. @media (min-width: map-get($grid-breakpoints, "md")) {
  231. .max-hide-overflow {
  232. max-height: 800px!important;
  233. }
  234. }
  235. @media (min-width: map-get($grid-breakpoints, "xl")) {
  236. .max-hide-overflow {
  237. max-height: 1000px!important;
  238. }
  239. }
  240. .notification-image {
  241. background-size: cover;
  242. width: 32px;
  243. height: 32px;
  244. background-position: 50%;
  245. }
  246. .status-photo img {
  247. object-fit: contain;
  248. width: 100%;
  249. max-height: calc(100vh - (6rem));
  250. }
  251. .fade-enter-active, .fade-leave-active {
  252. transition: opacity .5s;
  253. }
  254. .fade-enter, .fade-leave-to {
  255. opacity: 0;
  256. }
  257. @keyframes fadeInDown {
  258. 0% {
  259. opacity: 0;
  260. transform: translateY(-1.25em);
  261. }
  262. 100% {
  263. opacity: 1;
  264. transform: translateY(0);
  265. }
  266. }
  267. .details-animated[open] {
  268. animation-name: fadeInDown;
  269. animation-duration: 0.5s;
  270. }
  271. .card {
  272. box-shadow: 0 2px 6px 0 hsla(0, 0%, 0%, 0.2);
  273. border: none;
  274. .comment-submit {
  275. display: none;
  276. position: absolute;
  277. bottom: 12px;
  278. right: 20px;
  279. width: 60px;
  280. text-align: center;
  281. border-radius: 0 3px 3px 0;
  282. }
  283. }
  284. .touch .card {
  285. input[name="comment"] {
  286. padding-right: 70px;
  287. }
  288. .comment-submit {
  289. display: block;
  290. }
  291. }
  292. .box-shadow {
  293. box-shadow: 0 2px 6px 0 hsla(0, 0%, 0%, 0.2);
  294. }
  295. .border-left-primary {
  296. border-left: 3px solid $primary;
  297. }
  298. .settings-nav .nav-item.active .nav-link {
  299. font-weight: bold !important;
  300. }
  301. details summary::-webkit-details-marker {
  302. display: none!important;
  303. }
  304. .details-animated > summary {
  305. display: flex;
  306. flex-flow: column;
  307. justify-content: center;
  308. background-color: #ECF0F1;
  309. padding-top: 50px;
  310. padding-bottom: 50px;
  311. text-align: center;
  312. }
  313. @media (min-width: 720px) {
  314. .details-animated > summary {
  315. min-height: 600px;
  316. }
  317. }
  318. .details-animated[open] > summary {
  319. display: none!important;
  320. }
  321. .profile-avatar img {
  322. object-fit: cover;
  323. }
  324. .tt-menu {
  325. padding: 0 !important;
  326. border-radius: 0 0 0.25rem 0.25rem !important;
  327. }
  328. .tt-dataset .alert {
  329. border: 0 !important;
  330. border-radius: 0 !important;
  331. }
  332. .input-elevated {
  333. font-size: 16px;
  334. line-height: 1.5;
  335. border: none;
  336. background: #FFFFFF;
  337. box-shadow: 0 2px 4px 0 rgba(0,0,0,0.08);
  338. border-radius: 5px;
  339. padding: .5em 1em .5em .5em;
  340. }
  341. .input-elevated::placeholder {
  342. color: #838D99;
  343. }
  344. .input-elevated:focus {
  345. outline: none;
  346. box-shadow: 0 4px 10px 0 rgba(0,0,0,0.16);
  347. }
  348. .icon-wrapper {
  349. display: inline-flex;
  350. padding: 14px;
  351. border-radius: 50%;
  352. background: #10c5f8;
  353. background: -webkit-gradient(linear,left top,right bottom,from(#6736dd),to(#10c5f8));
  354. background: linear-gradient(to bottom right,#6736dd,#10c5f8);
  355. }
  356. .border-left-blue {
  357. border-left: 3px solid #10c5f8;
  358. }
  359. .b-dropdown {
  360. padding:0 !important;
  361. }
  362. .b-dropdown > button {
  363. padding:0 !important;
  364. }
  365. .lds-ring {
  366. display: inline-block;
  367. position: relative;
  368. width: 64px;
  369. height: 64px;
  370. }
  371. .lds-ring div {
  372. box-sizing: border-box;
  373. display: block;
  374. position: absolute;
  375. width: 51px;
  376. height: 51px;
  377. margin: 6px;
  378. border: 6px solid #6c757d;
  379. border-radius: 50%;
  380. animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  381. border-color: #6c757d transparent transparent transparent;
  382. }
  383. .lds-ring div:nth-child(1) {
  384. animation-delay: -0.45s;
  385. }
  386. .lds-ring div:nth-child(2) {
  387. animation-delay: -0.3s;
  388. }
  389. .lds-ring div:nth-child(3) {
  390. animation-delay: -0.15s;
  391. }
  392. @keyframes lds-ring {
  393. 0% {
  394. transform: rotate(0deg);
  395. }
  396. 100% {
  397. transform: rotate(360deg);
  398. }
  399. }
  400. .navbar .nav-notification.dropdown-toggle::after {
  401. display: none;
  402. }
  403. .navbar .dropdown .nav-notification-dropdown {
  404. width:500px;
  405. max-height: 300px;
  406. overflow-y: scroll;
  407. padding-top: 0;
  408. padding-bottom: 0;
  409. }
  410. .nav-notification-dropdown .loader {
  411. padding-top: 5rem;
  412. padding-bottom: 5rem;
  413. }
  414. .timeline-sidenav.nav-pills .nav-link {
  415. color: #6c757d;
  416. }
  417. .timeline-sidenav.nav-pills .nav-link:hover {
  418. background: rgba(0,0,0,0.04);
  419. }
  420. .timeline-sidenav.nav-pills .nav-link.active,
  421. .timeline-sidenav.nav-pills .show > .nav-link {
  422. color: #08d;
  423. background: transparent;
  424. border: 1px solid #08d;
  425. }
  426. .messages-page .bg-primary.text-white a {
  427. color: #fff;
  428. }
  429. .notification-tooltip .tooltip-inner {
  430. font-weight: bold;
  431. }
  432. #previewAvatar {
  433. img {
  434. max-width: 100%;
  435. height: auto;
  436. }
  437. }
  438. .img-thumbnail {
  439. box-sizing: content-box;
  440. }
  441. .media-drawer-filters img {
  442. object-fit: contain;
  443. }
  444. .reply-container {
  445. .post-thumbnail {
  446. object-fit: cover;
  447. }
  448. }
  449. #l-modal .modal-body,
  450. #s-modal .modal-body {
  451. height: 60vh;
  452. overflow-y: scroll;
  453. }
  454. #l-modal .modal-content,
  455. #s-modal .modal-content {
  456. border-radius: 0;
  457. }
  458. .text-lighter {
  459. color:#B8C2CC !important;
  460. }
  461. .btn-outline-lighter {
  462. color: #B8C2CC !important;
  463. border-color: #B8C2CC !important;
  464. }
  465. .cursor-pointer {
  466. cursor: pointer;
  467. }
  468. .tooltip-notification .tooltip-inner {
  469. max-width: 200px;
  470. padding: 3px 8px;
  471. color: #fff;
  472. text-align: center;
  473. /*background-color: #dc3545;*/
  474. border-radius: .25rem;
  475. }
  476. .tooltip-notification .tooltip.bs-tooltip-auto[x-placement^=top] .arrow::before, .tooltip.bs-tooltip-top .arrow::before {
  477. /*border-top-color: #dc3545; */
  478. }
  479. .carousel-control-prev-icon, .carousel-control-next-icon {
  480. filter: drop-shadow(0px 0px 1px black);
  481. }
  482. .VueCarousel:focus,
  483. .VueCarousel-navigation-button:focus,
  484. .VueCarousel-dot:focus,
  485. .VueCarousel-dot--active:focus {
  486. outline: 0px !important;
  487. }
  488. .status-content > p:first-child {
  489. display: inline;
  490. }
  491. .follow-modal {
  492. max-width: 400px !important;
  493. }
  494. .square-content {
  495. img {
  496. object-fit: cover !important;
  497. }
  498. }
  499. .square .square-content {
  500. canvas {
  501. width: 100%;
  502. height: 100%;
  503. }
  504. }
  505. .tribute-container {
  506. position: absolute;
  507. top: 0;
  508. left: 0;
  509. height: auto;
  510. max-height: 300px;
  511. min-width: 120px;
  512. max-width: 500px;
  513. overflow: auto;
  514. display: block;
  515. z-index: 999999;
  516. border: 1px solid #ccc;
  517. border-radius: 4px;
  518. box-shadow: 0 1px 4px rgba(#000, 0.13);
  519. ul {
  520. margin: 0;
  521. margin-top: 2px;
  522. padding: 0;
  523. list-style: none;
  524. background: #fff;
  525. border-radius: 4px;
  526. border: 1px solid rgba(#000, 0.13);
  527. background-clip: padding-box;
  528. overflow: hidden;
  529. }
  530. li {
  531. color: #000;
  532. padding: 5px 15px;
  533. cursor: pointer;
  534. font-size: 14px;
  535. overflow-x: hidden !important;
  536. &.highlight,
  537. &:hover {
  538. background: #2c78bf;
  539. color: #fff;
  540. }
  541. &.no-match {
  542. cursor: default;
  543. }
  544. }
  545. .menu-highlighted {
  546. font-weight: bold;
  547. }
  548. }