/* Общие стили для правовых страниц (privacy, agreement, refund, recurring) */

.doc-main {
  max-width: 760px;
  margin: 0 auto;
  padding: 42px max(22px, env(safe-area-inset-left)) 56px max(22px, env(safe-area-inset-right));
}

.doc-card {
  padding: clamp(22px, 4vw, 34px) clamp(20px, 4vw, 32px);
}

.doc-meta {
  color: var(--text-muted);
  font-size: 0.84rem;
  line-height: 1.55;
  margin: 0 0 24px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--border-main);
}

.doc-card h2 {
  margin: 0 0 4px;
  font-size: clamp(1.28rem, 3.2vw, 1.58rem);
  font-weight: 700;
  letter-spacing: -0.02em;
  color: var(--text-main);
  line-height: 1.22;
}

.doc-card h3 {
  margin: 26px 0 12px;
  font-size: 1.05rem;
  font-weight: 600;
  color: var(--text-main);
  letter-spacing: -0.015em;
  line-height: 1.35;
}

.doc-card h3:first-of-type {
  margin-top: 4px;
}

.doc-card p {
  margin: 0 0 15px;
  color: var(--text-muted);
  line-height: 1.66;
  font-size: 0.94rem;
}

.doc-card p + p {
  margin-top: -2px;
}

.doc-card p:last-child {
  margin-bottom: 0;
}

.doc-card a {
  color: var(--glow-blue);
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-color: rgba(59, 130, 246, 0.4);
  transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.doc-card a:hover {
  color: var(--text-main);
  text-decoration-color: var(--glow-blue);
}

[data-theme="light"] .doc-card a {
  color: #1d4ed8;
}

[data-theme="light"] .doc-card a:hover {
  color: #0f172a;
}

/* Списки без стандартных маркеров — короткая линия слева */
.doc-card ul {
  margin: 0 0 18px 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.doc-card li {
  position: relative;
  margin: 0;
  padding: 10px 14px 10px 18px;
  color: var(--text-muted);
  line-height: 1.62;
  font-size: 0.93rem;
  background: var(--element-bg);
  border: 1px solid var(--border-main);
  border-radius: 10px;
  border-left-width: 3px;
  border-left-color: var(--accent);
}

.doc-card .btn-glass {
  margin-top: 22px;
}

@media (max-width: 768px) {
  .doc-main {
    padding-top: 36px;
    padding-bottom: 48px;
  }

  .doc-card {
    padding: 22px 18px;
  }

  .doc-card h3 {
    margin-top: 22px;
  }

  .doc-card ul {
    gap: 8px;
  }

  .doc-card li {
    padding: 9px 12px 9px 16px;
    font-size: 0.9rem;
  }
}
