:root {
  color-scheme: light;
  --ncl-color-ink-950: #091e34;
  --ncl-color-ink-900: #0a3350;
  --ncl-color-primary-700: #0f4462;
  --ncl-color-primary-100: #e3eef5;
  --ncl-color-accent-400: #bbe580;
  --ncl-color-accent-600: #7db83a;
  --ncl-color-surface-0: #ffffff;
  --ncl-color-surface-50: #f4f6f9;
  --ncl-color-surface-100: #e4e9ef;
  --ncl-color-surface-200: #c6cfd9;
  --ncl-color-text-base: #2b3440;
  --ncl-color-text-muted: #6b7784;
  --ncl-color-border-strong: rgba(9, 30, 52, 0.14);
  --ncl-radius-sm: 10px;
  --ncl-radius-md: 14px;
  --ncl-radius-lg: 24px;
  --ncl-space-1: 4px;
  --ncl-space-2: 8px;
  --ncl-space-3: 12px;
  --ncl-space-4: 16px;
  --ncl-space-5: 20px;
  --ncl-space-6: 24px;
  --ncl-space-7: 32px;
  --ncl-space-8: 40px;
  --ncl-space-9: 48px;
  --ncl-shadow-card: 0 18px 44px rgba(9, 30, 52, 0.1), 0 4px 12px rgba(9, 30, 52, 0.08);
  --ncl-font-sans: "Aptos", "Segoe UI", "Helvetica Neue", Arial, sans-serif;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  min-height: 100%;
}

body {
  background:
    radial-gradient(circle at top left, rgba(187, 229, 128, 0.28), transparent 28%),
    radial-gradient(circle at right 15%, rgba(15, 68, 98, 0.16), transparent 24%),
    linear-gradient(180deg, #fbfcfe 0%, var(--ncl-color-surface-50) 100%);
  color: var(--ncl-color-text-base);
  font-family: var(--ncl-font-sans);
  line-height: 1.5;
}

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

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

p,
ul {
  margin: 0;
}

h1,
h2,
h3,
h4 {
  margin: 0;
  color: var(--ncl-color-ink-950);
}