:root {
  --fondo: #faf8f5;
  --testo: #1c1b19;
  --tenue: #57534e;
  --linea: #e7e2da;
  --link: #1d4ed8;
  color-scheme: light dark;
}
@media (prefers-color-scheme: dark) {
  :root { --fondo: #171614; --testo: #f1efe9; --tenue: #b5afa6; --linea: #34312c; --link: #93b4ff; }
}
* { box-sizing: border-box; }
body {
  margin: 0; background: var(--fondo); color: var(--testo);
  font: 17px/1.6 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
}
main, header, footer { max-width: 680px; margin: 0 auto; padding: 0 20px; }
header { display: flex; flex-wrap: wrap; gap: 8px 20px; align-items: baseline; justify-content: space-between;
  padding-top: 28px; padding-bottom: 16px; border-bottom: 1px solid var(--linea); }
header strong { font-size: 19px; }
nav { display: flex; flex-wrap: wrap; gap: 4px 16px; }
nav a { padding: 6px 0; }
a { color: var(--link); text-underline-offset: 2px; }
h1 { font-size: 30px; line-height: 1.2; margin: 36px 0 8px; }
h2 { font-size: 21px; margin: 32px 0 6px; }
.data, .lingua { color: var(--tenue); font-size: 15px; margin: 0 0 8px; }
section + section { margin-top: 56px; padding-top: 8px; border-top: 1px solid var(--linea); }
code { font-size: 15px; background: var(--linea); padding: 1px 5px; border-radius: 4px; overflow-wrap: anywhere; }
li + li { margin-top: 6px; }
footer { padding-top: 40px; padding-bottom: 40px; color: var(--tenue); font-size: 15px; }
