/* Stile condiviso pagine statiche (legali + 404) — tema azzurro tech Nora. */
:root {
  --bg: #050a14; --bg2: #0a1322; --cyan: #3fd8ff; --cyan-dim: #1fb0e0;
  --text: #e8f3fb; --muted: #8fa3b2;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html, body { background: var(--bg); color: var(--text); }
body {
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  -webkit-font-smoothing: antialiased; line-height: 1.6;
  background: radial-gradient(1100px 600px at 50% -10%, #0c1d33 0%, var(--bg) 60%), var(--bg);
  min-height: 100vh;
}
.wrap { max-width: 820px; margin: 0 auto; padding: 48px 22px 80px; }
.topbar { display: flex; align-items: center; gap: 12px; margin-bottom: 34px; }
.topbar img { width: 38px; height: 38px; }
.brand { font-weight: 800; letter-spacing: 3px; text-transform: uppercase; color: var(--cyan);
  text-shadow: 0 0 18px rgba(63, 216, 255, 0.5); font-size: 17px; }
.back { margin-left: auto; color: var(--muted); text-decoration: none; font-size: 14px; }
.back:hover { color: var(--cyan); }
h1 { font-size: 30px; margin-bottom: 6px; }
.updated { color: var(--muted); font-size: 13px; margin-bottom: 30px; }
h2 { font-size: 19px; margin: 28px 0 10px; color: var(--cyan); }
p, li { color: #cfe3f2; font-size: 15px; margin-bottom: 10px; }
ul, ol { padding-left: 22px; margin-bottom: 10px; }
a { color: var(--cyan); }
.todo { background: rgba(127, 224, 255, 0.12); border: 1px solid rgba(127, 224, 255, 0.4);
  color: #7fe0ff; padding: 1px 7px; border-radius: 6px; font-size: 13px; font-weight: 600; }
.note { color: var(--muted); font-size: 13px; margin-top: 40px; border-top: 1px solid rgba(63,216,255,0.12); padding-top: 18px; }
.legal-foot { margin-top: 40px; display: flex; flex-wrap: wrap; gap: 16px; }
.legal-foot a { font-size: 13px; color: var(--muted); text-decoration: none; }
.legal-foot a:hover { color: var(--cyan); }
/* 404 */
.center404 { min-height: 100vh; display: flex; flex-direction: column; align-items: center;
  justify-content: center; text-align: center; padding: 24px; gap: 14px; }
.center404 img { width: 110px; height: 110px; filter: drop-shadow(0 0 40px rgba(31,176,224,0.5)); }
.center404 .code { font-size: 64px; font-weight: 800; letter-spacing: 4px; color: var(--cyan); }
.center404 a.cta { margin-top: 8px; text-decoration: none; padding: 12px 22px; border-radius: 12px;
  font-weight: 700; color: var(--bg); background: linear-gradient(90deg, var(--cyan), #1fb0e0); }
