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.

926 lines
14 KiB

3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
  1. @charset "UTF-8";
  2. @font-face {
  3. font-family: "IBM Plex Mono";
  4. src: url(/fonts/IBMPlexMono.eot?85f924ecb898e5720062617e4a86f1d1);
  5. src: url(/fonts/IBMPlexMono.eot?85f924ecb898e5720062617e4a86f1d1) format("embedded-opentype"), url(/fonts/IBMPlexMono.woff2?db620201a437f00ce78da2a10cf50f3f) format("woff2"), url(/fonts/IBMPlexMono.woff?3d04ef6de65d3c77bd60c158326be298) format("woff"), url(/fonts/IBMPlexMono.ttf?ce51a85eb7160067d01bcf6e56f837d1) format("truetype");
  6. font-weight: normal;
  7. font-style: normal;
  8. font-display: swap;
  9. }
  10. @font-face {
  11. font-family: "IBM Plex Mono";
  12. src: url(/fonts/IBMPlexMono-Bold.eot?eb105b142ce736849ef4828cb0c8eb34);
  13. src: url(/fonts/IBMPlexMono-Bold.eot?eb105b142ce736849ef4828cb0c8eb34) format("embedded-opentype"), url(/fonts/IBMPlexMono-Bold.woff2?8b633c62813e0275ebd7a1c793c4e99c) format("woff2"), url(/fonts/IBMPlexMono-Bold.woff?b72090c625b4144f3763d5b2bf8f5942) format("woff"), url(/fonts/IBMPlexMono-Bold.ttf?558e55bd46468bb8d7074d7064d02c30) format("truetype");
  14. font-weight: bold;
  15. font-style: normal;
  16. font-display: swap;
  17. }
  18. /**
  19. * mixins
  20. *
  21. *
  22. * @author Björn Hase, Tentakelfabrik
  23. * @license http://opensource.org/licenses/MIT The MIT License
  24. * @link https://github.com/tentakelfabrik/plain-ui-css
  25. *
  26. */
  27. /**
  28. * Clear Floats
  29. *
  30. *
  31. *
  32. */
  33. /**
  34. * clear styles from list
  35. *
  36. *
  37. */
  38. /**
  39. * media-queries as mixins
  40. * based on breakpoints from variables
  41. *
  42. *
  43. *
  44. */
  45. /**
  46. * Set property and his value for each Breakpoint
  47. *
  48. * (
  49. * $plain-ui__md: 10px
  50. * )
  51. *
  52. *
  53. * @param {css} $property
  54. * @param {map} $breakpoints
  55. * @param {Boolean} $important [false]
  56. *
  57. */
  58. /**
  59. * Set property and his value with an factor for each Breakpoint
  60. *
  61. * (
  62. * $plain-ui__md: 10px
  63. * )
  64. *
  65. * @param {css} $property
  66. * @param {number} $factor
  67. * @param {map} $breakpoints
  68. * @param {Boolean} $important [false]
  69. *
  70. */
  71. /**
  72. * Set font-size from Breakpoints, use for calculating difference from font-size and default font-size
  73. *
  74. * (
  75. * $plain-ui__md: 1rem
  76. * )
  77. *
  78. * @param {map} $breakpoints
  79. * @param {unit} $font-size
  80. * @param {unit} $default
  81. * @param {Boolean} $important [false]
  82. *
  83. */
  84. /**
  85. * variables
  86. *
  87. *
  88. *
  89. * @author Björn Hase, Tentakelfabrik
  90. * @license http://opensource.org/licenses/MIT The MIT License
  91. * @link https://github.com/tentakelfabrik/plain-ui-css
  92. *
  93. */
  94. /**
  95. * breakpoints
  96. *
  97. */
  98. /**
  99. * fonts
  100. *
  101. */
  102. /**
  103. * colors
  104. *
  105. *
  106. */
  107. /**
  108. * padding & margin
  109. *
  110. */
  111. /**
  112. * heading
  113. *
  114. */
  115. /**
  116. * z-index
  117. *
  118. */
  119. /**
  120. * core
  121. *
  122. *
  123. * @author Björn Hase, Tentakelfabrik
  124. * @license http://opensource.org/licenses/MIT The MIT License
  125. * @link https://github.com/tentakelfabrik/crispy-css
  126. *
  127. */
  128. /**
  129. * normalize
  130. *
  131. * Thanks to https://necolas.github.io/normalize.css/, use a lot from them
  132. *
  133. * @author Björn Hase, Tentakelfabrik
  134. * @license http://opensource.org/licenses/MIT The MIT License
  135. * @link https://github.com/tentakelfabrik/crispy-css
  136. *
  137. */
  138. /**
  139. * Heading
  140. *
  141. *
  142. * @author Björn Hase, Tentakelfabrik
  143. * @license http://opensource.org/licenses/MIT The MIT License
  144. * @link https://github.com/tentakelfabrik/crispy-css
  145. *
  146. */
  147. /**
  148. * typograhy
  149. *
  150. * @author Björn Hase, Tentakelfabrik
  151. * @license http://opensource.org/licenses/MIT The MIT License
  152. * @link https://github.com/tentakelfabrik/crispy-css
  153. *
  154. */
  155. html {
  156. font-size: 100%;
  157. line-height: 1.15;
  158. -webkit-text-size-adjust: 100%;
  159. }
  160. body,
  161. html {
  162. margin: 0;
  163. height: 100%;
  164. }
  165. html,
  166. legend {
  167. box-sizing: border-box;
  168. }
  169. main {
  170. display: block;
  171. }
  172. *,
  173. *::after,
  174. *::before {
  175. box-sizing: inherit;
  176. }
  177. table {
  178. border-collapse: collapse;
  179. border-spacing: 0;
  180. }
  181. figcaption {
  182. margin: 10px 0;
  183. }
  184. /**
  185. * form elements
  186. *
  187. *
  188. */
  189. button,
  190. input,
  191. optgroup,
  192. select,
  193. textarea {
  194. margin: 0;
  195. }
  196. button,
  197. select {
  198. text-transform: none;
  199. }
  200. button,
  201. [type=button],
  202. [type=reset],
  203. [type=submit] {
  204. -webkit-appearance: button;
  205. }
  206. button::-moz-focus-inner,
  207. [type=button]::-moz-focus-inner,
  208. [type=reset]::-moz-focus-inner,
  209. [type=submit]::-moz-focus-inner {
  210. border-style: none;
  211. padding: 0;
  212. }
  213. button:-moz-focusring,
  214. [type=button]:-moz-focusring,
  215. [type=reset]:-moz-focusring,
  216. [type=submit]:-moz-focusring {
  217. outline: 1px dotted ButtonText;
  218. }
  219. legend {
  220. box-sizing: border-box;
  221. display: table;
  222. max-width: 100%;
  223. padding: 0;
  224. white-space: normal;
  225. }
  226. [type=number]::-webkit-inner-spin-button,
  227. [type=number]::-webkit-outer-spin-button {
  228. height: auto;
  229. }
  230. [type=search] {
  231. -webkit-appearance: textfield;
  232. outline-offset: -2px;
  233. }
  234. [type=search]::-webkit-search-decoration {
  235. -webkit-appearance: none;
  236. }
  237. ::-webkit-file-upload-button {
  238. -webkit-appearance: button;
  239. font: inherit;
  240. }
  241. /**
  242. * hr
  243. *
  244. */
  245. hr {
  246. box-sizing: content-box;
  247. height: 0;
  248. overflow: visible;
  249. border: 0;
  250. margin: 0.3em 0;
  251. }
  252. progress {
  253. vertical-align: baseline;
  254. }
  255. details {
  256. display: block;
  257. }
  258. summary {
  259. display: list-item;
  260. }
  261. /**
  262. *
  263. *
  264. *
  265. *
  266. */
  267. /**
  268. *
  269. *
  270. *
  271. *
  272. */
  273. /**
  274. *
  275. *
  276. *
  277. */
  278. /**
  279. *
  280. *
  281. *
  282. *
  283. */
  284. /**
  285. *
  286. *
  287. *
  288. *
  289. */
  290. /**
  291. * <div class="hero">
  292. * <img src="image.png" alt="image" />
  293. * </div>
  294. *
  295. */
  296. /**
  297. *
  298. *
  299. *
  300. */
  301. /**
  302. * <figure class="media-figure">
  303. * <img class="media__img" src="https://via.placeholder.com/150" />
  304. * <figcaption class="media-figure__caption">
  305. * food truck yr franzen pabst
  306. * </figcaption>
  307. * </figure>
  308. *
  309. */
  310. /**
  311. *
  312. *
  313. *
  314. */
  315. /**
  316. * <div class="slider">
  317. * <div class="slider__inner">
  318. * <div class="slider__item w-10"></div>
  319. * </div>
  320. * </div>
  321. *
  322. */
  323. /**
  324. *
  325. *
  326. *
  327. *
  328. */
  329. a {
  330. color: #fff;
  331. }
  332. a:focus {
  333. outline: none;
  334. }
  335. /**
  336. * body
  337. *
  338. *
  339. *
  340. * line-height and breakpoints
  341. * font-size and breakpoints
  342. *
  343. */
  344. body {
  345. font-family: "IBM Plex Mono", sans-serif;
  346. background-color: #f9f9f9;
  347. direction: ltr;
  348. font-size: 1rem;
  349. line-height: 1.4;
  350. }
  351. /**
  352. * borders
  353. *
  354. *
  355. */
  356. .border {
  357. border: 1px solid #3e3e3e !important;
  358. }
  359. .border-round {
  360. border-radius: 2px !important;
  361. }
  362. .borderless {
  363. border: 0 !important;
  364. }
  365. .radiusless {
  366. border-radius: 0 !important;
  367. }
  368. /**
  369. *
  370. *
  371. */
  372. .round {
  373. border-radius: 50% !important;
  374. }
  375. /**
  376. * typography
  377. *
  378. *
  379. */
  380. .left {
  381. text-align: left !important;
  382. }
  383. .right {
  384. text-align: right !important;
  385. }
  386. .center {
  387. text-align: center !important;
  388. }
  389. .justify {
  390. text-align: justify !important;
  391. }
  392. .uppercase {
  393. text-transform: uppercase !important;
  394. }
  395. .lowercase {
  396. text-transform: lowercase !important;
  397. }
  398. .crossed {
  399. text-decoration: line-through !important;
  400. }
  401. .underline {
  402. text-decoration: underline !important;
  403. }
  404. .capitalize {
  405. text-transform: capitalize !important;
  406. }
  407. .italic {
  408. font-style: italic !important;
  409. }
  410. .light {
  411. font-weight: lighter !important;
  412. }
  413. .normal {
  414. font-weight: normal !important;
  415. }
  416. .medium {
  417. font-weight: medium !important;
  418. }
  419. .bold {
  420. font-weight: bolder !important;
  421. }
  422. .text-size-default {
  423. font-size: 1rem !important;
  424. }
  425. .text-size-small {
  426. font-size: 0.75rem !important;
  427. }
  428. .text-size-medium {
  429. font-size: 1.5rem !important;
  430. }
  431. .text-size-large {
  432. font-size: 2rem !important;
  433. }
  434. .text-size-big {
  435. font-size: 3rem !important;
  436. }
  437. /**
  438. * colors
  439. *
  440. *
  441. */
  442. .text-color-primary {
  443. color: #3e3e3e !important;
  444. }
  445. .text-color-white {
  446. color: #fff !important;
  447. }
  448. .fill-primary {
  449. fill: #3e3e3e !important;
  450. }
  451. .fill-white {
  452. fill: #fff !important;
  453. }
  454. .border-color-primary {
  455. border-color: #3e3e3e !important;
  456. }
  457. .border-color-white {
  458. border-color: #fff !important;
  459. }
  460. .background-color-primary {
  461. background-color: #3e3e3e !important;
  462. }
  463. .background-color-white {
  464. background-color: #fff !important;
  465. }
  466. /**
  467. * floating
  468. *
  469. *
  470. */
  471. .float-left {
  472. float: left;
  473. }
  474. .float-right {
  475. float: right;
  476. }
  477. .float-none {
  478. float: none;
  479. }
  480. .centered {
  481. margin-left: auto;
  482. margin-right: auto;
  483. }
  484. .clearfix::before, .clearfix::after {
  485. display: table;
  486. content: " ";
  487. }
  488. .clearfix::after {
  489. clear: both;
  490. }
  491. /**
  492. * position
  493. *
  494. *
  495. */
  496. .absolute {
  497. position: absolute !important;
  498. }
  499. .fixed {
  500. position: fixed !important;
  501. }
  502. .relative {
  503. position: relative !important;
  504. }
  505. .badge {
  506. display: inline-block;
  507. background-color: #3e3e3e;
  508. color: white;
  509. font-size: 0.85rem;
  510. padding: 0.4em 0.8em;
  511. border: 1px solid #3e3e3e;
  512. border-radius: 2px;
  513. }
  514. .badge--round {
  515. display: inline-flex;
  516. justify-content: center;
  517. border-radius: 50%;
  518. width: 2.5em;
  519. }
  520. .button {
  521. -webkit-appearance: none;
  522. -moz-appearance: none;
  523. appearance: none;
  524. position: relative;
  525. display: inline-block;
  526. text-decoration: none;
  527. font-family: "IBM Plex Mono", sans-serif;
  528. border: 1px solid #3e3e3e;
  529. background-color: white;
  530. color: #3e3e3e;
  531. border-radius: 2px;
  532. transition: background-color 0.1s;
  533. margin-bottom: 0.5em;
  534. padding: 0.5em 1.3em;
  535. font-size: 1rem;
  536. width: 100%;
  537. }
  538. @media only screen and (min-width: 768px) {
  539. .button {
  540. width: auto;
  541. }
  542. }
  543. .button--small {
  544. font-size: 0.8em;
  545. }
  546. .button--no-style {
  547. margin: 0;
  548. padding: 0;
  549. border: none;
  550. background: transparent;
  551. }
  552. .button:hover, .button--hover {
  553. cursor: pointer;
  554. text-decoration: none;
  555. color: white;
  556. background-color: #3e3e3e;
  557. }
  558. .button:focus, .button:active {
  559. outline: 1px solid #646464;
  560. }
  561. .button:disabled {
  562. opacity: 0.5;
  563. }
  564. .button:disabled:hover {
  565. cursor: not-allowed;
  566. border: 1px solid #3e3e3e;
  567. background-color: white;
  568. color: #3e3e3e;
  569. }
  570. .button--danger {
  571. border-color: #d95959;
  572. }
  573. .button--danger:hover {
  574. background-color: #d95959;
  575. }
  576. .button--danger:focus, .button--danger:active {
  577. outline: 2px solid #e79797;
  578. }
  579. .field-group {
  580. margin-bottom: 1.2em;
  581. }
  582. .field-group--valid input.field-text, .field-group--valid textarea.field-text {
  583. border-color: #64ac64;
  584. }
  585. .field-group--valid .icon {
  586. fill: #64ac64;
  587. }
  588. .field-group--error input.field-text, .field-group--error textarea.field-text {
  589. border-color: #d95959;
  590. }
  591. .field-group--error .icon {
  592. fill: #d95959;
  593. }
  594. .field-label {
  595. font-size: 1rem;
  596. font-family: "IBM Plex Mono", sans-serif;
  597. }
  598. .field-label .icon {
  599. vertical-align: sub;
  600. font-size: 1.1rem;
  601. }
  602. .field-label:hover {
  603. cursor: pointer;
  604. }
  605. input.field-text, textarea.field-text, select.field-choice {
  606. font-family: "IBM Plex Mono", sans-serif;
  607. font-size: 0.95rem;
  608. width: 100%;
  609. border: 1px solid #a4a4a4;
  610. background-color: white;
  611. border-radius: 2px;
  612. margin: 0.7em 0 0;
  613. }
  614. input.field-text:focus, input.field-text:active, textarea.field-text:focus, textarea.field-text:active, select.field-choice:focus, select.field-choice:active {
  615. outline: 0;
  616. border-color: #3e3e3e;
  617. }
  618. input.field-text, textarea.field-text {
  619. padding: 0.8em 1.1em;
  620. }
  621. /**
  622. *
  623. *
  624. */
  625. select.field-choice {
  626. -webkit-appearance: none;
  627. -moz-appearance: none;
  628. appearance: none;
  629. padding: 0.8em;
  630. position: relative;
  631. }
  632. select.field-choice::after {
  633. position: absolute;
  634. right: 0;
  635. top: 0;
  636. display: block;
  637. content: " ";
  638. width: 10px;
  639. height: 10px;
  640. background: red;
  641. }
  642. /**
  643. * radio & checkbox
  644. *
  645. * <div class="field">
  646. * <label for="field__checkbox__1" class="field__label">
  647. * <input class="field__choice" type="checkbox" name="field__checkbox__1" value="true" />
  648. * <svg class="icon field__choice__unchecked" aria-hidden="true">
  649. * <use xlink:href="symbol-defs.svg#icon-minus"></use>
  650. * </svg>
  651. * <svg class="icon field__choice__checked" aria-hidden="true">
  652. * <use xlink:href="symbol-defs.svg#icon-checked"></use>
  653. * </svg>
  654. * checkbox 1
  655. * </label>
  656. * </div>
  657. *
  658. */
  659. input[type=checkbox].field-choice,
  660. input[type=radio].field-choice {
  661. position: relative;
  662. display: none;
  663. }
  664. input[type=checkbox].field-choice ~ .field-choice__checked,
  665. input[type=radio].field-choice ~ .field-choice__checked {
  666. display: none;
  667. }
  668. input[type=checkbox].field-choice:checked ~ .field-choice__checked,
  669. input[type=radio].field-choice:checked ~ .field-choice__checked {
  670. display: inline-block;
  671. }
  672. input[type=checkbox].field-choice:checked ~ .field-choice__unchecked,
  673. input[type=radio].field-choice:checked ~ .field-choice__unchecked {
  674. display: none;
  675. }
  676. svg.field-choice__unchecked {
  677. fill: #a4a4a4;
  678. }
  679. svg.field-choice__checked {
  680. fill: #64ac64;
  681. }
  682. .field-help, .field-error {
  683. display: inline-block;
  684. width: 100%;
  685. padding: 0.6em 0.5em;
  686. font-size: 0.8rem;
  687. }
  688. .field-error {
  689. color: #d95959;
  690. }
  691. .icon {
  692. width: 1em;
  693. height: 1em;
  694. max-height: 100%;
  695. max-width: 100%;
  696. vertical-align: middle;
  697. overflow: hidden;
  698. font-size: 1.2rem;
  699. fill: #3e3e3e;
  700. }
  701. .icon--success {
  702. fill: #64ac64;
  703. }
  704. .icon--danger {
  705. fill: #d95959;
  706. }
  707. .panel {
  708. border: 1px solid #3e3e3e;
  709. border-radius: 2px;
  710. background: #fff;
  711. }
  712. .panel__header {
  713. display: flex;
  714. background-color: #3e3e3e;
  715. color: white;
  716. padding: 0.8em 1.2em;
  717. line-height: 1.6em;
  718. }
  719. .panel__header button {
  720. -webkit-appearance: none;
  721. -moz-appearance: none;
  722. appearance: none;
  723. background: none;
  724. border: none;
  725. padding: 0;
  726. }
  727. .panel__header button:hover {
  728. cursor: pointer;
  729. }
  730. .panel__header .icon {
  731. vertical-align: bottom;
  732. width: 1.5em;
  733. height: 1.5em;
  734. margin-right: 0.5em;
  735. fill: white;
  736. }
  737. .panel__buttons {
  738. display: flex;
  739. justify-content: end;
  740. width: 100%;
  741. }
  742. .panel__buttons button:last-child .icon {
  743. margin-right: 0;
  744. }
  745. .panel__body {
  746. padding: 0.6em 1.2em;
  747. }
  748. .figure {
  749. margin: 0;
  750. display: inline-block;
  751. line-height: 0;
  752. border: 1px solid #3e3e3e;
  753. border-radius: 2px;
  754. overflow: hidden;
  755. }
  756. .figure__caption {
  757. padding: 0.75em 1.1em;
  758. font-size: 0.7rem;
  759. background: #3e3e3e;
  760. line-height: 1.4;
  761. margin: 0;
  762. color: white;
  763. }
  764. .figure img.media {
  765. border: 0;
  766. }
  767. img.media {
  768. border-radius: 2px;
  769. border: 1px solid #3e3e3e;
  770. width: 100%;
  771. height: auto;
  772. }
  773. .table {
  774. width: 100%;
  775. border: 1px solid #cacaca;
  776. background: white;
  777. }
  778. .table--striped tr:nth-child(even) {
  779. background-color: #fdfdfd;
  780. }
  781. .table--scroll {
  782. overflow-x: auto;
  783. }
  784. .table td {
  785. color: #3e3e3e;
  786. }
  787. .table td,
  788. .table th {
  789. text-align: left;
  790. border-bottom: 1px solid #cacaca;
  791. padding: 0.5em 1.25em;
  792. }
  793. .table th {
  794. border-bottom: 1px solid #8b8b8b;
  795. background-color: #e4e4e4;
  796. }
  797. .table tr:hover {
  798. background-color: #e4e4e4;
  799. }
  800. .hero {
  801. position: relative;
  802. }
  803. .hero img {
  804. width: 100%;
  805. -o-object-fit: cover;
  806. object-fit: cover;
  807. -o-object-position: 50% 50%;
  808. object-position: 50% 50%;
  809. }
  810. .hero--contain {
  811. -o-object-fit: contain;
  812. object-fit: contain;
  813. }
  814. .slider {
  815. display: flex;
  816. }
  817. .slider__inner {
  818. display: flex;
  819. overflow: hidden;
  820. }
  821. .slider__item {
  822. flex: none;
  823. width: 33%;
  824. }
  825. .bar {
  826. display: flex;
  827. background-color: #3e3e3e;
  828. color: white;
  829. padding: 0.8em 1.2em;
  830. }
  831. .bar__start {
  832. justify-content: start;
  833. margin-right: 0.75em;
  834. }
  835. .bar__main {
  836. width: 100%;
  837. }
  838. .bar__end {
  839. justify-content: end;
  840. margin-left: 0.75em;
  841. }