/* Базовое отображение XML-элементов как блоков */ feed, entry, title, link, updated, published, summary, content, author, name, email, uri, id { display: block; } /* Скрываем служебные элементы */ feed>id, feed>link[rel="self"], entry>id, entry>author, entry>link:not([rel="alternate"]) { display: none; } /* Основной контейнер */ feed { max-width: 800px; margin: 0 auto; padding: 2rem 1rem; font-family: system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif; background-color: var(--bg, #101010); color: var(--text, #a0a0a0); line-height: 1.5; } /* Заголовок блога */ feed>title { font-size: 2.5rem; font-weight: bold; margin-bottom: 0.5rem; color: var(--link-color, #a73afd); border-bottom: 2px solid var(--border, #909090); padding-bottom: 0.5rem; } /* Информация об авторе (только в корне) */ feed>author { display: flex; gap: 1rem; margin-bottom: 2rem; color: var(--text-secondary, #909090); font-size: 0.95rem; } feed>author>name { font-weight: 600; } feed>author>email, feed>author>uri { display: inline-block; } feed>author>uri { word-break: break-all; } /* Дата обновления ленты */ feed>updated { margin-bottom: 2rem; font-style: italic; color: var(--text-secondary, #909090); } feed>updated::before { content: "Обновлено: "; font-style: normal; } /* Карточка записи */ entry { margin-bottom: 2.5rem; padding: 1.5rem; background-color: var(--surface, #010101); border-radius: 8px; box-shadow: var(--shadow, 0 2px 8px rgba(0, 0, 0, 0.2)); border: 1px solid var(--border, #909090); } /* Заголовок записи */ entry>title { font-size: 1.8rem; font-weight: 600; margin-bottom: 0.75rem; color: var(--link-color, #a73afd); line-height: 1.3; } /* Ссылка на полный пост */ entry>link[rel="alternate"] { display: inline-block; margin-bottom: 1rem; font-size: 0.9rem; } entry>link[rel="alternate"]::before { content: "🔗 Читать полностью: "; color: var(--text-secondary, #909090); } entry>link[rel="alternate"]::after { content: attr(href); display: inline-block; margin-left: 0.25rem; color: var(--link-color, #a73afd); text-decoration: underline; text-underline-offset: 2px; word-break: break-all; } /* Даты */ entry>published, entry>updated { display: inline-block; margin-right: 1.5rem; margin-bottom: 1rem; font-size: 0.9rem; color: var(--text-secondary, #909090); } entry>published::before { content: "📅 Опубликовано: "; } entry>updated::before { content: "🔄 Обновлено: "; } /* Краткое содержание */ entry>summary { margin: 1rem 0; padding: 1rem; background-color: rgba(255, 255, 255, 0.03); border-left: 3px solid var(--link-color, #a73afd); border-radius: 0 4px 4px 0; font-size: 1rem; white-space: pre-wrap; word-break: break-word; } entry>summary::before { content: "📋 Аннотация"; display: block; font-weight: bold; margin-bottom: 0.75rem; color: var(--text-secondary, #909090); text-transform: uppercase; letter-spacing: 1px; font-size: 0.8rem; } /* Полное содержание */ entry>content { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px dashed var(--border, #909090); white-space: pre-wrap; word-break: break-word; } entry>content::before { content: "📄 Полный текст"; display: block; font-weight: bold; margin-bottom: 1rem; color: var(--text-secondary, #909090); text-transform: uppercase; letter-spacing: 1px; font-size: 0.8rem; } /* Адаптивность */ @media (max-width: 600px) { feed { padding: 1rem 0.75rem; } feed>title { font-size: 2rem; } entry { padding: 1rem; } entry>title { font-size: 1.5rem; } } /* Цветовые переменные */ :root { --bg: #101010; --surface: #010101; --border: #909090; --text: #a0a0a0; --text-secondary: #909090; --shadow: 0 2px 8px rgba(0, 0, 0, 0.2); --link-color: #a73afd; } /* Печатная версия */ @media print { feed { background: white; color: black; } entry { box-shadow: none; border: 1px solid #ccc; background: white; } entry>title { color: black; } entry>link[rel="alternate"]::after { color: black; } }