@charset "UTF-8";

*, *:before, *:after {
  outline: none;

  box-sizing: border-box;
  scroll-behavior: smooth;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  overscroll-behavior-y: none;

  font-family: var(--font-default);
  font-size: var(--size-m);
  color: var(--color-text);
}

noscript {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--z-top);

  width: 100%;
  height: 100%;

  background: white;

  text-align:  center;
  line-height: 100vh;
}

h1, h2, h3, h4, h5 {
  margin: 0;

  font-weight: 400;
  line-height: 1;

  color: var(--color-primary);
}
h1 {font-size: var(--size-2xl); font-weight: 700;}
h2 {font-size: var(--size-xl); font-weight: 700;}
h3 {font-size: var(--size-l); font-weight: 700;}
h4 {font-size: var(--size-l);}
h5 {font-size: var(--size-l);}

p {line-height: var(--size-xl);}

ul, ol {
  margin: 0;
  padding: 0;

  list-style: none;
}
ul li, ol li {
  display: inline-block;
}

a {
  display: inline-block;

  text-decoration: none;
  color: inherit;

  cursor: pointer;

  -webkit-user-select: none;
  -webkit-user-drag: none;
  -webkit-app-region: no-drag;
  user-select: none;
  user-drag: none;
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
}
p a {
  text-decoration: underline dotted;

  font-weight: 700;
}
a:hover {
  text-decoration: underline dotted;
}
a:focus, a:active {
  text-decoration: underline dotted;

  transition: all var(--speed-fast) ease-in;
}

img {
  -webkit-user-select: none;
  -webkit-user-drag: none;
  -webkit-app-region: no-drag;
  user-select: none;
  user-drag: none;
  pointer-events: none;

  max-width: 100%;
}

small {
  font-size: var(--size-s);
  line-height: var(--size-s);
}
hr {
  margin: var(--size-m) 0;
  border-color: var(--color-text);
}

input {
  -webkit-appearance: none;

  border-radius: 0;
}
input, input:before, input:after, label, label:before, label:after {
  transition: all var(--speed-fast) ease-in;
}

select,
input[type="text"],
input[type="number"],
input[type="search"],
input[type="password"],
input[type="date"],
input[type="datetime-local"],
input[type="email"] {
  width: 100%;
  height: var(--size-2xl);

  border: var(--size-3xs) solid var(--color-primary);
  padding: 0 var(--size-xs);

  background: rgba(255, 255, 255, .75);
}
input[type="text"]::placeholder,
input[type="number"]::placeholder,
input[type="search"]::placeholder,
input[type="password"]::placeholder,
input[type="date"]::placeholder,
input[type="datetime-local"]::placeholder,
input[type="email"]::placeholder {
  font-family: var(--font-default);
  font-stretch: condensed;
}

input[type="checkbox"],
input[type="radio"] {
  width: var(--size-m);
  height: var(--size-m);

  margin: 0;
  border: var(--size-3xs) solid var(--color-primary);

  vertical-align: middle;
}
input[type="radio"] {
  border-radius: 50%;
}
input[type="checkbox"]:checked,
input[type="radio"]:checked {
  background: var(--color-primary);
}

textarea {
  display: block;

  width: 100%;
  height: 100px;

  border: var(--size-3xs) solid var(--color-primary);
  padding: 6px 8px;

  font-family: var(--font-default);
}


button, .button {
  display: inline-grid;
  align-items: center;
  justify-items: center;

  min-width: var(--size-2xl);
  min-height: var(--size-2xl);

  border: 0;
  padding: 0;

  background: var(--color-primary);

  text-align: center;

  line-height: 1;
  font-weight: 700;
  font-size: var(--size-m);
  color: white;

  vertical-align: middle;

  cursor: pointer;
}
.button:hover, .button:focus, .button:active {
  text-decoration: none;
}
button.padded, .button.padded {
  padding: var(--size-xs);
}
button.info, .button.info {background: var(--color-info);}
button.success, .button.success {background: var(--color-success);}
button.warning, .button.warning {background: var(--color-warning);}
button.danger, .button.danger {background: var(--color-danger);}


:is(h1, h2, h3) + :is(table, .dataTables_wrapper) {
  margin: var(--size-m) 0 0;
}

.loader {
  display: none;
}