/* Wake base — body ground + keyframes + focus ring. */
* { box-sizing: border-box; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--font-ui); font-size: var(--fs-md); -webkit-font-smoothing: antialiased; }
a { color: var(--text-orange); text-decoration: none; }
a:hover { color: var(--text-bright); }
:focus-visible { outline: none; box-shadow: var(--ring); }
@keyframes pop-enter { from { opacity: 0; transform: translateY(4px) scale(0.98); } to { opacity: 1; transform: none; } }
@keyframes fade-up { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: none; } }
@keyframes fade-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes pulse-dot { 0%, 100% { opacity: 1; } 50% { opacity: 0.3; } }
@keyframes dots { 0% { content: ''; } 25% { content: '.'; } 50% { content: '..'; } 75% { content: '...'; } 100% { content: ''; } }
@media (prefers-reduced-motion: reduce) {
  @keyframes pop-enter { from { opacity: 1; transform: none; } to { opacity: 1; transform: none; } }
  @keyframes fade-up { from { opacity: 1; transform: none; } to { opacity: 1; transform: none; } }
  @keyframes fade-in { from { opacity: 1; } to { opacity: 1; } }
}
