/* ============================================================
   YUCHAT · EFFECTS
   Shadows, blur, motion, glass recipe helpers.
   ============================================================ */

:root {
  /* Elevation shadows (solid surfaces) */
  --shadow-xs: 0 1px 2px rgba(26,16,48,0.06);
  --shadow-sm: 0 2px 8px rgba(26,16,48,0.08);
  --shadow-md: 0 8px 24px rgba(26,16,48,0.10);
  --shadow-lg: 0 20px 48px rgba(26,16,48,0.14);
  --shadow-glow: 0 12px 40px rgba(137,82,243,0.35);

  /* Blur scale */
  --blur-sm: 8px; /* @kind other */
  --blur-md: 18px; /* @kind other */
  --blur-lg: 32px; /* @kind other */

  /* Motion — Yuchat easing: smooth, slightly springy on enter */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1); /* @kind other */
  --ease-out:      cubic-bezier(0.16, 1, 0.3, 1); /* @kind other */
  --ease-spring:   cubic-bezier(0.34, 1.56, 0.64, 1); /* @kind other */
  --dur-fast:   140ms; /* @kind other */
  --dur-normal: 240ms; /* @kind other */
  --dur-slow:   420ms; /* @kind other */
  /* Focus ring */
  --ring: 0 0 0 3px color-mix(in srgb, var(--accent) 40%, transparent); /* @kind shadow */

  /* Border on glass panes */
  --glass-inset: inset 0 1px 0 var(--glass-hilite); /* @kind shadow */
}

[data-theme="dark"] {
  --shadow-xs: 0 1px 2px rgba(0,0,0,0.4);
  --shadow-sm: 0 2px 8px rgba(0,0,0,0.45);
  --shadow-md: 0 8px 24px rgba(0,0,0,0.5);
  --shadow-lg: 0 24px 56px rgba(0,0,0,0.6);
  --shadow-glow: 0 12px 44px rgba(164,123,255,0.5);
}

/* ---- Utility class: the canonical Yuchat glass pane ----
   Use directly, or copy these declarations into a component. */
.yu-glass {
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  border-radius: var(--radius-lg);
  box-shadow: var(--glass-shadow), var(--glass-inset);
  backdrop-filter: blur(var(--glass-blur)) saturate(140%);
  -webkit-backdrop-filter: blur(var(--glass-blur)) saturate(140%);
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --dur-fast: 0ms; /* @kind other */
    --dur-normal: 0ms; /* @kind other */
    --dur-slow: 0ms; /* @kind other */
  }
}
