:root {
  --terral-deep: #21162F;
  --terral-violet: #6041A5;
  --terral-signal: #A8F05A;
  --terral-ground: #768D69;
  --terral-bone: #F1F0E7;
  --terral-stone: #A7A59D;
  --terral-ink: #14111A;
  --terral-alert: #E66A73;

  --terral-radius-sm: 8px;
  --terral-radius-md: 14px;
  --terral-radius-lg: 22px;

  --terral-shadow-dark: 0 18px 50px rgba(11, 8, 19, .28);
  --terral-shadow-light: 0 18px 50px rgba(33, 22, 47, .10);

  --terral-font-ui: "Manrope", "Inter", Arial, sans-serif;
  --terral-font-data: "IBM Plex Mono", "SFMono-Regular", Consolas, monospace;
}

[data-theme="dark"] {
  --bg: var(--terral-deep);
  --surface: #181421;
  --surface-2: #241B31;
  --text: #F8F7F4;
  --text-muted: #BDB8C5;
  --border: rgba(255,255,255,.09);
  --map-overlay: rgba(96,65,165,.22);
}

[data-theme="light"] {
  --bg: var(--terral-bone);
  --surface: #FCFBF8;
  --surface-2: #F4F1EA;
  --text: var(--terral-deep);
  --text-muted: #6C6872;
  --border: rgba(33,22,47,.10);
  --map-overlay: rgba(118,141,105,.12);
}

.terral-signal { color: var(--terral-signal); }
.terral-data { font-family: var(--terral-font-data); letter-spacing: .04em; }
