/* Programmatic SEO Content Styles
   Стили для psyfact-* классов, генерируемых ProgrammaticFormatter.
   Источник: docs/programmatic-seo/16_CONTENT_RENDERER.md */

/* === Общие === */
.psyfact-section-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #1e293b;
    margin: 2rem 0 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e2e8f0;
}

.psyfact-content a {
    color: #4A90E2;
    text-decoration: underline;
    text-decoration-color: #4A90E2;
    text-underline-offset: 2px;
}
.psyfact-content a:hover {
    color: #357ABD;
}

/* === Глоссарий === */
.psyfact-glossary { line-height: 1.8; }

.psyfact-glossary-definition { margin-bottom: 2rem; }
.psyfact-glossary-etymology { margin-bottom: 2rem; background: #f8fafc; padding: 1.5rem; border-radius: 0.5rem; }
.psyfact-glossary-example { margin-bottom: 2rem; background: #eff6ff; padding: 1.5rem; border-radius: 0.5rem; border-left: 4px solid #4A90E2; }

.psyfact-researchers-list { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.psyfact-researcher { background: #f1f5f9; padding: 0.25rem 0.75rem; border-radius: 1rem; font-size: 0.875rem; }

.psyfact-misconceptions-list { list-style: none; padding: 0; }
.psyfact-misconception { padding: 0.75rem 1rem; margin-bottom: 0.5rem; background: #fef2f2; border-radius: 0.375rem; border-left: 3px solid #ef4444; }

.psyfact-related-list { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.psyfact-related-term { background: #f0fdf4; padding: 0.25rem 0.75rem; border-radius: 1rem; font-size: 0.875rem; color: #166534; }

/* === Чек-листы === */
.psyfact-checklist { line-height: 1.8; }
.psyfact-checklist-intro { margin-bottom: 2rem; font-size: 1.1rem; }

.psyfact-signs-list { list-style: none; padding: 0; }
.psyfact-sign { padding: 1rem; margin-bottom: 0.5rem; background: #fffbeb; border-radius: 0.375rem; border-left: 3px solid #f59e0b; }
.psyfact-sign-name { display: block; font-weight: 600; color: #92400e; }
.psyfact-sign-desc { display: block; color: #64748b; margin-top: 0.25rem; }

.psyfact-steps-list { counter-reset: step; list-style: none; padding: 0; }
.psyfact-step { padding: 1.5rem; margin-bottom: 1rem; background: #f8fafc; border-radius: 0.5rem; border-left: 4px solid #4A90E2; }
.psyfact-step-title { display: block; font-size: 1.1rem; font-weight: 600; color: #1e293b; margin-bottom: 0.5rem; }
.psyfact-step-tip { margin-top: 0.75rem; padding: 0.75rem; background: #ecfdf5; border-radius: 0.375rem; font-size: 0.875rem; color: #065f46; }

.psyfact-checklist-dodont { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin: 2rem 0; }
.psyfact-do { background: #f0fdf4; padding: 1.5rem; border-radius: 0.5rem; }
.psyfact-dont { background: #fef2f2; padding: 1.5rem; border-radius: 0.5rem; }
.psyfact-do-title { color: #166534; }
.psyfact-dont-title { color: #991b1b; }
.psyfact-do-list li::before { content: "\2713 "; color: #22c55e; font-weight: bold; }
.psyfact-dont-list li::before { content: "\2717 "; color: #ef4444; font-weight: bold; }

.psyfact-checklist-help { background: #fef3c7; padding: 1.5rem; border-radius: 0.5rem; margin: 2rem 0; border-left: 4px solid #f59e0b; }

/* === FAQ === */
.psyfact-faq, .psyfact-faq-hub { margin: 2rem 0; }
.psyfact-faq-item, .psyfact-faq-hub-item { border: 1px solid #e2e8f0; border-radius: 0.5rem; margin-bottom: 0.5rem; overflow: hidden; }
.psyfact-faq-question, .psyfact-faq-hub-question { padding: 1rem 1.5rem; cursor: pointer; font-weight: 600; color: #1e293b; background: #f8fafc; display: block; }
.psyfact-faq-question:hover, .psyfact-faq-hub-question:hover { background: #f1f5f9; }
.psyfact-faq-answer, .psyfact-faq-hub-answer { padding: 1rem 1.5rem; color: #475569; }
.psyfact-faq-hub-source { display: block; margin-top: 0.5rem; font-size: 0.8rem; color: #94a3b8; }

/* === Сравнения === */
.psyfact-comparison { line-height: 1.8; }
.psyfact-comparison-methods { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin: 2rem 0; }
.psyfact-method { background: #f8fafc; padding: 1.5rem; border-radius: 0.5rem; }
.psyfact-method-name { color: #1e293b; margin-top: 0; }
.psyfact-method-duration, .psyfact-method-evidence { font-size: 0.875rem; color: #64748b; }
.psyfact-method-pros h3 { color: #166534; font-size: 1rem; }
.psyfact-method-cons h3 { color: #991b1b; font-size: 1rem; }

.psyfact-table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; }
.psyfact-table th { background: #f1f5f9; padding: 0.75rem 1rem; text-align: left; font-weight: 600; border-bottom: 2px solid #e2e8f0; }
.psyfact-table td { padding: 0.75rem 1rem; border-bottom: 1px solid #e2e8f0; }
.psyfact-table tr:hover td { background: #f8fafc; }

/* === Тесты === */
.psyfact-test { line-height: 1.8; }
.psyfact-disclaimer { background: #fef3c7; padding: 1rem 1.5rem; border-radius: 0.5rem; border-left: 4px solid #f59e0b; font-size: 0.875rem; color: #92400e; margin: 1.5rem 0; }
.psyfact-test-interactive { margin: 2rem 0; }
.psyfact-test-question { margin-bottom: 1.5rem; }
.psyfact-question-text { font-weight: 600; margin-bottom: 0.5rem; }
.psyfact-question-options { list-style: none; padding: 0; }
.psyfact-question-options li { padding: 0.5rem 1rem; margin-bottom: 0.25rem; border: 1px solid #e2e8f0; border-radius: 0.375rem; cursor: pointer; }
.psyfact-question-options li:hover { background: #eff6ff; border-color: #4A90E2; }
.psyfact-recommendations-list li { padding: 0.5rem 0; border-bottom: 1px solid #f1f5f9; }

/* === Источники === */
.psyfact-references { margin-top: 3rem; padding-top: 2rem; border-top: 1px solid #e2e8f0; }
.psyfact-references-list { list-style-type: decimal; padding-left: 1.5rem; }
.psyfact-reference { margin-bottom: 0.75rem; font-size: 0.9rem; color: #475569; }
.psyfact-reference em { font-style: italic; }
.psyfact-reference a { color: #4A90E2; }

/* === Responsive === */
@media (max-width: 768px) {
    .psyfact-checklist-dodont { grid-template-columns: 1fr; }
    .psyfact-comparison-methods { grid-template-columns: 1fr; }
    .psyfact-table { font-size: 0.875rem; }
    .psyfact-table th, .psyfact-table td { padding: 0.5rem; }
}
