/* 決まりのページ（privacy・terms・delete-account・tokushoho）だけの見た目。色と地は style.css の表を使う。 */
.hero-legal { height: 120px; }

.legal-main { margin-top: -56px; }

.lang-nav {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 0 0 16px;
}

.lang-nav a {
  padding: 6px 16px;
  border-radius: 999px;
  background: var(--card);
  box-shadow: var(--card-shadow);
  color: var(--accent-text);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.legal {
  margin-bottom: 20px;
  padding: 20px 20px 8px;
  overflow-wrap: anywhere;
}

.legal h1 {
  margin: 0;
  font-size: 22px;
  line-height: 1.35;
}

.legal .updated {
  margin: 4px 0 0;
  color: var(--text-secondary);
  font-size: 13px;
}

.legal h2 {
  margin: 24px 0 6px;
  padding-top: 16px;
  border-top: 1px solid var(--separator);
  font-size: 17px;
  line-height: 1.4;
}

.legal p,
.legal ul,
.legal ol { margin: 0 0 12px; }

.legal ul,
.legal ol { padding-left: 1.4em; }

.legal li + li { margin-top: 4px; }

.legal a { color: var(--accent-text); }

.legal h3 {
  margin: 16px 0 6px;
  font-size: 15px;
  line-height: 1.4;
}

.legal-table { margin: 0 0 12px; }

.legal-table dt {
  margin-top: 12px;
  font-weight: 700;
}

.legal-table dd { margin: 2px 0 0; }

.legal .related {
  margin-top: 24px;
  padding-top: 16px;
  border-top: 1px solid var(--separator);
  color: var(--text-secondary);
  font-size: 13px;
}

/* 本人に確かめてもらう所（下書きのあいだだけ。公開する前に消す）。 */
.confirm {
  padding: 1px 4px;
  border-radius: 4px;
  outline: 1px dashed var(--accent-text);
  color: var(--accent-text);
}

[hidden] { display: none !important; }
