html { scroll-behavior: smooth; }
code { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 0.9em; }
p code, li code, dd code, td code { background: #f1f5f9; padding: 0.1rem 0.35rem; border-radius: 0.3rem; color: #1e40af; }
pre { border-radius: 0.75rem; overflow: auto; }
pre code.hljs { padding: 1.1rem 1.25rem; font-size: 0.85rem; line-height: 1.6; }

.section-title { font-size: 1.5rem; font-weight: 700; color: #0f172a; display: flex; align-items: center; gap: 0.6rem; }
.section-title i { color: #2f7cf6; font-size: 1.15rem; }

.feature-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 0.9rem; padding: 1.4rem; box-shadow: 0 1px 2px rgba(15,23,42,.04); }
.feature-card h3 { font-weight: 600; margin-top: 0.75rem; color: #0f172a; }
.feature-card p { margin-top: 0.4rem; font-size: 0.9rem; color: #475569; line-height: 1.6; }

.step { display: flex; gap: 0.9rem; align-items: flex-start; background: #fff; border: 1px solid #e2e8f0; border-radius: 0.75rem; padding: 1rem 1.1rem; }
.step-num { flex: none; width: 1.75rem; height: 1.75rem; border-radius: 9999px; background: #2f7cf6; color: #fff; font-weight: 600; font-size: 0.85rem; display: inline-flex; align-items: center; justify-content: center; }
.step p { margin-top: 0.2rem; font-size: 0.9rem; color: #475569; }

.th { text-align: left; padding: 0.7rem 1rem; font-weight: 600; font-size: 0.8rem; }
.td { padding: 0.7rem 1rem; vertical-align: top; }
.badge-get, .badge-post { display: inline-block; font-size: 0.7rem; font-weight: 700; padding: 0.15rem 0.5rem; border-radius: 0.3rem; letter-spacing: .02em; }
.badge-get { background: #dcfce7; color: #166534; }
.badge-post { background: #dbeafe; color: #1e40af; }

.tab-btn { padding: 0.4rem 0.9rem; border-radius: 0.5rem; border: 1px solid #e2e8f0; background: #fff; color: #475569; }
.tab-btn:hover { border-color: #93c5fd; color: #1f63d6; }
.tab-btn.active { background: #2f7cf6; border-color: #2f7cf6; color: #fff; }

.client-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 0.9rem; padding: 1.2rem 1.3rem; }
.client-card h3 { font-weight: 600; color: #0f172a; }
.client-card dl { margin-top: 0.7rem; display: grid; grid-template-columns: auto 1fr; gap: 0.35rem 1rem; font-size: 0.875rem; }
.client-card dt { color: #64748b; white-space: nowrap; }
.client-card dd { color: #0f172a; word-break: break-all; }

.faq-item { background: #fff; border: 1px solid #e2e8f0; border-radius: 0.75rem; padding: 0.9rem 1.1rem; }
.faq-item summary { cursor: pointer; font-weight: 600; color: #0f172a; list-style: none; display: flex; justify-content: space-between; align-items: center; }
.faq-item summary::after { content: '+'; color: #94a3b8; font-weight: 400; }
.faq-item[open] summary::after { content: '−'; }
.faq-item p { margin-top: 0.6rem; font-size: 0.9rem; color: #475569; line-height: 1.65; }
