/* Lady Francesca — tokens.css (generato da tokens.json). Tema di default: notte. */
:root, [data-theme="notte"] {
  --bg: #140a12;
  --surface: #1e111b;
  --surface-raised: #2a1826;
  --ink: #f7eee8;
  --ink-muted: #c4b0bb;
  --accent: #ff5c9a;
  --accent-fill: #d6246e;
  --on-accent: #ffffff;
  --gold: #e9bd5e;
  --gold-fill: #e2b04a;
  --line: #4a3044;
  --line-strong: #8a6d80;
  --focus: #ffd27a;
  --success: #5fd3a5;
  --danger: #ffa08f;
  --fucsia-500: #d6246e;
  --fucsia-300: #ff5c9a;
  --corallo-400: #ff6f4f;
  --oro-400: #e2b04a;
  --notte-950: #0d060b;
  --notte-800: #2a1826;
  --avorio-50: #fbf6ef;
  --sala-gialla: #f2c230;
  --sala-blu: #2f55d4;
  --shadow-card: 0 1px 0 #ffffff14 inset, 0 24px 48px -24px #00000099;
  --shadow-lift: 0 1px 0 #ffffff1f inset, 0 40px 80px -30px #000000cc;
  --glow-fucsia: 0 18px 50px -14px #d6246e8c;
  --glow-oro: 0 14px 40px -12px #e2b04a80;
  color-scheme: dark;
}
[data-theme="giorno"] {
  --bg: #fbf6ef;
  --surface: #f3e9dc;
  --surface-raised: #fffdf9;
  --ink: #1d0f19;
  --ink-muted: #5e4957;
  --accent: #b3175a;
  --accent-fill: #c21e63;
  --gold: #83590c;
  --line: #e2d3c3;
  --line-strong: #8c7768;
  --focus: #1d0f19;
  --success: #1e6e50;
  --danger: #a3271c;
  --shadow-card: 0 1px 2px #1d0f190f, 0 24px 48px -28px #1d0f1940;
  --shadow-lift: 0 2px 4px #1d0f1914, 0 40px 80px -32px #1d0f1959;
  color-scheme: light;
}
:root {
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 72px;
  --space-9: 120px;
  --space-10: 180px;
  --radius-s: 6px;
  --radius-m: 16px;
  --radius-l: 32px;
  --radius-arco: 999px;
  --z-nav: 50;
  --z-sidebar: 70;
  --z-menu: 80;
  --z-curtain: 100;
  --font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Georgia, serif;
  --font-sans: "Manrope", "Segoe UI", system-ui, -apple-system, sans-serif;
  --font-numeri: "Big Shoulders Display", "Arial Narrow", "Roboto Condensed", sans-serif-condensed, sans-serif;
}
.display-hero { font-family: var(--font-display); font-size: 112px; line-height: 0.92; font-weight: 340; letter-spacing: -0.03em; font-variation-settings: 'opsz' 144; }
.display-1 { font-family: var(--font-display); font-size: 68px; line-height: 0.98; font-weight: 360; letter-spacing: -0.025em; font-variation-settings: 'opsz' 120; }
.display-2 { font-family: var(--font-display); font-size: 44px; line-height: 1.05; font-weight: 400; letter-spacing: -0.015em; font-variation-settings: 'opsz' 72; }
.display-3 { font-family: var(--font-display); font-size: 28px; line-height: 1.15; font-weight: 500; font-variation-settings: 'opsz' 36; }
.quote { font-family: var(--font-display); font-size: 30px; line-height: 1.3; font-weight: 300; font-style: italic; font-variation-settings: 'opsz' 48; }
.lead { font-family: var(--font-sans); font-size: 21px; line-height: 1.5; font-weight: 500; }
.body { font-family: var(--font-sans); font-size: 17px; line-height: 1.65; font-weight: 400; }
.small { font-family: var(--font-sans); font-size: 14px; line-height: 1.5; font-weight: 500; }
.label { font-family: var(--font-sans); font-size: 12px; line-height: 1.2; font-weight: 700; letter-spacing: 0.16em; }
.button { font-family: var(--font-sans); font-size: 15px; line-height: 1; font-weight: 700; letter-spacing: 0.04em; }
.pettorale { font-family: var(--font-numeri); font-size: 96px; line-height: 0.86; font-weight: 800; }
.orario { font-family: var(--font-numeri); font-size: 24px; line-height: 1; font-weight: 700; letter-spacing: 0.02em; }
/* Responsive display sizes */
@media (max-width: 720px) { .display-hero { font-size: clamp(52px, 13vw, 112px); } .display-1 { font-size: clamp(40px, 9vw, 68px); } .display-2 { font-size: 34px; } .pettorale { font-size: 72px; } }
.label { text-transform: uppercase; } .pettorale, .orario { font-variant-numeric: tabular-nums; text-transform: uppercase; }
