/* Shared styling for /terms.html and /privacy.html. Plain reading-mode
   document — no main app frame. */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: #fafafa;
  color: #1f2937;
  font-family: -apple-system, BlinkMacSystemFont, "Apple SD Gothic Neo",
               "Helvetica Neue", Arial, sans-serif;
  font-size: 15px;
  line-height: 1.7;
}
a { color: #2563eb; text-decoration: none; }
a:hover { text-decoration: underline; }

.legal {
  max-width: 760px;
  margin: 0 auto;
  padding: 28px 22px 60px;
  background: #fff;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
  min-height: 100vh;
}
.legal-head { margin-bottom: 28px; }
.legal-head .back {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 13px; color: #6b7280; margin-bottom: 12px;
  text-decoration: none;
}
.legal-head .back:hover { color: #1d4ed8; }
.back-logo { display: block; }
.legal-head h1 { margin: 0; font-size: 26px; font-weight: 800; }
.legal-head .effective { color: #6b7280; font-size: 13px; margin: 4px 0 0; }

.legal section { margin: 28px 0; }
.legal h2 {
  font-size: 17px; font-weight: 700;
  border-bottom: 1px solid #e5e7eb;
  padding-bottom: 6px;
  margin: 0 0 12px;
}
.legal h3 { font-size: 14px; font-weight: 700; margin: 12px 0 6px; color: #374151; }
.legal p { margin: 8px 0; }
.legal ul, .legal ol { margin: 6px 0; padding-left: 22px; }
.legal li { margin: 4px 0; }
.legal .appendix p { margin: 0; }
.legal .hint { color: #6b7280; font-size: 13px; }
.legal .small { font-size: 13px; }

.legal-table {
  width: 100%; border-collapse: collapse;
  margin: 8px 0; font-size: 14px;
}
.legal-table th, .legal-table td {
  border: 1px solid #e5e7eb;
  padding: 8px 10px;
  text-align: left;
}
.legal-table thead th {
  background: #f9fafb; font-weight: 700;
}

.legal-foot {
  max-width: 760px;
  margin: 0 auto;
  padding: 24px 22px 60px;
  text-align: center;
  color: #6b7280;
  font-size: 13px;
}
.legal-foot a { color: #6b7280; }
