/* inter-regular - latin */
/* https://gwfh.mranftl.com/fonts/inter?subsets=latin */

:root {
  --border-radius: 12px;
  --max-width: 615px;

  --fg-color: #0e0e0e;
  --bg-color: #ececea;
  --neutral-text-color: #fff;
  --disabled-color: #555;
  --link-color: #01557e;
  --err-color: #f53030;
}

@media (prefers-color-scheme: dark) {
  :root {
    --fg-color: #ffffff;
    --bg-color: #0e0e0e;
    --disabled-color: #999;
    --link-color: #0f8fee;
    --err-color: #e52020;
  }
}

* {
  box-sizing: border-box;
  font-family: inherit;
}

body {
  font-family: system-ui;
  color: var(--fg-color);
  background: var(--bg-color);
  margin: auto;
  max-width: var(--max-width);
  padding: 15px;
}

h1 {
  font-size: 20pt;
}

p {
  margin-block-end: 20px;
  font-size: 12pt;
}

a {
  color: var(--link-color);
  text-decoration: none;
}

input {
  border-radius: 3px;
  background: transparent;
  min-height: 30px;
  padding-left: 5px;
  caret-color: var(--fg-color);
  color: var(--fg-color);
  display: block;
}

.textInput {
  border: solid 1px var(--fg-color);
  width: 100%;
}

.textInput::placeholder {
  color: var(--fg-color);
  opacity: 0.6;
}

.submitButton {
  border: none;
  background-color: var(--link-color);
  color: var(--neutral-text-color);
  transition: background-color 0.25s;
  border-radius: 5px;
  padding: 10px;
  font-size: 15px;
  font-weight: 600;
}

.submitButton:disabled {
  background-color: var(--disabled-color);
}
form label {
  margin-block-end: 5px;
  display: block;
}

input::file-selector-button {
  background: transparent;
  border: solid 1px var(--fg-color);
  color: var(--fg-color);
  border-radius: 3px;
  padding-inline: 5px;
  padding-block: 3px;
}

.showValidation:invalid {
  border-color: var(--err-color);
}

.errText {
  display: none;
}

.showValidation:invalid + .errText {
  display: initial;
}

header {
  display: flex;
  justify-content: space-between;
}

.flag {
  margin: auto 0 auto 0;
}
