:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b1020;--bg-2:#111a33;--text:#e2e8f0;--muted:#94a3b8;--faint:#64748b;--accent:#38bdf8;--accent-2:#f472b6;--giallo:#facc15;--verde:#22c55e;--indaco:#a5b4fc;--panel:#0f172ab8;--border:#94a3b838;--font:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font);margin:0;font-size:17px;line-height:1.65}.topbar{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0b1020eb;align-items:center;gap:18px;padding:12px 20px;display:flex;position:sticky;top:0}.brand{font-weight:700}.nav{flex-wrap:wrap;gap:6px;display:flex}.nav a{color:var(--muted);border:1px solid #0000;border-radius:999px;padding:4px 10px;font-size:.9rem;text-decoration:none}.nav a:hover{color:var(--text);background:var(--panel)}.nav a[aria-current=page]{color:var(--text);background:var(--panel);border-color:var(--border)}main{max-width:860px;margin:0 auto;padding:0 20px 100px}.copertina{border-bottom:1px solid var(--border);padding:56px 0 28px}.occhiello{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;font-size:.8rem;font-weight:700}h1{margin:10px 0 14px;font-size:2.4rem;line-height:1.15}.sottotitolo{color:var(--muted);margin:0 0 22px;font-size:1.15rem}.scheda-corso{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-top:26px;display:grid}.scheda-corso div{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;padding:12px 14px}.scheda-corso dt,.scheda-corso .etichetta{color:var(--faint);letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:.72rem;display:block}h2{margin:52px 0 14px;font-size:1.6rem;line-height:1.25}h3{color:var(--accent);margin:34px 0 10px;font-size:1.15rem}h4{margin:22px 0 8px;font-size:1rem}p{margin:0 0 16px}a{color:var(--accent)}ul,ol{margin:0 0 16px;padding-left:22px}li{margin-bottom:7px}strong{color:#f1f5f9}.indice{background:var(--bg-2);border:1px solid var(--border);border-radius:16px;margin:32px 0;padding:22px 26px}.indice ol{counter-reset:lezione;margin:0;padding:0;list-style:none}.indice li{border-bottom:1px dashed #94a3b824;align-items:baseline;gap:12px;padding:7px 0;display:flex}.indice li:last-child{border-bottom:none}.indice .num{color:var(--accent);font-family:var(--mono);min-width:2.2em;font-size:.85rem}.indice a{color:var(--text);text-decoration:none}.indice a:hover{color:var(--accent)}.indice .dove{color:var(--faint);white-space:nowrap;margin-left:auto;font-size:.78rem}.lezione{border-top:2px solid #38bdf859;margin-top:64px;padding-top:8px;scroll-margin-top:72px}[id]{scroll-margin-top:72px}.numero{color:var(--accent);letter-spacing:.06em;text-transform:uppercase;background:#38bdf824;border:1px solid #38bdf859;border-radius:999px;padding:2px 12px;font-size:.78rem;font-weight:700;display:inline-block}.lezione h2{margin:12px 0 10px}.sommario{color:var(--muted);font-size:1.05rem}.meta{background:var(--bg-2);border:1px solid var(--border);border-radius:12px;gap:8px;margin:18px 0 0;padding:14px 16px;font-size:.92rem;list-style:none;display:grid}.meta li{margin:0}.meta strong{color:var(--indaco)}.tempi{gap:8px;margin:22px 0 8px;display:grid}.blocco{border:1px solid var(--border);background:var(--bg-2);border-radius:10px;align-items:baseline;gap:14px;padding:9px 14px;font-size:.94rem;display:flex}.blocco .min{font-family:var(--mono);min-width:3.2em;font-weight:700}.blocco.teoria{border-left:4px solid var(--accent)}.blocco.teoria .min{color:var(--accent)}.blocco.demo{border-left:4px solid var(--indaco)}.blocco.demo .min{color:var(--indaco)}.blocco.lab{border-left:4px solid var(--verde)}.blocco.lab .min{color:var(--verde)}.blocco.chiusura{border-left:4px solid var(--giallo)}.blocco.chiusura .min{color:var(--giallo)}pre{border:1px solid var(--border);background:#0a0f1f;border-radius:12px;margin:0 0 18px;padding:16px 18px;overflow-x:auto}code{font-family:var(--mono);font-size:.88em}p code,li code,td code{color:#bae6fd;background:#38bdf81f;border:1px solid #38bdf833;border-radius:5px;padding:1px 5px}pre code{color:#dbeafe;background:0 0;border:none;padding:0}.esercizio{border:1px solid #22c55e4d;border-left:4px solid var(--verde);background:#22c55e0f;border-radius:12px;margin:0 0 18px;padding:16px 18px}.esercizio h4{color:#bbf7d0;margin-top:0}.livello{text-transform:uppercase;letter-spacing:.08em;vertical-align:middle;border:1px solid var(--border);color:var(--muted);border-radius:999px;margin-left:8px;padding:2px 9px;font-size:.68rem}.livello.base{color:#86efac;border-color:#22c55e80}.livello.medio{color:#fde68a;border-color:#facc1580}.livello.sfida{color:#f9a8d4;border-color:#f472b680}details{border:1px solid var(--border);background:#0f172a99;border-radius:10px;margin-bottom:12px;padding:10px 14px}summary{cursor:pointer;color:var(--giallo);font-weight:600}details[open] summary{margin-bottom:10px}.nota,.attenzione,.docente{border-radius:12px;margin:0 0 18px;padding:14px 18px;font-size:.96rem}.nota{background:#38bdf814;border:1px solid #38bdf84d}.attenzione{background:#facc1514;border:1px solid #facc1559}.docente{background:#a5b4fc14;border:1px solid #a5b4fc4d}.nota strong:first-child,.attenzione strong:first-child,.docente strong:first-child{letter-spacing:.1em;text-transform:uppercase;margin-bottom:4px;font-size:.78rem;display:block}.nota strong:first-child{color:var(--accent)}.attenzione strong:first-child{color:var(--giallo)}.docente strong:first-child{color:var(--indaco)}table{border-collapse:collapse;width:100%;margin:0 0 20px;font-size:.93rem}th,td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;padding:9px 12px}th{color:var(--indaco);letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}tbody tr:hover{background:#94a3b80d}footer{border-top:1px solid var(--border);color:var(--faint);margin-top:70px;padding-top:22px;font-size:.88rem}@media (width<=640px){body{font-size:16px}main{padding:0 16px 70px}h1{font-size:1.8rem}h2{font-size:1.35rem}.topbar{gap:10px;padding:10px 14px}.brand{display:none}.indice li{flex-wrap:wrap}.indice .dove{margin-left:34px}table{display:block;overflow-x:auto}th,td{min-width:8em}p code,li code{overflow-wrap:anywhere}}@media print{body{color:#111;background:#fff;font-size:11pt}.topbar,.nav{display:none}main{max-width:none}pre{background:#f6f8fa;border-color:#ccc}pre code{color:#111}details{background:0 0}details[open] summary{color:#555}.lezione{break-before:page}}
