/* learning-ai.it — pagine contenuto (SPEC-5). Stessa identità dell'app. */
@font-face { font-family:"Newsreader"; font-style:normal; font-weight:400; font-display:swap; src:url("/fonts/newsreader-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family:"Newsreader"; font-style:italic; font-weight:400; font-display:swap; src:url("/fonts/newsreader-latin-400-italic.woff2") format("woff2"); }
@font-face { font-family:"Newsreader"; font-style:normal; font-weight:600; font-display:swap; src:url("/fonts/newsreader-latin-600-normal.woff2") format("woff2"); }
@font-face { font-family:"Inter"; font-style:normal; font-weight:400; font-display:swap; src:url("/fonts/inter-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family:"Inter"; font-style:normal; font-weight:500; font-display:swap; src:url("/fonts/inter-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family:"Inter"; font-style:normal; font-weight:600; font-display:swap; src:url("/fonts/inter-latin-600-normal.woff2") format("woff2"); }
:root { color-scheme:light; --carta:#F6F8FC; --inchiostro:#0B1220; --penna:#2563EB; --evid:#FFE45C; --chip:#EAF0FF;
  --verde:#1E7A4F; --griglia:rgba(37,99,235,.05); --grigio:#475569;
  --bianco:#fff; --sfondo-soft:#F8FAFE; --bordo:#DCE3EF;
  --serif:"Newsreader","Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  --sans:"Inter",system-ui,-apple-system,sans-serif; }
* { box-sizing:border-box; margin:0; padding:0; }
body { background:var(--carta); color:var(--inchiostro);
  background-image:linear-gradient(var(--griglia) 1px, transparent 1px),linear-gradient(90deg, var(--griglia) 1px, transparent 1px);
  background-size:20px 20px; font-family:var(--sans); font-size:16px; line-height:1.6; min-height:100vh; padding-bottom:60px; -webkit-font-smoothing:antialiased; font-synthesis:none; }
/* Nessun peso 700 caricato: il grassetto usa il 600 reale (Inter e Newsreader), niente faux-bold */
b, strong { font-weight:600; }
.wrap { max-width:860px; margin:0 auto; padding:24px 20px; display:flex; flex-direction:column; min-height:calc(100vh - 60px); }
header { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; margin-bottom:6px; padding-bottom:12px; border-bottom:2px solid var(--inchiostro); }
.logo { font-size:24px; font-weight:600; letter-spacing:-1px; color:var(--inchiostro); text-decoration:none; }
.logo span { color:var(--penna); }
.menu { display:flex; gap:16px; align-items:center; flex-wrap:wrap; }
.menu a { color:var(--grigio); text-decoration:none; font-weight:600; font-size:15px; }
.menu a:hover { color:var(--inchiostro); }
.menu .cta-mini { background:var(--penna); color:var(--bianco); padding:6px 14px; border-radius:8px; }
.briciole { font-size:13px; color:var(--grigio); margin:14px 0 6px; }
.briciole a { color:var(--grigio); }
main { flex:1; }
h1 { font-family:var(--serif); font-size:34px; line-height:1.2; margin:14px 0 8px; }
h2 { font-family:var(--sans); font-size:22px; font-weight:600; letter-spacing:-0.01em; margin:30px 0 10px; }
h3 { font-family:var(--sans); font-size:17px; font-weight:600; margin:20px 0 6px; }
.byline, .meta { font-size:14px; color:var(--grigio); font-style:italic; margin-bottom:8px; }
main p, main li { font-family:var(--serif); font-size:18px; line-height:1.65; max-width:68ch; margin-bottom:16px; }
main li { margin-bottom:8px; }
main ul, main ol { margin:0 0 16px 24px; }
.lead { font-size:20px; }
a { color:var(--penna); }
blockquote { margin:0 0 16px; padding:12px 16px; background:var(--sfondo-soft); border-left:3px solid var(--evid); border-radius:0 8px 8px 0; }
blockquote p { margin-bottom:0; }
code { font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:14.5px; background:var(--chip); border-radius:4px; padding:1px 5px; }
.scheda { background:var(--bianco); border:1px solid var(--bordo); border-radius:12px; padding:16px 20px; margin-bottom:14px; box-shadow:2px 2px 0 rgba(11,18,32,.06); }
.scheda h2, .scheda h3 { margin:2px 0 6px; }
.scheda p { font-family:var(--sans); font-size:15px; margin-bottom:0; }
.scheda a { text-decoration:none; color:var(--inchiostro); }
.scheda a:hover { color:var(--penna); }
.indice li { font-family:var(--sans); font-size:16px; }
.cta { display:inline-block; background:var(--penna); color:var(--bianco); font-family:var(--sans); font-weight:600; font-size:16px; padding:10px 20px; border-radius:8px; text-decoration:none; }
.cta-box { background:var(--bianco); border:1px solid var(--bordo); border-radius:12px; padding:16px 20px; margin-top:28px; box-shadow:2px 2px 0 rgba(11,18,32,.06); }
.cta-box p, .cta-box li { font-family:var(--sans); font-size:15px; margin-bottom:6px; }
.cta-box ul { margin-left:20px; }
.correlati-tit { margin-top:10px; font-weight:600; }
.pagine { display:flex; justify-content:space-between; gap:12px; margin-top:26px; flex-wrap:wrap; font-family:var(--sans); font-size:15px; font-weight:600; }
.pagine a { text-decoration:none; }
footer { margin-top:auto; padding-top:16px; border-top:2px solid var(--inchiostro); font-size:14px; color:var(--grigio); }
footer p { font-family:var(--sans); font-size:14px; margin-bottom:6px; max-width:none; }
a:focus-visible, button:focus-visible { outline:2px solid var(--penna); outline-offset:2px; border-radius:4px; }
/* DES-1: stati hover/active coerenti */
a:hover { text-decoration:underline; }
.cta:hover, .cta-mini:hover { filter:brightness(1.08); text-decoration:none; }
.cta:active, .cta-mini:active { filter:brightness(0.94); }
.scheda { transition:box-shadow .12s, transform .12s; }
.scheda:hover { box-shadow:3px 3px 0 rgba(11,18,32,.10); transform:translateY(-1px); }
/* DES-1: gerarchia serif nella colonna di lettura */
.lettura h2 { font-family:var(--serif); font-weight:600; font-size:24px; }
.lettura h3 { font-family:var(--serif); font-weight:600; }
@media (max-width:640px) {
  h1 { font-size:27px; }
  h2 { font-size:20px; }
  main p, main li { font-size:17px; }
  .wrap { padding:20px 16px; }
}
