/* ============================================================
   OPALUS — Spacing, radii, shadows, layout
   ============================================================ */

:root {
  /* spacing scale (4px base) */
  --space-0:  0;
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;

  /* radii — the product leans on generous rounding */
  --radius-xs:   6px;
  --radius-sm:   8px;
  --radius-md:   10px;  /* inputs, small buttons */
  --radius-lg:   15px;  /* cards */
  --radius-xl:   20px;  /* panels, modals */
  --radius-2xl:  28px;
  --radius-pill: 999px; /* badges, chips */

  /* borders */
  --border-width: 1px;
  --border-hair:  1px;

  /* shadows — soft, low-contrast, warm-neutral */
  --shadow-xs:   0 1px 2px rgba(0,0,0,0.04);
  --shadow-sm:   0 2px 8px rgba(0,0,0,0.05);
  --shadow-md:   0 4px 24px rgba(0,0,0,0.05);
  --shadow-lg:   0 12px 40px rgba(16,24,56,0.10);
  --shadow-card: 0 4px 24px rgba(0,0,0,0.05);
  --shadow-pop:  0 8px 30px rgba(16,24,56,0.14);

  /* focus */
  --ring-width: 3px;

  /* layout */
  --container:    1280px;
  --container-wide: 1440px;
  --nav-h:        88px;
  --sidebar-w:    260px;

  /* motion */
  --ease-out:   cubic-bezier(0.22, 1, 0.36, 1);   /* @kind other */
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);  /* @kind other */
  --dur-fast:   140ms; /* @kind other */
  --dur-base:   220ms; /* @kind other */
  --dur-slow:   360ms; /* @kind other */
}
