/* ============================================================================
 * lumen-tokens.css — design tokens per the AI brief 2026-06-15 23:30.
 *
 *  Spacing scale (rem, 1rem = 16px)
 *  Border radii
 *  Shadows (sm/md/lg/glow)
 *  Easing + duration tokens (1 bezier, 4 durations)
 *  Type-family handles (serif, sans, mono)
 *
 *  Loads BEFORE every other lumen-* layer.
 * ========================================================================== */

:root {
    /* Spacing — rhythm of the manuscript leaf */
    --s-1: 0.25rem;
    --s-2: 0.5rem;
    --s-3: 0.75rem;
    --s-4: 1rem;
    --s-5: 1.5rem;
    --s-6: 2rem;
    --s-7: 3rem;
    --s-8: 4rem;
    --s-9: 6rem;

    /* Border radii */
    --r-sm: 4px;
    --r-md: 8px;
    --r-lg: 16px;
    --r-pill: 999px;

    /* Shadows — gentle elevation */
    --sh-sm:   0 1px 2px rgba(13, 17, 23, 0.05), 0 2px 8px -2px rgba(13, 17, 23, 0.08);
    --sh-md:   0 4px 12px rgba(13, 17, 23, 0.08), 0 10px 24px -6px rgba(13, 17, 23, 0.14);
    --sh-lg:   0 12px 24px rgba(13, 17, 23, 0.12), 0 28px 48px -12px rgba(13, 17, 23, 0.24);
    --sh-glow: 0 0 0 0 transparent, 0 0 24px var(--page-accent, var(--jp-gold-300));

    /* Motion — one curve, four durations */
    --cb-ease:       cubic-bezier(0.2, 0.9, 0.4, 1.1);
    --dur-instant:   100ms;
    --dur-fast:      200ms;
    --dur-slow:      400ms;
    --dur-deliberate: 700ms;

    /* Type families */
    --ff-serif: 'Cormorant Garamond', 'EB Garamond', Georgia, serif;
    --ff-sans:  'Inter', -apple-system, BlinkMacSystemFont, 'Helvetica Neue', sans-serif;
    --ff-mono:  'JetBrains Mono', 'SF Mono', Consolas, monospace;

    /* Type sizes (mapped to spec) */
    --fs-h1:    4rem;
    --fs-h2:    2.5rem;
    --fs-h3:    1.5rem;
    --fs-lede:  1.25rem;
    --fs-body:  1rem;
    --fs-small: 0.875rem;
    --fs-code:  0.9rem;

    /* Default page accent — overridden per page */
    --page-accent: var(--jp-gold-300, #E8C067);
}

/* Responsive H1: stays grand, scales down on small screens */
@media (max-width: 720px) {
    :root {
        --fs-h1: clamp(2.4rem, 9vw, 3.2rem);
        --fs-h2: clamp(1.8rem, 5vw, 2.2rem);
    }
}
