button {
  background-color: #fed766;
  border: 1px solid #fcbc02;
  border-radius: .2em;
}

button:hover {
  color: #fff;
  background-color: #0081cc;
  border: 1px solid #004066;
}

button:active {
  color: #fff;
  background-color: #006199;
  border: 1px solid #004066;
}

button.drawable-ui-decline {
  color: #fff;
  background-color: #fd454a;
  border: 1px solid #da0208;
}

button.drawable-ui-decline:hover {
  color: #fff;
  background-color: #fd5e63;
  border: 1px solid #420102;
}

button.drawable-ui-decline:active {
  color: #fff;
  background-color: #fc1319;
  border: 1px solid #da0208;
}

button.drawable-ui-accept {
  color: #fff;
  background-color: #44af69;
  border: 1px solid #27663d;
}

button.drawable-ui-accept:hover {
  color: #fff;
  background-color: #51bb76;
  border: 1px solid #27663d;
}

button.drawable-ui-accept:active {
  color: #fff;
  background-color: #368a53;
  border: 1px solid #27663d;
}

button.drawable-ui-accept:disabled, button.drawable-ui-accept:disabled:hover {
  color: #d3d3d3;
  background-color: #5c9770;
  border: 1px solid #27663d;
}

button.drawable-ui-transparent, button.drawable-ui-transparent:not([enabled]):hover {
  background-color: inherit;
  color: #646165;
  border: 1px solid #0000;
}

button.drawable-ui-transparent:not([disabled]):hover {
  background-color: #fed766;
  border: 1px solid #fcbc02;
  border-radius: .2em;
}

button.drawable-ui-transparent:active {
  border-radius: .2em;
  color: #fff !important;
  background-color: #0081cc !important;
  border: 1px solid #004066 !important;
}

.drawable-ui-toggle-button-active:hover {
  background-color: #006199 !important;
}

.drawable-ui-toggle-button-active {
  border-radius: .2em;
  color: #fff !important;
  background-color: #0081cc !important;
  border: 1px solid #004066 !important;
}

a.drawable-action-link {
  color: #0081cc;
  cursor: pointer;
  text-decoration: underline;
}

form {
  margin: 2em;
}

form .drawable-form-validation-message {
  background-color: inherit;
  color: #fd454a;
  margin-top: -1.5em;
  font-style: italic;
  display: block;
  position: absolute;
}

form input[type="checkbox"] {
  margin-right: .5em;
}

form h3 {
  margin-bottom: .5em;
}

form fieldset {
  min-width: 100px;
  border: none;
  padding: 0;
  display: block;
}

form fieldset legend {
  padding-top: 1em;
  font-weight: bold;
  display: block;
}

form fieldset table {
  margin-top: 1em;
}

form fieldset > p {
  margin: 0 0 1.5em !important;
  padding: 0 !important;
}

form fieldset > p input {
  float: right;
  border: 1px solid #646165;
  outline: none;
  margin-left: 1em;
}

form fieldset > p input:focus {
  background-color: #f4f4f8;
  border: 1px solid #646165;
}

form fieldset > p input:invalid {
  border-bottom-color: #fd454a;
}

form fieldset > p label {
  padding-top: .3em;
  display: inline-block;
}

.drawable-input-validation-message {
  color: #fff;
  z-index: 100000000000;
  background-color: #fd454a;
  padding: .2em .5em;
  position: absolute;
}

body.drawable-force-cursor * {
  cursor: inherit !important;
}

header {
  width: 100%;
  box-sizing: border-box;
  background-color: #fed766;
  border-bottom: 1px solid #fed45c;
  align-items: center;
  padding-left: 2em;
  display: flex;
  box-shadow: 0 0 15px 2px #0000001a;
}

header h1 {
  flex: auto;
  display: inline-block;
}

header h1 span {
  margin-left: .2em;
  font-weight: normal;
}

header h1 span:before {
  content: "-";
  margin-right: .2em;
}

header section {
  color: #000;
  padding-right: 5em;
}

header section * {
  margin-left: 1em;
}

header section a {
  color: #000;
  font-size: 1.2em;
}

header {
  margin-bottom: 3em;
}

header a {
  color: #000;
}

header a:hover {
  text-decoration: none;
}

body {
  flex-direction: column;
  align-items: center;
  display: flex;
  overflow: auto;
}

.drawable-imprint {
  align-items: start;
}

.drawable-imprint p, .drawable-imprint h2, .drawable-imprint h3, .drawable-imprint h4, .drawable-imprint ul {
  max-width: 40rem;
  text-align: left;
  margin-left: 10rem;
}

.drawable-imprint ul li {
  margin-top: .5em;
  margin-left: 0;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n+1) {
  flex-direction: row;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n) {
  flex-direction: row-reverse;
}

.drawable-intro-content .drawable-intro-howto {
  max-width: 70vw;
  background-color: #f4f4f8;
  margin: 0;
  padding: 5em 0;
  display: flex;
}

.drawable-intro-content .drawable-intro-howto .drawable-app-container {
  height: 20em;
  border: 1px solid #fed766;
  border-top-width: 1em;
  outline: none;
  flex: 0 0 30em;
  margin: 0 6em;
}

.drawable-intro-content .drawable-intro-howto .drawable-app-container input {
  box-sizing: content-box !important;
}

.drawable-intro-content .drawable-intro-howto .drawable-app-container.wide {
  height: 20em;
  flex: 0 0 40em;
}

.drawable-intro-content .drawable-intro-howto .drawable-intro-howto-descr {
  min-width: 10em;
  flex: 30em;
  display: block;
}

.drawable-intro-content .drawable-intro-howto .drawable-intro-howto-descr h2 {
  margin: 0;
}

.drawable-intro-content .drawable-intro-howto .drawable-intro-howto-descr p {
  display: block;
}

.drawable-intro-content .drawable-intro-howto .drawable-intro-howto-descr ul {
  display: inline-block;
}

.drawable-intro-content .drawable-intro-howto.big {
  flex-direction: column;
  align-items: center;
  padding: 4em 3em;
}

.drawable-intro-content .drawable-intro-howto.big .drawable-intro-howto-descr {
  max-width: 35em;
  flex-basis: 0;
  margin-top: 2em;
}

.drawable-intro-content .drawable-intro-howto.big .drawable-intro-howto-descr .drawable-app-container {
  max-width: 60em;
  flex: 0 0 10em;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n+1) {
  background: linear-gradient(90deg, #fff 0% 50%, #f4f4f8 100%);
  margin-top: 5em;
  transition: box-shadow .2s;
  box-shadow: 1em .2em 1em -1em #0003;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n) {
  background: linear-gradient(90deg, #f4f4f8 0%, #fff 50% 100%);
  margin-top: 5em;
  transition: box-shadow .2s;
  box-shadow: -1em .2em 1em -1em #0003;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n):hover {
  box-shadow: -2em .2em 1em -1em #0000004d;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n+1):hover {
  box-shadow: 2em .2em 1em -1em #0000004d;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n+1) .drawable-intro-howto-descr {
  margin-left: 0;
  padding-right: 2em;
}

.drawable-intro-content .drawable-intro-howto:nth-child(2n) .drawable-intro-howto-descr {
  margin-right: 0;
  padding-left: 2em;
}

a.drawable-next, a.drawable-previous {
  color: #000;
  margin: 1em;
  padding: 1em 2em;
  text-decoration: none;
  transition: box-shadow .2s;
  display: inline-block;
}

a.drawable-next h1, a.drawable-previous h1 {
  margin: 0 0 .5em;
  padding: 0;
  font-size: 1.5em;
}

.drawable-page-navigator {
  justify-content: center;
  align-items: center;
  margin-top: 3em;
  display: flex;
}

.drawable-page-navigator * {
  flex: 0 0 15em;
  margin: 2em 5em;
  display: block;
}

a.drawable-next, a.drawable-previous {
  border-top: .2em solid #fff;
  border-bottom: .2em solid #fff;
  transition: box-shadow .2s, border-bottom-color .2s;
}

a.drawable-next {
  text-align: right;
  box-shadow: .5em 0 1em -.3em #0003;
}

a.drawable-previous {
  box-shadow: -.5em 0 1em -.3em #0003;
}

a.drawable-next:hover {
  border-bottom: .2em solid #fed766;
  box-shadow: 1em 0 1em -.5em #0000004d;
}

a.drawable-previous:hover {
  border-bottom: .2em solid #fed766;
  box-shadow: -1em 0 1em -.5em #0000004d;
}

a.drawable-next h1 {
  text-align: right;
}

a.drawable-next h1:after {
  content: " >>";
}

a.drawable-previous h1 {
  text-align: left;
}

a.drawable-previous h1:before {
  content: "<< ";
}

.welcome h2 {
  margin-top: 2em;
  margin-bottom: 0;
}

.welcome h2.first {
  margin-top: 0;
}

.welcome ul {
  margin: 0;
}

.welcome p {
  max-width: 50vw;
  margin: 1em;
}

.welcome p strong {
  display: inline;
}

.welcome a {
  color: #0081cc;
}

.welcome a.biglink {
  color: #000;
  background-color: #fed766;
  border: .1em solid #f4f4f8;
  outline: .1em solid #fed766;
  margin: 1em;
  padding: .5em 1em;
  font-size: 2em;
  font-weight: bold;
  display: block;
  box-shadow: .2em .2em .5em #0006;
}

.welcome header a {
  color: #000;
}

.welcome footer a {
  color: #f4f4f8;
}

footer {
  text-align: left;
  color: #f4f4f8;
  box-sizing: border-box;
  width: 100%;
  background-color: #646165;
  flex-direction: row;
  margin: 10em 0 0;
  padding: 2em;
  display: flex;
  box-shadow: 0 0 15px 2px #0000001a;
}

footer > * {
  flex: 1 0 10em;
  display: block;
}

footer > :nth-child(2) {
  text-align: center;
}

footer > :nth-child(3) {
  text-align: right;
}

footer > :nth-child(3) a {
  margin-left: 1em;
}

footer a {
  color: #f4f4f8;
}

footer ul {
  padding: 0;
  list-style: none;
  margin: 0 !important;
}

footer ul li {
  margin: 0;
  padding: 0;
}

footer ul li:nth-child(1) {
  margin-top: 0;
}

