/*
 * Fairfield UI foundations
 *
 * Semantic tokens are the public contract between components and responsive
 * layouts. Components should consume these values instead of introducing
 * device-specific colors, spacing, typography, or status meaning.
 */
:root {
    color-scheme: light;

    --ff-font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "Segoe UI", system-ui, sans-serif;

    --ff-color-canvas: #f5f7fa;
    --ff-color-surface: #ffffff;
    --ff-color-surface-muted: #f2f4f7;
    --ff-color-text: #1d1d1f;
    --ff-color-text-muted: #667085;
    --ff-color-border: #d9e0ea;
    --ff-color-border-strong: #aeb9c8;
    --ff-color-action: #0071e3;
    --ff-color-action-hover: #005bb5;
    --ff-color-action-soft: #eaf3ff;
    --ff-color-brand: #00095b;
    --ff-color-price: #15803d;
    --ff-color-success: #16723a;
    --ff-color-danger: #dc2626;
    --ff-color-warning: #c2410c;

    /* Exact DriveCentric timeline marker colors and note surface. */
    --ff-color-activity-timeline: #969696;
    --ff-color-activity-text: #4182d7;
    --ff-color-activity-email: #19b4ff;
    --ff-color-activity-call: #2ecc71;
    --ff-color-activity-note: #f5cd19;
    --ff-color-activity-task: #969696;
    --ff-color-activity-appointment: #50326e;
    --ff-color-activity-deal: #969696;
    --ff-color-activity-service: #2c3e50;
    --ff-color-activity-card: #ffffff;
    --ff-color-activity-note-card: #fff5d7;

    --ff-space-1: 4px;
    --ff-space-2: 8px;
    --ff-space-3: 12px;
    --ff-space-4: 16px;
    --ff-space-5: 24px;
    --ff-space-6: 32px;

    --ff-radius-sm: 6px;
    --ff-radius-md: 8px;
    --ff-radius-lg: 14px;
    --ff-radius-pill: 999px;

    --ff-control-min-height: 44px;
    --ff-shadow-card: 0 1px 2px rgba(15, 28, 50, 0.06), 0 7px 22px rgba(15, 28, 50, 0.05);
    --ff-shadow-raised: 0 14px 38px rgba(15, 23, 42, 0.14);
    --ff-focus-ring: 0 0 0 3px rgba(0, 113, 227, 0.24);
    --ff-ease-standard: cubic-bezier(0.2, 0, 0, 1);
    --ff-duration-fast: 120ms;
    --ff-duration-normal: 180ms;
}

html,
body,
button,
input,
select,
textarea {
    font-family: var(--ff-font-sans);
}

@media (prefers-reduced-motion: reduce) {
    :root {
        --ff-duration-fast: 1ms;
        --ff-duration-normal: 1ms;
    }
}
