/* ===========================================================
   Unicode · Pagine legali (Privacy / Cookie Policy)
   =========================================================== */
:root {
  --lg-bg:      #070a18;
  --lg-surface: #0f1530;
  --lg-indigo:  #303c97;
  --lg-blue:    #5d76b8;
  --lg-peri:    #a0b0da;
  --lg-text:    #e8ecff;
  --lg-muted:   #7585b5;
  --lg-border:  rgba(160, 176, 218, .14);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background:
    radial-gradient(1100px 600px at 80% -10%, rgba(48, 60, 151, .25), transparent 60%),
    var(--lg-bg);
  color: var(--lg-text);
  font-family: 'Space Grotesk', system-ui, sans-serif;
  line-height: 1.65;
  min-height: 100vh;
}

.lg-nav {
  position: sticky;
  top: 0;
  z-index: 50;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  background: rgba(7, 10, 24, .72);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--lg-border);
}
.lg-nav img { height: 30px; width: auto; display: block; }
.lg-nav a.lg-back {
  font-family: 'Outfit', system-ui, sans-serif;
  font-size: .88rem;
  color: var(--lg-peri);
  text-decoration: none;
}
.lg-nav a.lg-back:hover { color: var(--lg-text); }

.lg-wrap {
  max-width: 820px;
  margin: 0 auto;
  padding: 56px 24px 96px;
}

.lg-eyebrow {
  font-family: 'Outfit', system-ui, sans-serif;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-size: .74rem;
  color: var(--lg-blue);
  margin: 0 0 10px;
}
.lg-wrap h1 {
  font-family: 'Outfit', system-ui, sans-serif;
  font-size: clamp(1.8rem, 4vw, 2.6rem);
  font-weight: 800;
  line-height: 1.1;
  margin: 0 0 12px;
}
.lg-updated {
  color: var(--lg-muted);
  font-size: .86rem;
  margin: 0 0 36px;
}

.lg-wrap h2 {
  font-family: 'Outfit', system-ui, sans-serif;
  font-size: 1.3rem;
  font-weight: 700;
  margin: 40px 0 12px;
  padding-top: 8px;
}
.lg-wrap h3 {
  font-family: 'Outfit', system-ui, sans-serif;
  font-size: 1.05rem;
  font-weight: 600;
  margin: 26px 0 8px;
}
.lg-wrap p, .lg-wrap li {
  color: #c8d0f0;
  font-size: .95rem;
}
.lg-wrap ul { padding-left: 22px; }
.lg-wrap li { margin-bottom: 6px; }
.lg-wrap a { color: var(--lg-blue); text-decoration: underline; text-underline-offset: 2px; }
.lg-wrap strong { color: var(--lg-text); }

.lg-card {
  background: rgba(15, 21, 48, .6);
  border: 1px solid var(--lg-border);
  border-radius: 16px;
  padding: 22px 24px;
  margin: 24px 0;
}

.lg-table {
  width: 100%;
  border-collapse: collapse;
  margin: 16px 0 8px;
  font-size: .86rem;
}
.lg-table th, .lg-table td {
  text-align: left;
  padding: 11px 12px;
  border-bottom: 1px solid var(--lg-border);
  vertical-align: top;
}
.lg-table th {
  font-family: 'Outfit', system-ui, sans-serif;
  color: var(--lg-peri);
  font-weight: 600;
  background: rgba(48, 60, 151, .14);
}
.lg-table td { color: #c8d0f0; }
.lg-table-wrap { overflow-x: auto; }

.lg-toc {
  background: rgba(15, 21, 48, .5);
  border: 1px solid var(--lg-border);
  border-radius: 14px;
  padding: 18px 22px;
  margin: 0 0 36px;
}
.lg-toc h2 { margin: 0 0 8px; font-size: 1rem; }
.lg-toc ol { margin: 0; padding-left: 20px; columns: 2; column-gap: 28px; }
.lg-toc li { color: var(--lg-peri); }
.lg-toc a { color: var(--lg-peri); text-decoration: none; }
.lg-toc a:hover { color: var(--lg-text); text-decoration: underline; }

.lg-foot {
  border-top: 1px solid var(--lg-border);
  margin-top: 56px;
  padding-top: 22px;
  color: var(--lg-muted);
  font-size: .82rem;
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
}
.lg-foot a { color: var(--lg-muted); text-decoration: none; cursor: pointer; }
.lg-foot a:hover { color: var(--lg-peri); }
.lg-foot span { color: rgba(160, 176, 218, .3); }

@media (max-width: 600px) {
  .lg-toc ol { columns: 1; }
}
