:root {
  color-scheme: dark;
}
body {
  margin: 0;
  background:
    radial-gradient(circle at 15% 10%, rgba(34,211,238,0.09), transparent 40%),
    radial-gradient(circle at 85% 90%, rgba(16,185,129,0.06), transparent 45%),
    #0b0f14;
  font-family: 'IBM Plex Mono', monospace;
}
::selection { background: #22d3ee; color: #0b0f14; }
textarea::-webkit-scrollbar, pre::-webkit-scrollbar { width: 8px; height: 8px; }
textarea::-webkit-scrollbar-thumb, pre::-webkit-scrollbar-thumb {
  background: #1f2937; border-radius: 4px;
}
textarea::-webkit-scrollbar-track, pre::-webkit-scrollbar-track { background: transparent; }
button:disabled { opacity: 0.4; cursor: not-allowed; }

@keyframes toastIn {
  from { opacity: 0; transform: translate(-50%, -12px); }
  to   { opacity: 1; transform: translate(-50%, 0); }
}
.toast-in { animation: toastIn 0.25s ease-out; }

@keyframes countPop {
  0%   { transform: scale(1); }
  40%  { transform: scale(1.18); }
  100% { transform: scale(1); }
}
.count-pop { animation: countPop 0.3s ease-out; display: inline-block; }