* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  background: var(--color-soft);
}

body {
  min-height: 100vh;
  margin: 0;
  overflow-x: hidden;
  color: var(--color-text);
  font-family: var(--font-sans);
  font-size: 14px;
  letter-spacing: 0;
  background:
    radial-gradient(circle at 9% 88%, rgba(24, 194, 198, 0.10), transparent 210px),
    radial-gradient(circle at 88% 8%, rgba(13, 110, 253, 0.08), transparent 250px),
    linear-gradient(180deg, #f7fbff 0%, #f4f9ff 100%);
}

:root[data-theme="dark"] body {
  background:
    radial-gradient(circle at 9% 88%, rgba(24, 194, 198, 0.12), transparent 250px),
    radial-gradient(circle at 88% 8%, rgba(91, 157, 255, 0.12), transparent 280px),
    linear-gradient(180deg, #07111f 0%, #0a1424 100%);
}

button,
input,
select,
textarea {
  font: inherit;
}

button {
  cursor: pointer;
}

button:disabled {
  cursor: not-allowed;
  opacity: 0.65;
}

a {
  color: inherit;
  text-decoration: none;
}

.app-root {
  min-height: 100vh;
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}
