/* Generato da replica/design/build_tokens.py: non modificare a mano. */
:root {
  color-scheme: light;
  /* tipografia */
  --font-sans: "Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  --font-mono: ui-monospace, "Cascadia Code", Consolas, monospace;
  --text-2xs: 0.6875rem;
  --leading-2xs: 0.875rem;
  --weight-2xs: 600;
  --text-xs: 0.75rem;
  --leading-xs: 1rem;
  --weight-xs: 500;
  --text-sm: 0.875rem;
  --leading-sm: 1.25rem;
  --weight-sm: 400;
  --text-base: 1rem;
  --leading-base: 1.5rem;
  --weight-base: 400;
  --text-lg: 1.25rem;
  --leading-lg: 1.75rem;
  --weight-lg: 600;
  --text-xl: 1.75rem;
  --leading-xl: 2.125rem;
  --weight-xl: 700;
  --text-2xl: 2.25rem;
  --leading-2xl: 2.5rem;
  --weight-2xl: 700;
  /* spazi (base 4px) */
  --space-0: 0rem;
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-7: 2rem;
  --space-8: 2.5rem;
  --space-9: 3rem;
  --space-10: 4rem;
  /* raggi, ombre, movimento */
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-pill: 999px;
  --shadow-card: 0 1px 2px rgba(27,27,25,.05), 0 1px 3px rgba(27,27,25,.08);
  --shadow-pop: 0 10px 28px rgba(27,27,25,.14);
  --shadow-modal: 0 24px 64px rgba(27,27,25,.22);
  --motion-fast: 120ms;
  --motion-base: 200ms;
  --motion-ease: cubic-bezier(.2,.8,.2,1);
  /* layout */
  --layout-sidebar: 240px;
  --layout-sidebar-collapsed: 64px;
  --layout-topbar: 56px;
  --layout-content-max: 1320px;
  --layout-gutter: 24px;
  --layout-gutter-mobile: 16px;
  --layout-drawer: 420px;
  --layout-modal-sm: 440px;
  --layout-modal-lg: 1040px;
  --layout-panel: 320px;
  --layout-preview: 340px;
  --layout-card-min: 260px;
  --layout-tile-min: 220px;
  --layout-thumb-min: 96px;
  --layout-list-day: 160px;
  --layout-day-min: 220px;
  --layout-month-day-min: 112px;
  --z-sidebar: 20;
  --z-topbar: 30;
  --z-drawer: 40;
  --z-modal: 50;
  --z-toast: 60;
  --z-palette: 70;
  /* colori, tema chiaro */
  --color-bg: #f6f6f3;
  --color-surface: #ffffff;
  --color-surface-2: #efefea;
  --color-border: #e2e2dc;
  --color-border-input: #85857e;
  --color-text: #1b1b19;
  --color-text-muted: #5c5c56;
  --color-accent: #3653c9;
  --color-accent-hover: #2c45ac;
  --color-accent-soft: #e9edfc;
  --color-accent-text: #2b44a8;
  --color-on-accent: #ffffff;
  --color-danger: #b8342a;
  --color-danger-soft: #fcebe9;
  --color-success: #1d7343;
  --color-success-soft: #e5f3eb;
  --color-warning: #955400;
  --color-warning-soft: #fdf1df;
  --color-info: #1d64a3;
  --color-info-soft: #e6f0fa;
  --color-overlay: #1b1b19;
  --color-on-overlay: #ffffff;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) {
    color-scheme: dark;
    --color-bg: #111213;
    --color-surface: #1a1b1d;
    --color-surface-2: #242528;
    --color-border: #303236;
    --color-border-input: #74777e;
    --color-text: #ededea;
    --color-text-muted: #a8a9ad;
    --color-accent: #7b93ff;
    --color-accent-hover: #97aaff;
    --color-accent-soft: #1f2642;
    --color-accent-text: #a3b3ff;
    --color-on-accent: #0c1022;
    --color-danger: #ff8a7e;
    --color-danger-soft: #3a1f1c;
    --color-success: #66cf93;
    --color-success-soft: #173022;
    --color-warning: #f2b45e;
    --color-warning-soft: #382912;
    --color-info: #7dbcf2;
    --color-info-soft: #16293b;
    --color-overlay: #000000;
    --color-on-overlay: #ffffff;
  }
}

:root[data-theme="dark"] {
  color-scheme: dark;
  --color-bg: #111213;
  --color-surface: #1a1b1d;
  --color-surface-2: #242528;
  --color-border: #303236;
  --color-border-input: #74777e;
  --color-text: #ededea;
  --color-text-muted: #a8a9ad;
  --color-accent: #7b93ff;
  --color-accent-hover: #97aaff;
  --color-accent-soft: #1f2642;
  --color-accent-text: #a3b3ff;
  --color-on-accent: #0c1022;
  --color-danger: #ff8a7e;
  --color-danger-soft: #3a1f1c;
  --color-success: #66cf93;
  --color-success-soft: #173022;
  --color-warning: #f2b45e;
  --color-warning-soft: #382912;
  --color-info: #7dbcf2;
  --color-info-soft: #16293b;
  --color-overlay: #000000;
  --color-on-overlay: #ffffff;
}

:root[data-theme="grey"] {
  color-scheme: dark;
  --color-bg: #2a2c30;
  --color-surface: #33363b;
  --color-surface-2: #3d4046;
  --color-border: #4a4d54;
  --color-border-input: #8f939b;
  --color-text: #f2f2f0;
  --color-text-muted: #c4c6ca;
  --color-accent: #93a7ff;
  --color-accent-hover: #a9b9ff;
  --color-accent-soft: #3a4170;
  --color-accent-text: #c0ccff;
  --color-on-accent: #0c1022;
  --color-danger: #ffa59b;
  --color-danger-soft: #4d2e2b;
  --color-success: #82dfaa;
  --color-success-soft: #264433;
  --color-warning: #f6c87e;
  --color-warning-soft: #4b3c21;
  --color-info: #98cdf6;
  --color-info-soft: #263d52;
  --color-overlay: #000000;
  --color-on-overlay: #ffffff;
}
