:root {
  /* Color Palette - White x Mint x Gold */
  /* Typography / Ink */
  --color-text-main:    #111816; /* Deepest ink black with a hint of green */
  --color-text-muted:   #5C6B66; /* Sophisticated gray */
  --color-text-light:   #8E9E98;
  
  /* Mint Accents */
  --color-mint-pale:    rgba(165, 235, 213, 0.15); /* Very subtle background highlight */
  --color-mint:         #A5EBD5; /* For the ambient fluid orb */
  --color-mint-dark:    #2A6B53; /* Strong solid mint for lines and active states */
  
  /* Gold (Yuzu) Accents */
  --color-gold:         #B89A53; /* Elegant, slightly muted gold */
  --color-gold-light:   rgba(184, 154, 83, 0.12); /* Gold background for badges/pills */
  --color-citrus:       #F9EDD2; /* For the ambient fluid orb */
  
  /* Backgrounds & Glass Surfaces */
  --color-bg-base:      #FAFCFB; /* Off-white for body to allow pure white to pop */
  --color-bg-paper:     #FFFFFF; /* Pure white for reading areas */
  --color-glass-pane:   rgba(255, 255, 255, 0.65); /* Header/Navigation only */
  
  /* Borders (Hairlines) */
  --border-hairline:    rgba(17, 24, 22, 0.12); /* Crisp, very thin newspaper dividing line */
  --border-glass:       rgba(255, 255, 255, 0.8); /* Edge for glass header */
  
  /* Modern Typography - Higher contrast in sizes */
  --font-sans:   'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', sans-serif;
  --font-serif:  'Times New Roman', 'Hiragino Mincho ProN', serif;
  
  /* Spacing Grid */
  --space-2xs: 0.25rem;
  --space-xs:  0.5rem;
  --space-sm:  1rem;
  --space-md:  1.5rem;
  --space-lg:  2.5rem;
  --space-xl:  4rem;
  --space-2xl: 6rem;
  
  /* Layout limits */
  --max-width-article: 46rem;   /* ~736px - optimal for reading */
}

/* Reset */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-sans);
  min-height: 100vh;
  background-color: var(--color-bg-base);
  color: var(--color-text-main);
  line-height: 1.7;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  overflow-x: hidden;
  position: relative;
}

/* Smooth selection */
::selection {
  background: var(--color-mint-dark);
  color: #fff;
}

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