:root {
  --sai-bg: #101010;
  --sai-bg-2: #141414;
  --sai-page-bg: #101010;
  --sai-text: #ffffff;
  --sai-muted: rgba(255, 255, 255, .68);
  --sai-soft: rgba(255, 255, 255, .48);
  --sai-line: rgba(255, 255, 255, .08);
  --sai-input: rgba(255, 255, 255, .065);
  --sai-card: rgba(255, 255, 255, .045);
  --sai-card-2: rgba(255, 255, 255, .075);
  --sai-card-3: rgba(255, 255, 255, .105);
  --sai-modal: #141414;
  --sai-orange: rgba(255, 153, 0, .86);
  --sai-green: #28e98c;
  --sai-blue: #5aa7ff;
  --sai-red: #ff5b6e;
  --sai-radius: 10px;
  --sai-grid-line: rgba(255, 255, 255, .02);
  --sai-grid-size: 40px;
  --sai-glass-tint: rgba(255, 255, 255, .06);
  --sai-glass-tint-soft: rgba(255, 255, 255, .032);
  --sai-glass-bg: linear-gradient(180deg, var(--sai-glass-tint), var(--sai-glass-tint-soft));
  --sai-glass-blur: blur(24px) saturate(155%);
}

* {
  box-sizing: border-box;
}

html {
  min-height: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100vh;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--sai-text);
  background-color: var(--sai-page-bg);
  background-image:
    linear-gradient(var(--sai-grid-line) 1px, transparent 1px),
    linear-gradient(90deg, var(--sai-grid-line) 1px, transparent 1px);
  background-size: var(--sai-grid-size) var(--sai-grid-size);
  background-position: center top;
  background-attachment: fixed;
}

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

button,
input,
select {
  font: inherit;
}

button {
  border: 0;
  cursor: pointer;
}

button:disabled {
  opacity: .55;
  cursor: not-allowed;
}

[hidden] {
  display: none !important;
}

@keyframes saiSpin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes saiFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
