/*
 * Pagine legali: privacy e termini, del sito e delle app.
 *
 * Estratto dallo stile inline di pages/privacy.html quando i documenti sono
 * passati da due a sei. Le due pagine originali conservano il proprio blocco
 * inline: non sono state toccate per non rischiare una regressione su testi
 * gia pubblicati.
 */
/* ── Reset & base ─────────────────────────────────────────────────────────── */
*{margin:0;padding:0;box-sizing:border-box}
:root{
--bg:var(--ds-background);--panel:var(--ds-surface);--blue:var(--ds-primary);
--text:var(--ds-text);--muted:var(--ds-text-muted);--line:var(--ds-border);
}
html{scroll-behavior:smooth}
body{
background:var(--bg);color:var(--text);
font-family:var(--ds-font-family);overflow-x:hidden;line-height:1.7;
}
body::before{
content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
background:
radial-gradient(circle at 80% 5%,rgba(0,119,255,.14),transparent 26rem),
radial-gradient(circle at 8% 50%,rgba(0,162,255,.07),transparent 28rem);
}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}

/* ── Nav ──────────────────────────────────────────────────────────────────── */
nav{
position:fixed;top:0;left:0;right:0;z-index:1000;
border-bottom:1px solid var(--line);
background:rgba(5,11,22,.88);backdrop-filter:blur(14px);
padding:0 24px;
}
.nav-inner{
max-width:1200px;margin:0 auto;
display:flex;align-items:center;justify-content:space-between;
height:68px;
}
.logo{font-size:20px;font-weight:700;letter-spacing:-.04em;color:var(--text)}
.logo span{color:var(--blue)}
.nav-links{display:flex;gap:28px;list-style:none}
.nav-links a{font-size:14px;color:var(--muted);transition:color .18s}
.nav-links a:hover{color:var(--text);text-decoration:none}

/* ── Layout ───────────────────────────────────────────────────────────────── */
.shell{
max-width:1200px;margin:0 auto;padding:140px 24px 88px;
display:grid;grid-template-columns:220px 1fr;gap:60px;align-items:start;
}
/* TOC sidebar */
.toc{position:sticky;top:100px}
.toc-title{
font-size:11px;font-weight:600;letter-spacing:.1em;
text-transform:uppercase;color:var(--muted);margin-bottom:14px;
}
.toc ol{list-style:none;display:flex;flex-direction:column;gap:6px}
.toc a{
font-size:12px;color:var(--muted);padding:6px 10px;
border-radius:8px;border:1px solid transparent;
transition:all .18s;display:block;
}
.toc a:hover,.toc a.active{
color:var(--blue);border-color:var(--line);
background:rgba(0,162,255,.06);text-decoration:none;
}

/* Article */
article{min-width:0}
.eyebrow{
font-size:11px;font-weight:600;letter-spacing:.12em;
text-transform:uppercase;color:var(--blue);margin-bottom:10px;
}
h1{
font-size:clamp(32px,5vw,52px);font-weight:700;
line-height:1.1;letter-spacing:-.04em;margin-bottom:12px;
}
h1 span{color:var(--blue)}
.meta{color:var(--muted);font-size:13px;margin-bottom:48px}

h2{
font-size:20px;font-weight:700;margin:3rem 0 .8rem;
padding-top:1rem;border-top:1px solid var(--line);
scroll-margin-top:100px;
}
h3{font-size:15px;font-weight:600;margin:1.6rem 0 .5rem;color:var(--text)}
p{color:#ccd8e8;font-size:14px;margin-bottom:1rem}
ul,ol{color:#ccd8e8;font-size:14px;padding-left:1.4rem;margin-bottom:1rem}
li{margin-bottom:.4rem}
strong{color:var(--text);font-weight:600}
.highlight{
border:1px solid var(--line);border-radius:12px;
background:rgba(0,162,255,.05);padding:16px 20px;margin:1.2rem 0;
}
.highlight p{margin:0;font-size:13px}

/* Footer */
footer{
text-align:center;padding:32px 24px;
border-top:1px solid var(--line);
color:var(--muted);font-size:12px;
}
footer a{color:var(--blue)}

/* Responsive */
@media(max-width:780px){
.shell{grid-template-columns:1fr;padding-top:110px}
.toc{display:none}
}

/* ── Aggiunte per le pagine legali delle app ──────────────────────────────── */

/* Riferimenti incrociati in fondo al documento. */
.footnote{
    margin-top:48px;padding-top:24px;
    border-top:1px solid var(--line);
    font-size:14px;color:var(--muted);
}

/* Sottosezioni: i documenti delle app distinguono categorie di dati. */
article h3{
    margin:28px 0 10px;
    font-size:17px;font-weight:600;color:var(--text);
}
