/* Overminds effects — radii, spacing rhythm, motion, glow, texture.
   Buttons are full pills; cards are square-ish (small radius or none). */
:root {
  /* ---- Radii ---- */
  --radius-pill: 9999px;   /* buttons, chips */
  --radius-sm: 4px;        /* small controls */
  --radius-none: 0px;      /* cards, section blocks are hard-edged */

  /* ---- Spacing scale (Tailwind-derived, px) ---- */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 140px;   /* section top padding (pt-[140px]) */

  /* ---- Motion ---- */
  --ease-out-expo: cubic-bezier(0.16, 1, 0.3, 1); /* @kind other */
  --ease-out-soft: cubic-bezier(0.2, 0.85, 0.2, 1); /* @kind other */
  --dur-fast: 0.2s;    /* @kind other */
  --dur-mid: 0.35s;    /* @kind other */
  --dur-slow: 0.45s;   /* @kind other */
  --dur-reveal: 0.5s;  /* @kind other */

  /* ---- Glow (red) ---- */
  --glow-red: 0 0 40px rgba(242, 45, 54, 0.15), 0 0 80px rgba(242, 45, 54, 0.05);

  /* ---- Noise texture (fractal SVG, ~3% opacity over surfaces) ---- */
  --noise-url: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.03'/%3E%3C/svg%3E"); /* @kind other */
}

@keyframes om-blink { 0%, 100% { opacity: 1; } 50% { opacity: 0.25; } }
@keyframes om-pulse-glow { 0%, 100% { opacity: 0.4; } 50% { opacity: 1; } }
@keyframes om-flicker { 0%, 100% { opacity: 1; } 50% { opacity: 0.97; } 75% { opacity: 1; } 92% { opacity: 0.98; } }
