:root {
  --color-brand-navy: #1a1d29;
  --color-brand-accent: #7ec8e3;

  /* Keep the compiled utility names stable while moving to the final brand system. */
  --color-navy-950: var(--color-brand-navy);
  --color-navy-900: #202432;
  --color-navy-800: #2d3242;
  --color-navy-700: #3a4052;
  --color-navy-600: #51586c;
  --color-rust-600: var(--color-brand-accent);
  --color-rust-500: var(--color-brand-accent);
  --color-rust-400: var(--color-brand-accent);
  --color-rust-300: var(--color-brand-accent);
}

::selection {
  background-color: var(--color-brand-accent);
  color: var(--color-brand-navy);
}

/* Light-blue fills require navy text for readable contrast. */
.bg-rust-400,
.bg-rust-500,
.bg-rust-600 {
  color: var(--color-brand-navy);
}

/* Paper cards cannot support light-blue body text at accessible contrast. */
.document .text-rust-300,
.document .text-rust-400,
.document .text-rust-600,
.document .stamp {
  color: var(--color-brand-navy);
}

.document .text-rust-300,
.document .text-rust-400,
.document .text-rust-600 {
  text-decoration-color: var(--color-brand-accent);
}

@media (hover: hover) {
  .hover\:bg-rust-500:hover,
  .group:hover .group-hover\:text-paper {
    color: var(--color-brand-navy);
  }

  .hover\:bg-rust-500:hover {
    box-shadow: inset 0 0 0 2px var(--color-brand-navy);
  }
}

