/* Shared ERS primitives: Portal and IA use the same quiet visual language. */
:root {
  --ers-ink: #282522;
  --ers-text: #453e38;
  --ers-muted: #756d65;
  --ers-orange: #a9400b;
  --ers-orange-soft: #fff0e4;
  --ers-primary: #c45112;
  --ers-primary-strong: #a9400b;
  --ers-on-primary: #ffffff;
  --ers-secondary: #265d4f;
  --ers-surface: #ffffff;
  --ers-ground: #faf8f5;
  --ers-border: #e6dfd8;
  --ers-radius: 14px;
  --ers-motion: 180ms;
  --ers-ease: cubic-bezier(.2, .7, .2, 1);
}
:root[data-theme="dark"] {
  --ers-ink: #f2eeea;
  --ers-text: #dfd8d1;
  --ers-muted: #b9b1aa;
  --ers-orange: #ffad75;
  --ers-orange-soft: #493020;
  --ers-secondary: #8ebaa7;
  --ers-surface: #252321;
  --ers-ground: #191817;
  --ers-border: #45403b;
}
@view-transition { navigation: auto; }
::view-transition-old(root) { animation: ers-fade-out 120ms ease both; }
::view-transition-new(root) { animation: ers-fade-in 180ms ease both; }
@keyframes ers-fade-out { to { opacity: 0; } }
@keyframes ers-fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes ers-page-in {
  from { opacity: 0; transform: translateY(5px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  @view-transition { navigation: none; }
  ::view-transition-old(root), ::view-transition-new(root) { animation: none; }
}
