﻿:root {
    /* --- Spacing (tighter default feel) --- */
    --fme-space-1: 4px;
    --fme-space-2: 8px;
    --fme-space-3: 10px;
    --fme-space-4: 14px;
    --fme-space-5: 18px;
    --fme-space-6: 22px;
    --fme-space-7: 28px;
    --fme-space-8: 36px;
    --fme-space-9: 44px;
    --fme-space-10: 52px;
    --fme-space-11: 60px;
    /* --- Layout sizing (terminal shell) --- */
    --fme-shell-sidebar-w: 200px;
    --fme-shell-topbar-h: 56px;
    --fme-control-h: 36px;
    --fme-control-h-sm: 34px;
    --fme-navitem-h: 40px;
    /* --- Typography (terminal-ish) --- */
    --fme-font-sans: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
    --fme-font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --fme-tracking-wide: .08em;
    --fme-text-xs: 12px;
    --fme-text-sm: 13px; /* denser */
    --fme-text-md: 15px;
    --fme-text-base: var(--fme-text-md);
    --fme-text-lg: 17px;
    --fme-text-xl: 20px;
    --fme-h1: 26px;
    --fme-h2: 20px;
    --fme-h3: 16px;
    --fme-leading-tight: 1.15;
    --fme-leading-normal: 1.4;
    --fme-leading-relaxed: 1.55;
    --fme-weight-normal: 400;
    --fme-weight-medium: 500;
    --fme-weight-semibold: 600;
    --fme-weight-bold: 700;
    /* --- Radius (more “panel” than “card”) --- */
    --fme-radius-xs: 3px;
    --fme-radius-sm: 5px;
    --fme-radius-md: 8px;
    --fme-radius-lg: 12px;
    --fme-radius-pill: 999px;
    /* --- Shadows (subtle, flatter terminal) --- */
    --fme-shadow-sm: 0 1px 0 rgba(0,0,0,.35);
    --fme-shadow-md: 0 10px 26px rgba(0,0,0,.35);
    --fme-shadow-lg: 0 20px 60px rgba(0,0,0,.45);
    /* --- Focus ring --- */
    --fme-focus-width: 2px;
    --fme-focus-offset: 2px;
    /* --- Core surfaces (terminal dark) --- */
    --fme-bg: #070a12; /* near-black navy */
    --fme-surface-1: #0b1020; /* panels */
    --fme-surface-2: #0e1730; /* elevated */
    --fme-border: #1a2a4a; /* crisp border */
    /* --- Text --- */
    --fme-text: #e6f0ff;
    --fme-text-muted: #a2b3d3;
    --fme-text-faint: #6f86ad;
    /*
      Brand + states (neon but controlled)
      Pick ONE primary accent (cyan) and let others be semantic only.
    */
    --fme-brand: #22d3ee; /* neon cyan */
    --fme-brand-strong: #06b6d4;
    --fme-success: #2cff9a; /* terminal green */
    --fme-warning: #ffd166; /* amber */
    --fme-danger: #ff3b8d; /* magenta-ish */
    --fme-info: #7aa8ff; /* cool blue */
    --fme-disabled-opacity: .55;
    /* Alias */
    --fme-accent: var(--fme-brand);
    /* Optional “glow” token (use sparingly) */
    --fme-glow: 0 0 0.85rem color-mix(in oklab, var(--fme-brand) 55%, transparent);
    /* --- Card primitives --- */
    --fme-card-border: var(--fme-border);
    --fme-card-surface-header: color-mix(in oklab, var(--fme-surface-2) 72%, var(--fme-surface-1) 28%);
    --fme-card-surface-body: var(--fme-surface-1);
    --fme-card-surface-compact: color-mix(in oklab, var(--fme-surface-2) 76%, var(--fme-surface-1) 24%);
    --fme-card-header-pad-y: var(--fme-space-4);
    --fme-card-header-pad-x: var(--fme-space-5);
    --fme-card-body-pad-y: var(--fme-space-4);
    --fme-card-body-pad-x: var(--fme-space-5);
    --fme-card-compact-pad: var(--fme-space-4);
    --fme-card-title-size: var(--fme-h3);
    --fme-card-subtitle-size: var(--fme-text-sm);
    --fme-card-metric-size: var(--fme-text-xl);
    /* --- Table primitives --- */
    --fme-table-border: color-mix(in oklab, var(--fme-border) 88%, transparent);
    --fme-table-surface: color-mix(in oklab, var(--fme-surface-2) 54%, var(--fme-surface-1) 46%);
    --fme-table-header-surface: color-mix(in oklab, var(--fme-surface-2) 80%, var(--fme-surface-1) 20%);
    --fme-table-row-surface: color-mix(in oklab, var(--fme-surface-1) 92%, transparent);
    --fme-table-row-hover: color-mix(in oklab, var(--fme-brand) 7%, var(--fme-surface-2));
    --fme-table-row-focus: color-mix(in oklab, var(--fme-brand) 10%, var(--fme-surface-2));
    --fme-table-row-selected: color-mix(in oklab, var(--fme-brand) 12%, var(--fme-surface-2));
    --fme-table-header-text: var(--fme-text-faint);
    --fme-table-header-size: var(--fme-text-xs);
    --fme-table-body-size: var(--fme-text-sm);
    --fme-table-cell-pad-y: var(--fme-space-3);
    --fme-table-cell-pad-x: var(--fme-space-4);
    --fme-table-cell-pad-y-compact: var(--fme-space-2);
    --fme-table-cell-pad-x-compact: var(--fme-space-3);
    /* Overlay */
    --fme-overlay: rgba(0,0,0,.55);
    /* Charts */
    --fme-chart-1: var(--fme-brand);
    --fme-chart-2: var(--fme-success);
    --fme-chart-3: var(--fme-warning);
    --fme-chart-4: var(--fme-danger);
    /* Trade execution markers (darker than candle fills for in-body visibility) */
    --fme-buy-marker: #0f8f57;
    --fme-sell-marker: #ff1769;
    /* Focus color */
    --fme-focus-color: color-mix(in oklab, var(--fme-brand) 70%, white 30%);
    /* (Optional) “terminal grid” background pattern helper (use on large empty areas) */
    --fme-grid-line: color-mix(in oklab, var(--fme-border) 55%, transparent);
}
