html, body {
  width: 100%;
  height: 100%;
  margin: 0;
}

body {
  font-family: system-ui, -apple-system, sans-serif;
  background: #f5f6f8;

  display: flex;
  justify-content: center;
  align-items: center;
}

#SISOForm {
  width: min(95vw, calc(50vh * 4 / 3));
  height: min(50vh, calc(95vw * 3 / 4));

  aspect-ratio: 4 / 3;

  --h: min(50vh, calc(95vw * 3 / 4));

  background: #fff;

  border-radius: calc(var(--h) * 0.04);

  box-shadow:
    0 calc(var(--h) * 0.04)
    calc(var(--h) * 0.1)
    rgba(0, 0, 0, 0.12);

  display: flex;
  flex-direction: column;
  justify-content: center;

  box-sizing: border-box;

  padding: calc(var(--h) * 0.08);
  gap: calc(var(--h) * 0.08);
}

#SISOForm div {
  display: flex;
  flex-direction: column;
  gap: calc(var(--h) * 0.01);

  height: calc(var(--h) * 0.2);
}

label {
  font-size: calc(var(--h) * 0.05);
  color: #444;
}

input {
  width: 100%;
  height: calc(var(--h) * 0.12);

  font-size: calc(var(--h) * 0.05);

  padding: 0 calc(var(--h) * 0.06);

  border: calc(var(--h) * 0.004) solid #ddd;
  border-radius: calc(var(--h) * 0.024);

  box-sizing: border-box;
}

input:focus {
  border-color: #4a90e2;
  outline: none;
  box-shadow: 0 0 0 calc(var(--h) * 0.01)
    rgba(74,144,226,0.15);
}

button {
  width: 100%;
  height: calc(var(--h) * 0.16);

  font-size: calc(var(--h) * 0.056);
  font-weight: 600;

  border: none;
  border-radius: calc(var(--h) * 0.03);

  background: #4a90e2;
  color: white;
}

button:active {
  transform: scale(0.98);
}