/* Light analytical theme — Linear/Vercel inspired */
:root {
  --bg: #fbfbfa;
  --surface: #ffffff;
  --surface-2: #f6f6f4;
  --surface-3: #efefec;
  --hover: #f1f1ee;

  --border: #e8e7e3;
  --border-strong: #d8d7d2;

  --text: #18181b;
  --text-2: #52525b;
  --text-3: #8a8a91;
  --text-4: #b5b5b8;

  --accent: oklch(58% 0.16 252);
  --accent-soft: oklch(94% 0.04 252);

  /* Broad RFM segments — keys match BroadSegment.id from the server.
     Order best→worst: champions, growing, newbies,
     sleeping_value, sleeping_medium, lost_value, writeoff. */
  --seg-champions: oklch(70% 0.14 90);
  --seg-champions-soft: oklch(96% 0.06 90);
  --seg-growing: oklch(62% 0.14 152);
  --seg-growing-soft: oklch(95% 0.05 152);
  --seg-newbies: oklch(64% 0.13 178);
  --seg-newbies-soft: oklch(95% 0.04 178);
  --seg-sleeping_value: oklch(70% 0.13 70);
  --seg-sleeping_value-soft: oklch(95% 0.05 80);
  --seg-sleeping_medium: oklch(64% 0.13 50);
  --seg-sleeping_medium-soft: oklch(95% 0.05 50);
  --seg-lost_value: oklch(58% 0.16 18);
  --seg-lost_value-soft: oklch(95% 0.05 18);
  --seg-writeoff: oklch(60% 0.04 250);
  --seg-writeoff-soft: oklch(95% 0.02 250);

  --good: oklch(58% 0.14 152);
  --warn: oklch(70% 0.14 70);
  --bad: oklch(58% 0.16 18);

  --font-sans: 'Inter Tight', 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
  --font-mono: 'JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;

  --r-sm: 6px;
  --r-md: 10px;
  --r-lg: 14px;
  --shadow-1: 0 1px 0 rgba(0,0,0,0.02), 0 1px 2px rgba(0,0,0,0.04);
  --shadow-2: 0 1px 0 rgba(0,0,0,0.02), 0 4px 10px rgba(0,0,0,0.04);
}

.seg-champions       { --c: var(--seg-champions);       --c-soft: var(--seg-champions-soft); }
.seg-growing         { --c: var(--seg-growing);         --c-soft: var(--seg-growing-soft); }
.seg-newbies         { --c: var(--seg-newbies);         --c-soft: var(--seg-newbies-soft); }
.seg-sleeping_value  { --c: var(--seg-sleeping_value);  --c-soft: var(--seg-sleeping_value-soft); }
.seg-sleeping_medium { --c: var(--seg-sleeping_medium); --c-soft: var(--seg-sleeping_medium-soft); }
.seg-lost_value      { --c: var(--seg-lost_value);      --c-soft: var(--seg-lost_value-soft); }
.seg-writeoff        { --c: var(--seg-writeoff);        --c-soft: var(--seg-writeoff-soft); }

* { box-sizing: border-box; }

html, body, #root {
  height: 100%;
}

body {
  margin: 0;
  font-family: var(--font-sans);
  background: var(--bg);
  color: var(--text);
  font-feature-settings: 'cv11', 'ss01', 'ss03';
  -webkit-font-smoothing: antialiased;
  font-size: 14px;
  line-height: 1.45;
}

button { font-family: inherit; }

.mono { font-family: var(--font-mono); font-feature-settings: 'zero', 'ss03'; }

.boot {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-3);
  font-size: 13px;
}
