@charset "UTF-8";
/**
 * Design Tokens — Site 015: Logic Puzzle
 * Primary: #3b82f6  (bright blue — cerebral, precise)
 * Accent:  #8b5cf6  (soft violet — premium, intelligent)
 * Theme:   Slate blue + silver/pearl — high-end brain training aesthetic
 */

:root {
  /* ── Primary (bright blue) ── */
  --site-primary:        #3b82f6;
  --site-primary-hover:  #2563eb;
  --site-primary-dark:   #1e3a8a;
  --site-primary-light:  #eff6ff;
  --site-primary-border: #bfdbfe;

  /* ── Accent (soft violet) ── */
  --site-accent:         #8b5cf6;
  --site-accent-hover:   #7c3aed;
  --site-accent-dark:    #4c1d95;
  --site-accent-light:   #f5f3ff;
  --site-accent-border:  #ddd6fe;

  /* ── Text (slate) ── */
  --site-text:           #0f172a;
  --site-text-primary:   #0f172a;
  --site-text-secondary: #1e293b;
  --site-text-muted:     #64748b;
  --site-text-light:     #475569;
  --site-text-inverse:   #ffffff;

  /* ── Background ── */
  --site-background:     #ffffff;
  --site-surface:        #f8fafc;

  /* ── Border (slate/pearl) ── */
  --site-border:         #e2e8f0;
  --site-border-medium:  #cbd5e1;
  --site-border-dark:    #94a3b8;

  /* ── Semantic ── */
  --color-success:       #22c55e;
  --color-success-light: #f0fdf4;
  --color-success-text:  #166534;
  --color-error:         #ef4444;
  --color-error-light:   #fef2f2;
  --color-error-text:    #991b1b;
  --color-warning:       #f59e0b;
  --color-warning-light: #fffbeb;
  --color-warning-text:  #92400e;

  /* ── Logic Grid specific ── */
  --grid-cell-check:     #22c55e;
  --grid-cell-cross:     #ef4444;
  --grid-border-heavy:   #0f172a;
  --grid-border-light:   #cbd5e1;

  /* ── Radius (Soft personality — friendly but precise) ── */
  --radius-sm:      4px;
  --radius-md:      8px;
  --radius-lg:      12px;
  --radius-xl:      16px;
  --radius-card-lg: 14px;
  --radius-button:  8px;
  --radius-card:    14px;
  --radius-full:    9999px;
  --detail-border-radius: 14px;

  /* ── Shadows (blue-tinted, premium depth) ── */
  --shadow-sm:         0 1px 3px rgba(59, 130, 246, 0.06);
  --shadow-md:         0 4px 8px rgba(59, 130, 246, 0.09);
  --shadow-lg:         0 10px 20px rgba(59, 130, 246, 0.12);
  --shadow-card:       0 2px 8px rgba(59, 130, 246, 0.07), 0 1px 3px rgba(59, 130, 246, 0.04);
  --shadow-card-hover: 0 10px 24px rgba(59, 130, 246, 0.14), 0 4px 10px rgba(59, 130, 246, 0.08);
  --shadow-btn-hover:  0 4px 14px rgba(59, 130, 246, 0.22);
  --shadow-btn-active: 0 1px 4px rgba(59, 130, 246, 0.14);

  /* ── Typography ── */
  --font-heading: 'DM Sans', 'Inter', system-ui, sans-serif;
  --font-body:    system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono:    'Consolas', 'Monaco', 'Courier New', monospace;

  /* ── Transitions ── */
  --dur-fast:    150ms;
  --dur-normal:  250ms;
  --dur-slow:    400ms;
  --ease-std:    cubic-bezier(0.4, 0, 0.2, 1);

  /* ── Compound lift transition ── */
  --transition-lift: transform var(--dur-normal) var(--ease-std),
                     box-shadow var(--dur-normal) var(--ease-std);
}
