/* Auto-extracted from templates/payment/terms_usage.html */

.terms-page-wrap {
  max-width: 760px;
  margin: 30px auto 60px;
  padding: 0 16px;
  font-family: 'Nanum Gothic', 'Apple SD Gothic Neo', sans-serif;
}
.terms-page-header {
  border-bottom: 3px solid #1abc9c;
  padding-bottom: 14px;
  margin-bottom: 28px;
}
.terms-page-header h1 {
  font-size: 22px;
  font-weight: 800;
  color: #2c3e50;
  margin: 0 0 6px;
}
.terms-page-header .terms-date {
  font-size: 12px;
  color: #8492a6;
}
.terms-page-body { color: #3d4b5a; line-height: 2; font-size: 13.5px; }
.terms-page-body h6 {
  font-size: 14px;
  font-weight: 800;
  color: #2c3e50;
  margin: 24px 0 8px;
  padding-left: 10px;
  border-left: 3px solid #1abc9c;
}
.terms-page-body p  { margin-bottom: 10px; }
.terms-page-body ol,
.terms-page-body ul { padding-left: 22px; margin-bottom: 10px; }
.terms-page-body li { margin-bottom: 5px; }
.terms-page-body table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 14px;
  font-size: 13px;
}
.terms-page-body table th,
.terms-page-body table td {
  border: 1px solid #e8ecf0;
  padding: 9px 12px;
  text-align: left;
}
.terms-page-body table th {
  background: #f4f6f9;
  font-weight: 700;
  color: #2c3e50;
}

.terms-page {
  max-width: 1100px;
}

.terms-header {
  align-items: flex-end;
}

.terms-pdf-shell {
  height: calc(100vh - 210px);
  min-height: 620px;
  overflow: hidden;
  border: 1px solid var(--border);
  border-radius: var(--radius-sm);
  background: var(--surface);
}

.terms-pdf-viewer {
  width: 100%;
  height: 100%;
  display: block;
}

.terms-pdf-fallback {
  height: 100%;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 16px;
  color: var(--text2);
}

@media (max-width: 768px) {
  .terms-pdf-shell {
    height: calc(100vh - 180px);
    min-height: 520px;
  }
}
