/* tokens.css — generato da design-system/tokens.json (Numeri). Non modificare a mano. */
:root {
  --font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;
  --font-display: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI Variable", "Segoe UI", system-ui, sans-serif;
  --font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 14px;
  --radius-pill: 999px;
  --control-sm: 24px;
  --control-md: 32px;
  --control-lg: 40px;
  --row-height: 32px;
  --row-height-compact: 24px;
  --grid-unit: 4px;
  --duration-fast: 120ms;
  --duration-base: 200ms;
  --surface: #F5F5F7;
  --surface-raised: #FFFFFF;
  --surface-sidebar: #EBEBEF;
  --surface-bar: #FAFAFB;
  --surface-hover: #F0F1F4;
  --group-0: #EEF1F6;
  --group-1: #F6F7FA;
  --line: #E2E2E7;
  --line-control: #8A8A91;
  --ink: #1D1D1F;
  --ink-muted: #6A6A70;
  --accent: #0058C7;
  --on-accent: #FFFFFF;
  --accent-soft: #E5EEFB;
  --positive: #00756B;
  --positive-soft: #E0F4F1;
  --negative: #C2380E;
  --negative-soft: #FCEAE3;
  --warning: #8F5B00;
  --warning-soft: #FBF1DC;
  --focus-ring: {accent};
  --shadow-control: 0 0.5px 1px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.06);
  --shadow-panel: 0 1px 2px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.05);
  --shadow-popover: 0 0 0 0.5px rgba(0,0,0,0.12), 0 10px 32px rgba(0,0,0,0.16);
  color-scheme: light dark;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    --surface: #1C1C1E;
    --surface-raised: #2C2C2E;
    --surface-sidebar: #232326;
    --surface-bar: #28282B;
    --surface-hover: #353538;
    --group-0: #30343B;
    --group-1: #2E3036;
    --line: #3A3A3D;
    --line-control: #8C8C92;
    --ink: #F5F5F7;
    --ink-muted: #A6A6AB;
    --accent: #55A2FF;
    --on-accent: #08172E;
    --accent-soft: #1B2A41;
    --positive: #3FD6BF;
    --positive-soft: #12302C;
    --negative: #FF8A5C;
    --negative-soft: #3A1D12;
    --warning: #FFC145;
    --warning-soft: #35290F;
    --focus-ring: {accent};
    --shadow-control: 0 0.5px 1px rgba(0,0,0,0.5);
    --shadow-panel: 0 1px 2px rgba(0,0,0,0.4), 0 4px 16px rgba(0,0,0,0.3);
    --shadow-popover: 0 0 0 0.5px rgba(255,255,255,0.12), 0 10px 32px rgba(0,0,0,0.55);
  }
}

:root[data-theme="dark"] {
  --surface: #1C1C1E;
  --surface-raised: #2C2C2E;
  --surface-sidebar: #232326;
  --surface-bar: #28282B;
  --surface-hover: #353538;
  --group-0: #30343B;
  --group-1: #2E3036;
  --line: #3A3A3D;
  --line-control: #8C8C92;
  --ink: #F5F5F7;
  --ink-muted: #A6A6AB;
  --accent: #55A2FF;
  --on-accent: #08172E;
  --accent-soft: #1B2A41;
  --positive: #3FD6BF;
  --positive-soft: #12302C;
  --negative: #FF8A5C;
  --negative-soft: #3A1D12;
  --warning: #FFC145;
  --warning-soft: #35290F;
  --focus-ring: {accent};
  --shadow-control: 0 0.5px 1px rgba(0,0,0,0.5);
  --shadow-panel: 0 1px 2px rgba(0,0,0,0.4), 0 4px 16px rgba(0,0,0,0.3);
  --shadow-popover: 0 0 0 0.5px rgba(255,255,255,0.12), 0 10px 32px rgba(0,0,0,0.55);
}

.t-large-title { font-family: var(--font-display); font-size: 26px; line-height: 32px; font-weight: 700; letter-spacing: -0.4px; }
.t-title { font-family: var(--font-display); font-size: 20px; line-height: 26px; font-weight: 600; letter-spacing: -0.2px; }
.t-headline { font-family: var(--font-display); font-size: 15px; line-height: 20px; font-weight: 600; }
.t-body { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 400; }
.t-body-strong { font-family: var(--font-sans); font-size: 13px; line-height: 18px; font-weight: 600; }
.t-callout { font-family: var(--font-sans); font-size: 12px; line-height: 16px; font-weight: 400; }
.t-caption { font-family: var(--font-sans); font-size: 11px; line-height: 14px; font-weight: 600; letter-spacing: 0.3px; }
.t-numeric { font-family: var(--font-mono); font-size: 13px; line-height: 18px; font-weight: 400; font-variant-numeric: tabular-nums; }
.t-numeric-large { font-family: var(--font-mono); font-size: 24px; line-height: 30px; font-weight: 500; letter-spacing: -0.3px; font-variant-numeric: tabular-nums; }
