:root {
  color-scheme: dark;
  --legal-bg: #070914;
  --legal-panel: rgba(14, 18, 32, 0.88);
  --legal-line: rgba(176, 188, 255, 0.15);
  --legal-text: #f7f8ff;
  --legal-muted: #aab1c7;
  --legal-cyan: #42d4ff;
  --legal-violet: #8b81ff;
}

html { scroll-behavior: smooth; }

body {
  min-height: 100vh;
  background:
    radial-gradient(circle at 14% 4%, rgba(41, 139, 255, 0.16), transparent 29rem),
    radial-gradient(circle at 88% 3%, rgba(142, 78, 255, 0.18), transparent 31rem),
    linear-gradient(180deg, #070914 0%, #0a0d19 48%, #070914 100%) !important;
  color: var(--legal-text) !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-image:
    linear-gradient(rgba(156, 173, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(156, 173, 255, 0.045) 1px, transparent 1px);
  background-size: 52px 52px;
  mask-image: linear-gradient(to bottom, #000 0%, transparent 82%);
}

.container { width: min(100% - 40px, 980px) !important; }

header {
  border: 0 !important;
  padding: 16px 0 0 !important;
}

.legal-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 72px;
  padding: 10px 14px;
  border: 1px solid var(--legal-line);
  border-radius: 22px;
  background: rgba(8, 11, 22, 0.72);
  box-shadow: 0 16px 50px rgba(0, 0, 0, 0.24);
  backdrop-filter: blur(20px);
}

.brand { display: inline-flex; align-items: center; }
.brand img {
  width: auto;
  height: 48px;
  max-width: 176px;
  object-fit: contain;
  filter: drop-shadow(0 10px 28px rgba(51, 181, 255, 0.26));
}

.legal-actions { display: flex; align-items: center; gap: 10px; }
.legal-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 15px;
  border: 1px solid var(--legal-line);
  border-radius: 999px;
  color: #d9dded;
  background: rgba(255, 255, 255, 0.045);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  transition: border-color 180ms ease, background 180ms ease;
}
.legal-link:hover { border-color: rgba(117, 104, 255, 0.5); background: rgba(117, 104, 255, 0.1); }

main {
  margin: 30px auto 56px !important;
  padding: clamp(30px, 5vw, 58px) !important;
  border: 1px solid var(--legal-line);
  border-radius: 32px;
  background:
    radial-gradient(circle at 92% 0%, rgba(164, 92, 255, 0.1), transparent 32%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.055), rgba(255, 255, 255, 0.018)),
    #0b0f1c;
  box-shadow: 0 32px 90px -40px rgba(0, 0, 0, 0.9), 0 0 72px rgba(103, 91, 255, 0.08);
}

.kicker { color: #a9a2ff !important; }
h1 { color: var(--legal-text); letter-spacing: -0.055em; }
.updated { color: var(--legal-muted) !important; }

section {
  margin-top: 18px !important;
  padding: 24px !important;
  border: 1px solid var(--legal-line) !important;
  border-radius: 20px;
  background: rgba(255, 255, 255, 0.032) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035);
}

h2 { color: var(--legal-text); }
p, li { color: var(--legal-muted) !important; }
section a { color: var(--legal-cyan); text-underline-offset: 3px; }

footer {
  border-top-color: var(--legal-line) !important;
  color: var(--legal-muted) !important;
}
.footer-links a { text-underline-offset: 4px; }

a:focus-visible {
  outline: 2px solid var(--legal-cyan);
  outline-offset: 3px;
  border-radius: 6px;
}

@media (max-width: 620px) {
  .container { width: min(100% - 28px, 980px) !important; }
  .legal-nav { min-height: 62px; padding: 8px 10px; border-radius: 18px; }
  .brand img { height: 40px; max-width: 140px; }
  .legal-actions .legal-link:first-child { display: none; }
  .legal-link { min-height: 38px; padding: 0 12px; font-size: 12px; }
  main { margin-top: 20px !important; padding: 28px 20px !important; border-radius: 24px; }
  section { padding: 20px !important; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}
