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.

906 lines
15 KiB

  1. $maximum-width: 1235px;
  2. $fluid-breakpoint: $maximum-width + 20px;
  3. $column-breakpoint: 700px;
  4. $small-breakpoint: 960px;
  5. .container {
  6. box-sizing: border-box;
  7. max-width: $maximum-width;
  8. margin: 0 auto;
  9. position: relative;
  10. @media screen and (max-width: $fluid-breakpoint) {
  11. width: 100%;
  12. padding: 0 10px;
  13. }
  14. }
  15. .rich-formatting {
  16. font-family: $font-sans-serif, sans-serif;
  17. font-size: 14px;
  18. font-weight: 400;
  19. line-height: 1.7;
  20. word-wrap: break-word;
  21. color: $darker-text-color;
  22. a {
  23. color: $highlight-text-color;
  24. text-decoration: underline;
  25. &:hover,
  26. &:focus,
  27. &:active {
  28. text-decoration: none;
  29. }
  30. }
  31. p,
  32. li {
  33. color: $darker-text-color;
  34. }
  35. p {
  36. margin-top: 0;
  37. margin-bottom: .85em;
  38. &:last-child {
  39. margin-bottom: 0;
  40. }
  41. }
  42. strong {
  43. font-weight: 700;
  44. color: $secondary-text-color;
  45. }
  46. em {
  47. font-style: italic;
  48. color: $secondary-text-color;
  49. }
  50. code {
  51. font-size: 0.85em;
  52. background: darken($ui-base-color, 8%);
  53. border-radius: 4px;
  54. padding: 0.2em 0.3em;
  55. }
  56. h1,
  57. h2,
  58. h3,
  59. h4,
  60. h5,
  61. h6 {
  62. font-family: $font-display, sans-serif;
  63. margin-top: 1.275em;
  64. margin-bottom: .85em;
  65. font-weight: 500;
  66. color: $secondary-text-color;
  67. }
  68. h1 {
  69. font-size: 2em;
  70. }
  71. h2 {
  72. font-size: 1.75em;
  73. }
  74. h3 {
  75. font-size: 1.5em;
  76. }
  77. h4 {
  78. font-size: 1.25em;
  79. }
  80. h5,
  81. h6 {
  82. font-size: 1em;
  83. }
  84. ul {
  85. list-style: disc;
  86. }
  87. ol {
  88. list-style: decimal;
  89. }
  90. ul,
  91. ol {
  92. margin: 0;
  93. padding: 0;
  94. padding-left: 2em;
  95. margin-bottom: 0.85em;
  96. &[type='a'] {
  97. list-style-type: lower-alpha;
  98. }
  99. &[type='i'] {
  100. list-style-type: lower-roman;
  101. }
  102. }
  103. hr {
  104. width: 100%;
  105. height: 0;
  106. border: 0;
  107. border-bottom: 1px solid lighten($ui-base-color, 4%);
  108. margin: 1.7em 0;
  109. &.spacer {
  110. height: 1px;
  111. border: 0;
  112. }
  113. }
  114. table {
  115. width: 100%;
  116. border-collapse: collapse;
  117. break-inside: auto;
  118. margin-top: 24px;
  119. margin-bottom: 32px;
  120. thead tr,
  121. tbody tr {
  122. border-bottom: 1px solid lighten($ui-base-color, 4%);
  123. font-size: 1em;
  124. line-height: 1.625;
  125. font-weight: 400;
  126. text-align: left;
  127. color: $darker-text-color;
  128. }
  129. thead tr {
  130. border-bottom-width: 2px;
  131. line-height: 1.5;
  132. font-weight: 500;
  133. color: $dark-text-color;
  134. }
  135. th,
  136. td {
  137. padding: 8px;
  138. align-self: start;
  139. align-items: start;
  140. word-break: break-all;
  141. &.nowrap {
  142. width: 25%;
  143. position: relative;
  144. &::before {
  145. content: ' ';
  146. visibility: hidden;
  147. }
  148. span {
  149. position: absolute;
  150. left: 8px;
  151. right: 8px;
  152. white-space: nowrap;
  153. overflow: hidden;
  154. text-overflow: ellipsis;
  155. }
  156. }
  157. }
  158. }
  159. & > :first-child {
  160. margin-top: 0;
  161. }
  162. }
  163. .information-board {
  164. background: darken($ui-base-color, 4%);
  165. padding: 20px 0;
  166. .container-alt {
  167. position: relative;
  168. padding-right: 280px + 15px;
  169. }
  170. &__sections {
  171. display: flex;
  172. justify-content: space-between;
  173. flex-wrap: wrap;
  174. }
  175. &__section {
  176. flex: 1 0 0;
  177. font-family: $font-sans-serif, sans-serif;
  178. font-size: 16px;
  179. line-height: 28px;
  180. color: $primary-text-color;
  181. text-align: right;
  182. padding: 10px 15px;
  183. span,
  184. strong {
  185. display: block;
  186. }
  187. span {
  188. &:last-child {
  189. color: $secondary-text-color;
  190. }
  191. }
  192. strong {
  193. font-family: $font-display, sans-serif;
  194. font-weight: 500;
  195. font-size: 32px;
  196. line-height: 48px;
  197. }
  198. @media screen and (max-width: $column-breakpoint) {
  199. text-align: center;
  200. }
  201. }
  202. .panel {
  203. position: absolute;
  204. width: 280px;
  205. box-sizing: border-box;
  206. background: darken($ui-base-color, 8%);
  207. padding: 20px;
  208. padding-top: 10px;
  209. border-radius: 4px 4px 0 0;
  210. right: 0;
  211. bottom: -40px;
  212. .panel-header {
  213. font-family: $font-display, sans-serif;
  214. font-size: 14px;
  215. line-height: 24px;
  216. font-weight: 500;
  217. color: $darker-text-color;
  218. padding-bottom: 5px;
  219. margin-bottom: 15px;
  220. border-bottom: 1px solid lighten($ui-base-color, 4%);
  221. text-overflow: ellipsis;
  222. white-space: nowrap;
  223. overflow: hidden;
  224. a,
  225. span {
  226. font-weight: 400;
  227. color: darken($darker-text-color, 10%);
  228. }
  229. a {
  230. text-decoration: none;
  231. }
  232. }
  233. }
  234. .owner {
  235. text-align: center;
  236. .avatar {
  237. width: 80px;
  238. height: 80px;
  239. margin: 0 auto;
  240. margin-bottom: 15px;
  241. img {
  242. display: block;
  243. width: 80px;
  244. height: 80px;
  245. border-radius: 48px;
  246. }
  247. }
  248. .name {
  249. font-size: 14px;
  250. a {
  251. display: block;
  252. color: $primary-text-color;
  253. text-decoration: none;
  254. &:hover {
  255. .display_name {
  256. text-decoration: underline;
  257. }
  258. }
  259. }
  260. .username {
  261. display: block;
  262. color: $darker-text-color;
  263. }
  264. }
  265. }
  266. }
  267. .landing-page {
  268. p,
  269. li {
  270. font-family: $font-sans-serif, sans-serif;
  271. font-size: 16px;
  272. font-weight: 400;
  273. line-height: 30px;
  274. margin-bottom: 12px;
  275. color: $darker-text-color;
  276. a {
  277. color: $highlight-text-color;
  278. text-decoration: underline;
  279. }
  280. }
  281. em {
  282. display: inline;
  283. margin: 0;
  284. padding: 0;
  285. font-weight: 700;
  286. background: transparent;
  287. font-family: inherit;
  288. font-size: inherit;
  289. line-height: inherit;
  290. color: lighten($darker-text-color, 10%);
  291. }
  292. h1 {
  293. font-family: $font-display, sans-serif;
  294. font-size: 26px;
  295. line-height: 30px;
  296. font-weight: 500;
  297. margin-bottom: 20px;
  298. color: $secondary-text-color;
  299. small {
  300. font-family: $font-sans-serif, sans-serif;
  301. display: block;
  302. font-size: 18px;
  303. font-weight: 400;
  304. color: lighten($darker-text-color, 10%);
  305. }
  306. }
  307. h2 {
  308. font-family: $font-display, sans-serif;
  309. font-size: 22px;
  310. line-height: 26px;
  311. font-weight: 500;
  312. margin-bottom: 20px;
  313. color: $secondary-text-color;
  314. }
  315. h3 {
  316. font-family: $font-display, sans-serif;
  317. font-size: 18px;
  318. line-height: 24px;
  319. font-weight: 500;
  320. margin-bottom: 20px;
  321. color: $secondary-text-color;
  322. }
  323. h4 {
  324. font-family: $font-display, sans-serif;
  325. font-size: 16px;
  326. line-height: 24px;
  327. font-weight: 500;
  328. margin-bottom: 20px;
  329. color: $secondary-text-color;
  330. }
  331. h5 {
  332. font-family: $font-display, sans-serif;
  333. font-size: 14px;
  334. line-height: 24px;
  335. font-weight: 500;
  336. margin-bottom: 20px;
  337. color: $secondary-text-color;
  338. }
  339. h6 {
  340. font-family: $font-display, sans-serif;
  341. font-size: 12px;
  342. line-height: 24px;
  343. font-weight: 500;
  344. margin-bottom: 20px;
  345. color: $secondary-text-color;
  346. }
  347. ul,
  348. ol {
  349. margin-left: 20px;
  350. &[type='a'] {
  351. list-style-type: lower-alpha;
  352. }
  353. &[type='i'] {
  354. list-style-type: lower-roman;
  355. }
  356. }
  357. ul {
  358. list-style: disc;
  359. }
  360. ol {
  361. list-style: decimal;
  362. }
  363. li > ol,
  364. li > ul {
  365. margin-top: 6px;
  366. }
  367. hr {
  368. width: 100%;
  369. height: 0;
  370. border: 0;
  371. border-bottom: 1px solid rgba($ui-base-lighter-color, .6);
  372. margin: 20px 0;
  373. &.spacer {
  374. height: 1px;
  375. border: 0;
  376. }
  377. }
  378. &__information,
  379. &__forms {
  380. padding: 20px;
  381. }
  382. &__call-to-action {
  383. background: $ui-base-color;
  384. border-radius: 4px;
  385. padding: 25px 40px;
  386. overflow: hidden;
  387. box-sizing: border-box;
  388. .row {
  389. width: 100%;
  390. display: flex;
  391. flex-direction: row-reverse;
  392. flex-wrap: nowrap;
  393. justify-content: space-between;
  394. align-items: center;
  395. }
  396. .row__information-board {
  397. display: flex;
  398. justify-content: flex-end;
  399. align-items: flex-end;
  400. .information-board__section {
  401. flex: 1 0 auto;
  402. padding: 0 10px;
  403. }
  404. @media screen and (max-width: $no-gap-breakpoint) {
  405. width: 100%;
  406. justify-content: space-between;
  407. }
  408. }
  409. .row__mascot {
  410. flex: 1;
  411. margin: 10px -50px 0 0;
  412. @media screen and (max-width: $no-gap-breakpoint) {
  413. display: none;
  414. }
  415. }
  416. }
  417. &__logo {
  418. margin-right: 20px;
  419. img {
  420. height: 50px;
  421. width: auto;
  422. mix-blend-mode: lighten;
  423. }
  424. }
  425. &__information {
  426. padding: 45px 40px;
  427. margin-bottom: 10px;
  428. &:last-child {
  429. margin-bottom: 0;
  430. }
  431. strong {
  432. font-weight: 500;
  433. color: lighten($darker-text-color, 10%);
  434. }
  435. .account {
  436. border-bottom: 0;
  437. padding: 0;
  438. &__display-name {
  439. align-items: center;
  440. display: flex;
  441. margin-right: 5px;
  442. }
  443. div.account__display-name {
  444. &:hover {
  445. .display-name strong {
  446. text-decoration: none;
  447. }
  448. }
  449. .account__avatar {
  450. cursor: default;
  451. }
  452. }
  453. &__avatar-wrapper {
  454. margin-left: 0;
  455. flex: 0 0 auto;
  456. }
  457. .display-name {
  458. font-size: 15px;
  459. &__account {
  460. font-size: 14px;
  461. }
  462. }
  463. }
  464. @media screen and (max-width: $small-breakpoint) {
  465. .contact {
  466. margin-top: 30px;
  467. }
  468. }
  469. @media screen and (max-width: $column-breakpoint) {
  470. padding: 25px 20px;
  471. }
  472. }
  473. &__information,
  474. &__forms,
  475. #mastodon-timeline {
  476. box-sizing: border-box;
  477. background: $ui-base-color;
  478. border-radius: 4px;
  479. box-shadow: 0 0 6px rgba($black, 0.1);
  480. }
  481. &__mascot {
  482. height: 104px;
  483. position: relative;
  484. left: -40px;
  485. bottom: 25px;
  486. img {
  487. height: 190px;
  488. width: auto;
  489. }
  490. }
  491. &__short-description {
  492. .row {
  493. display: flex;
  494. flex-wrap: wrap;
  495. align-items: center;
  496. margin-bottom: 40px;
  497. }
  498. @media screen and (max-width: $column-breakpoint) {
  499. .row {
  500. margin-bottom: 20px;
  501. }
  502. }
  503. p a {
  504. color: $secondary-text-color;
  505. }
  506. h1 {
  507. font-weight: 500;
  508. color: $primary-text-color;
  509. margin-bottom: 0;
  510. small {
  511. color: $darker-text-color;
  512. span {
  513. color: $secondary-text-color;
  514. }
  515. }
  516. }
  517. p:last-child {
  518. margin-bottom: 0;
  519. }
  520. }
  521. &__hero {
  522. margin-bottom: 10px;
  523. img {
  524. display: block;
  525. margin: 0;
  526. max-width: 100%;
  527. height: auto;
  528. border-radius: 4px;
  529. }
  530. }
  531. @media screen and (max-width: 840px) {
  532. .information-board {
  533. .container-alt {
  534. padding-right: 20px;
  535. }
  536. .panel {
  537. position: static;
  538. margin-top: 20px;
  539. width: 100%;
  540. border-radius: 4px;
  541. .panel-header {
  542. text-align: center;
  543. }
  544. }
  545. }
  546. }
  547. @media screen and (max-width: 675px) {
  548. .header-wrapper {
  549. padding-top: 0;
  550. &.compact {
  551. padding-bottom: 0;
  552. }
  553. &.compact .hero .heading {
  554. text-align: initial;
  555. }
  556. }
  557. .header .container-alt,
  558. .features .container-alt {
  559. display: block;
  560. }
  561. }
  562. .cta {
  563. margin: 20px;
  564. }
  565. }
  566. .landing {
  567. margin-bottom: 100px;
  568. @media screen and (max-width: 738px) {
  569. margin-bottom: 0;
  570. }
  571. &__brand {
  572. display: flex;
  573. justify-content: center;
  574. align-items: center;
  575. padding: 50px;
  576. svg {
  577. fill: $primary-text-color;
  578. height: 52px;
  579. }
  580. @media screen and (max-width: $no-gap-breakpoint) {
  581. padding: 0;
  582. margin-bottom: 30px;
  583. }
  584. }
  585. .directory {
  586. margin-top: 30px;
  587. background: transparent;
  588. box-shadow: none;
  589. border-radius: 0;
  590. }
  591. .hero-widget {
  592. margin-top: 30px;
  593. margin-bottom: 0;
  594. h4 {
  595. padding: 10px;
  596. text-transform: uppercase;
  597. font-weight: 700;
  598. font-size: 13px;
  599. color: $darker-text-color;
  600. }
  601. &__text {
  602. border-radius: 0;
  603. padding-bottom: 0;
  604. }
  605. &__footer {
  606. background: $ui-base-color;
  607. padding: 10px;
  608. border-radius: 0 0 4px 4px;
  609. display: flex;
  610. &__column {
  611. flex: 1 1 50%;
  612. overflow-x: hidden;
  613. }
  614. }
  615. .account {
  616. padding: 10px 0;
  617. border-bottom: 0;
  618. .account__display-name {
  619. display: flex;
  620. align-items: center;
  621. }
  622. }
  623. &__counters__wrapper {
  624. display: flex;
  625. }
  626. &__counter {
  627. padding: 10px;
  628. width: 50%;
  629. strong {
  630. font-family: $font-display, sans-serif;
  631. font-size: 15px;
  632. font-weight: 700;
  633. display: block;
  634. }
  635. span {
  636. font-size: 14px;
  637. color: $darker-text-color;
  638. }
  639. }
  640. }
  641. .simple_form .user_agreement .label_input > label {
  642. font-weight: 400;
  643. color: $darker-text-color;
  644. }
  645. .simple_form p.lead {
  646. color: $darker-text-color;
  647. font-size: 15px;
  648. line-height: 20px;
  649. font-weight: 400;
  650. margin-bottom: 25px;
  651. }
  652. &__grid {
  653. max-width: 960px;
  654. margin: 0 auto;
  655. display: grid;
  656. grid-template-columns: minmax(0, 50%) minmax(0, 50%);
  657. grid-gap: 30px;
  658. @media screen and (max-width: 738px) {
  659. grid-template-columns: minmax(0, 100%);
  660. grid-gap: 10px;
  661. &__column-login {
  662. grid-row: 1;
  663. display: flex;
  664. flex-direction: column;
  665. .box-widget {
  666. order: 2;
  667. flex: 0 0 auto;
  668. }
  669. .hero-widget {
  670. margin-top: 0;
  671. margin-bottom: 10px;
  672. order: 1;
  673. flex: 0 0 auto;
  674. }
  675. }
  676. &__column-registration {
  677. grid-row: 2;
  678. }
  679. .directory {
  680. margin-top: 10px;
  681. }
  682. }
  683. @media screen and (max-width: $no-gap-breakpoint) {
  684. grid-gap: 0;
  685. .hero-widget {
  686. display: block;
  687. margin-bottom: 0;
  688. box-shadow: none;
  689. &__img,
  690. &__img img,
  691. &__footer {
  692. border-radius: 0;
  693. }
  694. }
  695. .hero-widget,
  696. .box-widget,
  697. .directory__tag {
  698. border-bottom: 1px solid lighten($ui-base-color, 8%);
  699. }
  700. .directory {
  701. margin-top: 0;
  702. &__tag {
  703. margin-bottom: 0;
  704. & > a,
  705. & > div {
  706. border-radius: 0;
  707. box-shadow: none;
  708. }
  709. &:last-child {
  710. border-bottom: 0;
  711. }
  712. }
  713. }
  714. }
  715. }
  716. }
  717. .brand {
  718. position: relative;
  719. text-decoration: none;
  720. }
  721. .brand__tagline {
  722. display: block;
  723. position: absolute;
  724. bottom: -10px;
  725. left: 50px;
  726. width: 300px;
  727. color: $ui-primary-color;
  728. text-decoration: none;
  729. font-size: 14px;
  730. @media screen and (max-width: $no-gap-breakpoint) {
  731. position: static;
  732. width: auto;
  733. margin-top: 20px;
  734. color: $dark-text-color;
  735. }
  736. }
  737. .rules-list {
  738. background: darken($ui-base-color, 2%);
  739. border: 1px solid darken($ui-base-color, 8%);
  740. border-radius: 4px;
  741. padding: 0.5em 2.5em !important;
  742. margin-top: 1.85em !important;
  743. li {
  744. border-bottom: 1px solid lighten($ui-base-color, 4%);
  745. color: $dark-text-color;
  746. padding: 1em;
  747. &:last-child {
  748. border-bottom: 0;
  749. }
  750. }
  751. &__text {
  752. color: $primary-text-color;
  753. }
  754. }