/*
 * Icelandro — design tokens.
 * Single source of truth for colors, type, space, motion. Override via the customizer
 * in a later pass.
 */

:root {
    /* Colors — monochrome with one sage accent */
    --c-fg: #000;
    --c-bg: #fff;
    --c-muted: #313131;
    --c-mute-2: #555;
    --c-surface: #f4f4f4;
    --c-surface-2: #f9f9f9;
    --c-border: #e0e0e0;
    --c-border-strong: #ccc;
    --c-accent: #abb295;
    --c-danger: #c21616;
    --c-success: #1a7a3c;

    /* Sharp corners — hard rule */
    --radius: 0;

    /* Spacing scale (use var(--s-4) etc.) */
    --s-1: 4px;
    --s-2: 8px;
    --s-3: 12px;
    --s-4: 16px;
    --s-5: 24px;
    --s-6: 32px;
    --s-7: 48px;
    --s-8: 64px;
    --s-9: 96px;

    /* Typography */
    --font-sans: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    --font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, monospace;

    --fs-xs:   clamp(11px, 0.75rem, 12px);
    --fs-sm:   clamp(12px, 0.8125rem, 13px);
    --fs-base: clamp(14px, 0.9375rem, 15px);
    --fs-md:   clamp(15px, 1rem, 16px);
    --fs-lg:   clamp(17px, 1.125rem, 18px);
    --fs-xl:   clamp(20px, 1.375rem, 22px);
    --fs-2xl:  clamp(24px, 2vw, 28px);
    --fs-3xl:  clamp(28px, 2.6vw, 36px);
    --fs-4xl:  clamp(36px, 4vw, 56px);
    --fs-5xl:  clamp(44px, 6vw, 84px);

    --lh-tight: 1.15;
    --lh-snug:  1.3;
    --lh-base:  1.55;

    --fw-regular: 400;
    --fw-medium:  500;
    --fw-semibold: 600;
    --fw-bold:    700;

    /* Layout — near-full-width containers, soft cap at 2400px so ultrawides
       don't get absurd line lengths. */
    --container-max: 2400px;
    --container-pad: clamp(16px, 1.6vw, 40px);

    /* Header */
    --header-h: 64px;
    --header-h-lg: 84px;

    /* Z-layers */
    --z-header: 40;
    --z-menu:   50;
    --z-overlay: 60;
    --z-modal:  70;

    /* Motion */
    --ease-out: cubic-bezier(.22,.61,.36,1);
    --ease-in:  cubic-bezier(.55,.06,.68,.19);
    --t-fast: 120ms;
    --t-base: 200ms;
    --t-slow: 320ms;

    /* Shadows — used sparingly, monochrome */
    --shadow-1: 0 1px 0 var(--c-border);
    --shadow-2: 0 8px 24px rgba(0,0,0,.08);
}

@media (prefers-reduced-motion: reduce) {
    :root { --t-fast: 0ms; --t-base: 0ms; --t-slow: 0ms; }
}
