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.

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