/* Design tokens — fonte: design-system/mini-pannello-spedizioni/MASTER.md
   Stile "Data-Dense Dashboard". Tutti i colori dei componenti passano da qui. */

:root {
  color-scheme: light dark;

  /* Tipografia. Font di sistema: nessuna richiesta a servizi esterni (privacy/GDPR, velocità).
     Per usare Fira Sans / Fira Code, ospitare i file in assets/fonts e aggiornare queste due righe. */
  --font-sans: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-md: 1rem;
  --fs-lg: 1.125rem;
  --fs-xl: 1.5rem;
  --fs-2xl: 1.875rem;
  --lh: 1.5;

  /* Spaziatura: scala a 4px */
  --sp-1: 4px;
  --sp-2: 8px;
  --sp-3: 12px;
  --sp-4: 16px;
  --sp-5: 24px;
  --sp-6: 32px;
  --sp-7: 48px;

  --radius-sm: 6px;
  --radius: 10px;

  /* Elevazione */
  --shadow-1: 0 1px 2px rgb(15 23 42 / 0.06), 0 1px 3px rgb(15 23 42 / 0.08);
  --shadow-2: 0 8px 24px rgb(15 23 42 / 0.16);

  /* Movimento */
  --dur-fast: 150ms;
  --dur: 200ms;
  --ease-out: cubic-bezier(0.2, 0, 0, 1);

  /* Livelli z */
  --z-sticky: 10;
  --z-nav: 20;
  --z-toast: 100;

  --sidebar-w: 224px;
  --bottomnav-h: 64px;
  --content-max: 1280px;
  --control-h: 40px;

  /* Colori — tema chiaro */
  --bg: #f8fafc;
  --surface: #ffffff;
  --surface-2: #f1f5f9;
  --text: #1e293b;
  --text-muted: #475569;
  --border: #e2e8f0;
  --border-strong: #64748b;      /* bordo dei campi: ≥3:1 sullo sfondo */

  --primary: #2563eb;
  --primary-hover: #1d4ed8;
  --on-primary: #ffffff;
  --link: #1d4ed8;
  --focus: #2563eb;
  --row-hover: #f1f5f9;
  --row-selected: #dbeafe;

  --danger: #b91c1c;
  --danger-bg: #fef2f2;
  --danger-solid: #b91c1c;
  --danger-solid-hover: #991b1b;
  --success-bg: #f0fdf4;
  --success-fg: #14532d;
  --success-border: #15803d;
  --info-bg: #eff6ff;
  --info-fg: #1e3a8a;
  --info-border: #1d4ed8;
  --warn-bg: #fffbeb;
  --warn-border: #b45309;
  --warn-text: #78350f;

  /* Badge di stato: sfondo + testo (≥4.5:1). Sempre accompagnati da icona e testo. */
  --st-contrassegno-bg: #fef3c7;  --st-contrassegno-fg: #78350f;
  --st-confermato-bg:   #dbeafe;  --st-confermato-fg:   #1e3a8a;
  --st-da_lavorare-bg:  #e2e8f0;  --st-da_lavorare-fg:  #1e293b;
  --st-preparato-bg:    #ede9fe;  --st-preparato-fg:    #4c1d95;
  --st-spedito-bg:      #dcfce7;  --st-spedito-fg:      #14532d;
  --st-cod-bg:          #fff7ed;  --st-cod-fg:          #9a3412;  --st-cod-border: #fdba74;
  --st-track-bg:        #f1f5f9;  --st-track-fg:        #334155;

  --toast-bg: #0f172a;
  --toast-fg: #f8fafc;
  --toast-link: #93c5fd;
  --scrim: rgb(15 23 42 / 0.5);
}

@media (prefers-color-scheme: dark) {
  :root {
    --bg: #0b1220;
    --surface: #131c2e;
    --surface-2: #1b2740;
    --text: #e8eef7;
    --text-muted: #9fb0c8;
    --border: #28364f;
    --border-strong: #7b8ba3;

    --primary: #2563eb;           /* con testo bianco: 5.2:1 */
    --primary-hover: #3b73f0;
    --on-primary: #ffffff;
    --link: #93c5fd;
    --focus: #60a5fa;
    --row-hover: #1b2740;
    --row-selected: #1e3a6e;

    --danger: #f87171;
    --danger-bg: #3b1214;
    --danger-solid: #dc2626;
    --danger-solid-hover: #b91c1c;
    --success-bg: #052e16;
    --success-fg: #bbf7d0;
    --success-border: #22c55e;
    --info-bg: #172554;
    --info-fg: #bfdbfe;
    --info-border: #3b82f6;
    --warn-bg: #2a1d07;
    --warn-border: #f59e0b;
    --warn-text: #fde68a;

    --st-contrassegno-bg: #422006;  --st-contrassegno-fg: #fde68a;
    --st-confermato-bg:   #172554;  --st-confermato-fg:   #bfdbfe;
    --st-da_lavorare-bg:  #2b3a55;  --st-da_lavorare-fg:  #e8eef7;
    --st-preparato-bg:    #2e1065;  --st-preparato-fg:    #ddd6fe;
    --st-spedito-bg:      #052e16;  --st-spedito-fg:      #bbf7d0;
    --st-cod-bg:          #431407;  --st-cod-fg:          #fed7aa;  --st-cod-border: #9a3412;
    --st-track-bg:        #1b2740;  --st-track-fg:        #cbd5e1;

    --toast-bg: #e8eef7;
    --toast-fg: #0f172a;
    --toast-link: #1d4ed8;
    --scrim: rgb(0 0 0 / 0.6);
    --shadow-1: 0 1px 2px rgb(0 0 0 / 0.4);
    --shadow-2: 0 8px 24px rgb(0 0 0 / 0.5);
  }
}

@media (pointer: coarse) {
  :root { --control-h: 44px; }
}
