- hugo.toml: [taxonomies] series = "series"; [params.socialIcons] (github, telegram, rss)
- layouts/partials/series_nav.html: модуль «Серия: N из M» с навигацией prev/next
(сортировка по series_order), поддержка кириллических названий серий
- layouts/_default/single.html: override темы — подключение series_nav перед контентом
- layouts/partials/extend_footer.html: JS переносит .logo-switches из .logo в конец
.nav (переключатель темы — справа после меню); server-rendered блок соцсетей
переносится к меню; иконки — через штатный svg.html темы (github/telegram/rss)
- assets/css/extended/typewriter.css: стили .social-icons-inline, .series-nav;
.logo-switches после переноса попадает под .nav > .logo-switches (order:2)
Closes openspec change series-taxonomy-and-header
- extend_footer.html: убран ранний return при prefers-reduced-motion — печать идёт всегда, мигание гасится только через CSS (кейфрейм tw-blink уже отключается)
- typewriter.css: убрано двойное auto-поле (.logo margin-inline-end:auto конфликтовало с #menu margin-inline-start:auto при justify-content:space-between) — теперь только menu толкает вправо, солнышко встаёт сразу за меню
- assets/css/extended/typewriter.css: flex-order в .nav (logo | menu | toggle), article.first-entry как .post-entry (фон/рамка/скругление/отступ)
- layouts/partials/extend_head.html (новый): resources.Get typewriter.css — Hugo НЕ подхватывает корневой assets/css/extended через resources.Match темы, поэтому прошлый CSS не применялся (JS работал, стили нет)
- openspec: change theme-toggle-first-post-card (proposal/design/specs/tasks)
ВАЖНО: прошлый деплой typewriter-эффекта был неполным — CSS не подключался. Этот коммит чинит оба бага + курсор.
- layouts/partials/extend_footer.html: инлайн-скрипт (печать/пауза/стирание/мигание, prefers-reduced-motion, слова из [params.typewriter])
- assets/css/extended/typewriter.css: блочный мигающий курсор
- hugo.toml: [params.typewriter] words
- openspec/changes/header-typewriter: proposal/design/specs/tasks
Без зависимостей (Alpine не нужен), тема не модифицируется.