/* Legal-Pages — eigenes Layout für lange Lesetexte. */

body.legal-page {
  overflow: auto;
  display: flex;
  flex-direction: column;
}

.legal-grid {
  display: flex;
  justify-content: center;
  padding: 1.5rem 0.7rem 2rem;
  flex: 1;
}

.legal-card {
  position: relative;
  background: var(--bg-card);
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 2rem 2.4rem 1.6rem;
  max-width: 820px;
  width: 100%;
  box-shadow:
    0 0 0 1px rgba(255, 90, 46, 0.04),
    0 6px 18px rgba(0, 0, 0, 0.4);
}

.legal-card h1 {
  font-family: var(--font-mono);
  font-size: 22px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--accent);
  margin: 0 0 1rem;
}
.legal-card h2 {
  font-family: var(--font-mono);
  font-size: 13px;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--accent);
  margin: 1.6rem 0 0.4rem;
}
.legal-card p,
.legal-card ul,
.legal-card ol {
  font-size: 13px;
  line-height: 1.6;
  color: var(--fg);
  margin: 0.4rem 0;
}
.legal-card ul,
.legal-card ol {
  padding-left: 1.2rem;
}
.legal-card li { margin: 0.2rem 0; }

.legal-card a {
  color: var(--accent);
  text-decoration: none;
  border-bottom: 1px dashed rgba(255, 90, 46, 0.4);
}
.legal-card a:hover {
  border-bottom-style: solid;
}

.legal-lead {
  font-size: 14px !important;
  color: var(--fg);
  border-left: 2px solid var(--accent);
  padding: 0.5rem 0.9rem;
  background: rgba(255, 90, 46, 0.04);
  border-radius: 0 6px 6px 0;
}

.legal-block {
  font-family: var(--font-mono);
  font-size: 12px;
  padding: 0.6rem 0.9rem;
  background: rgba(255, 255, 255, 0.02);
  border-radius: 6px;
  color: var(--fg);
}

.legal-footer {
  margin-top: 2rem !important;
  padding-top: 0.8rem;
  border-top: 1px dashed rgba(255, 90, 46, 0.2);
  color: var(--fg-muted);
  font-style: italic;
  font-size: 11px !important;
}

.dashboard-footer a {
  color: var(--fg-muted);
  text-decoration: none;
}
.dashboard-footer a:hover {
  color: var(--accent);
}
