/* =============================================================================
   AYXZA · note.css — pagine /note/ e /en/note/ (generate da tools/genera_note.py)
   Ledger bw-light, monocromo: stessi token e stessi font della home.
   Il link porta ?v=<hash del file>, calcolato dal generatore: cambiare questo
   file richiede di rilanciare py tools/genera_note.py.
   ============================================================================= */
:root{
  --paper:#ffffff; --paper-2:#f7f7f7;
  --line-weak:#e5e5e5; --line:#b8b8b8;
  --text-hi:#000000; --text:#1a1a1a; --text-lo:#555555; --text-xlo:#8a8a8a;
  --pad-x:clamp(20px,4vw,64px);
  --font-display:"Cormorant Garamond",Georgia,serif;
  --font-sans:"Bricolage Grotesque",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --font-mono:"Geist Mono",ui-monospace,"SF Mono",Menlo,monospace;
  --misura:680px;
}
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html,body{background:var(--paper);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{min-height:100vh;display:flex;flex-direction:column}
main{flex:1}
a{color:inherit}
a:focus-visible{outline:2px solid var(--text-hi);outline-offset:2px}
::selection{background:var(--text-hi);color:var(--paper)}

/* topbar, come la home */
.topbar{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px var(--pad-x);background:var(--paper);border-bottom:1px solid var(--line-weak);font-family:var(--font-mono);font-size:12px;color:var(--text-lo);letter-spacing:0.04em}
.topbar a{text-decoration:none}
.topbar__brand{color:var(--text-hi);font-weight:500;letter-spacing:0.18em}
.topbar__right{display:flex;align-items:center;gap:20px}
.topbar__meta{color:var(--text-lo);letter-spacing:0.12em}
.topbar__meta:hover{color:var(--text-hi)}
.lang{display:inline-flex;font-size:12px;letter-spacing:0.1em;border:1px solid var(--line);border-radius:2px;overflow:hidden}
.lang__opt{display:inline-flex;align-items:center;color:var(--text-lo);padding:4px 10px;transition:background .15s,color .15s}
.lang__opt:hover{color:var(--text-hi);background:var(--paper-2)}
.lang__opt[aria-current="true"]{background:var(--text-hi);color:var(--paper)}

/* nota */
.nota,.indice{width:100%;max-width:calc(var(--misura) + 2*var(--pad-x));margin:0 auto;padding:40px var(--pad-x) 64px}
.briciole{font-family:var(--font-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-xlo);margin-bottom:36px}
.briciole a{text-decoration:none;color:var(--text-lo)}
.briciole a:hover{color:var(--text-hi)}
.nota__meta{font-family:var(--font-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-xlo);margin-bottom:14px}
.nota h1,.indice h1{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:clamp(34px,5vw,48px);line-height:1.08;color:var(--text-hi);letter-spacing:-0.005em;text-wrap:balance}
.nota__occhiello{font-family:var(--font-display);font-style:italic;font-size:clamp(19px,2.4vw,23px);line-height:1.35;color:var(--text-lo);margin-top:18px;text-wrap:pretty}
.nota__testa{padding-bottom:28px;border-bottom:2px solid var(--text-hi);margin-bottom:32px}
.nota__red{border:1px solid var(--line);background:var(--paper-2);padding:14px 18px;margin-bottom:32px;font-size:14px;line-height:1.55;color:var(--text)}
.nota__red-tit{display:block;font-family:var(--font-mono);font-size:10px;letter-spacing:0.14em;text-transform:uppercase;color:var(--text-lo);margin-bottom:6px}
.nota__red a{text-decoration:underline;text-underline-offset:2px}
.nota__corpo{font-size:17px;line-height:1.7;color:var(--text)}
.nota__corpo p{margin-bottom:1.15em;text-wrap:pretty;hyphens:auto}
.nota__corpo h2{font-family:var(--font-sans);font-size:20px;font-weight:500;line-height:1.3;color:var(--text-hi);margin:1.9em 0 .7em;letter-spacing:0.005em}
.nota__corpo strong{font-weight:600;color:var(--text-hi)}
.nota__corpo a{text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.nota__corpo a:hover{color:var(--text-lo)}
.nota__corpo blockquote{border-left:2px solid var(--text-hi);padding-left:18px;margin:0 0 1.15em;font-family:var(--font-display);font-style:italic;font-size:20px;color:var(--text-lo)}
.nota__corpo ul,.nota__corpo ol{margin:0 0 1.15em 1.3em}
.nota__corpo li{margin-bottom:.4em}
.nota__piede{margin-top:40px;padding-top:20px;border-top:1px solid var(--line-weak);font-family:var(--font-mono);font-size:12px;line-height:1.7;color:var(--text-lo)}
.nota__piede p{margin-bottom:6px}
.nota__piede a{color:var(--text-hi);text-decoration:none;border-bottom:1px solid currentColor}
.nota__piede a:hover{color:var(--text-lo)}

/* indice */
.indice__testa{padding-bottom:28px;border-bottom:2px solid var(--text-hi)}
.indice__intro{font-size:16px;line-height:1.6;color:var(--text-lo);margin-top:18px;max-width:600px;text-wrap:pretty}
.voci{list-style:none}
.voce{padding:24px 0;border-bottom:1px solid var(--line-weak)}
.voce__meta{font-family:var(--font-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-xlo);margin-bottom:8px}
.voce h2{font-family:var(--font-display);font-size:26px;font-weight:500;line-height:1.2;color:var(--text-hi)}
.voce h2 a{text-decoration:none}
.voce h2 a:hover{text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.voce__abs{font-size:15px;line-height:1.55;color:var(--text-lo);margin-top:8px;text-wrap:pretty}
.voce--esterna h2{font-style:italic}

/* piede del sito */
.foot{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 16px;padding:24px var(--pad-x);border-top:1px solid var(--line-weak);font-family:var(--font-mono);font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--text-xlo)}
.foot a{text-decoration:none;color:var(--text-lo)}
.foot a:hover{color:var(--text-hi)}

@media(max-width:600px){
  .topbar__right{gap:12px}
  .nota,.indice{padding-top:28px}
  .nota__corpo{font-size:16px}
  .voce h2{font-size:23px}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition-duration:.001ms!important}}
