@layer legal {
  .legal-page { background: var(--void); color: var(--text); min-height: 100vh; }
  .legal-page section { min-height: auto; padding: 0; }

  .legal-header {
    display: flex; align-items: center; justify-content: space-between;
    padding: var(--sp-6) var(--sp-8); border-bottom: 1px solid var(--border);
    font-family: var(--font-mono); font-size: 12px;
  }

  .legal-back {
    color: var(--acid-40); text-decoration: none; letter-spacing: 1px;
    transition: color var(--ease-fast);

    &:hover { color: var(--acid); }
    &::before { content: '← '; }
  }

  .legal-lang {
    display: flex; gap: var(--sp-3);

    & a {
      color: var(--text-dim); text-decoration: none; letter-spacing: 1px;
      transition: color var(--ease-fast);

      &:hover, &.active { color: var(--acid); }
    }
  }

  .legal-main {
    max-width: 860px; margin: 0 auto;
    padding: var(--sp-10) var(--sp-8) var(--sp-12);
  }

  .legal-title {
    font-family: var(--font-display);
    font-size: clamp(32px, 5vw, 48px);
    letter-spacing: 2px; color: var(--text);
    margin-bottom: var(--sp-2);
  }

  .legal-updated {
    font-family: var(--font-mono); font-size: 11px;
    color: var(--acid-30); letter-spacing: 1px;
    margin-bottom: var(--sp-9);
  }

  .legal-body {
    font-family: var(--font-body); font-size: 15px;
    line-height: 1.8; color: var(--text-muted);

    & h2 {
      font-family: var(--font-display); font-size: 24px;
      letter-spacing: 1px; color: var(--text);
      border-bottom: 1px solid var(--border); padding-bottom: var(--sp-2);
      margin-top: var(--sp-9); margin-bottom: var(--sp-4);
    }

    & h3 {
      font-family: var(--font-display); font-size: 19px;
      letter-spacing: 1px; color: var(--text);
      margin-top: var(--sp-6); margin-bottom: var(--sp-2);
    }

    & p { margin-bottom: var(--sp-4); }

    & ul, & ol {
      margin-bottom: var(--sp-4); padding-left: var(--sp-6);

      & li { margin-bottom: var(--sp-2); }
    }

    & a {
      color: var(--electric); text-decoration: none;
      border-bottom: 1px solid rgba(0,240,255,0.2);
      transition: border-color var(--ease-fast);

      &:hover { border-bottom-color: var(--electric); }
    }
  }

  .legal-contact-block {
    font-family: var(--font-mono); font-size: 13px;
    border-left: 2px solid var(--acid-20);
    padding: var(--sp-3) var(--sp-5);
    margin: var(--sp-4) 0; color: var(--text-muted);
    line-height: 1.8;
  }

  .legal-footer {
    border-top: 1px solid var(--border);
    padding: var(--sp-8) var(--sp-8);
    text-align: center; font-family: var(--font-mono);
    font-size: 11px; color: var(--text-dim);

    & a {
      color: var(--acid-25); text-decoration: none;
      transition: color var(--ease-fast);

      &:hover { color: var(--acid); }
    }

    & .legal-footer-sep { margin: 0 var(--sp-3); opacity: 0.3; }
  }

  @media (max-width: 700px) {
    .legal-header { padding: var(--sp-4); }
    .legal-main { padding: var(--sp-7) var(--sp-4) var(--sp-9); }
    .legal-body { font-size: 14px; }
    .legal-title { margin-bottom: var(--sp-1); }
  }
}
