terminal is DARK-canonical (green phosphor-on-black signature); lead with
the dark home per the Wave B dark-first rule.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
The host does not consume bundled_fonts (LoadedPlugin.BundledFonts is dead
code), so declare @font-face against the served /templates/terminal/fonts/
paths and point each preset's typography.fontHeading/body/mono at
template:terminal:<Family>. Mono faces now render instead of fallback sans.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Host Tailwind JIT does not scan theme templates, so responsive grid/hero
utilities (sm:/md:/lg:grid-cols-*, min-h-screen, arbitrary values) are
dropped and multi-column layouts collapse to one column. Ship the
load-bearing responsive layout as compiled theme CSS and point the
override templates at it. Layout only — colours stay on semantic tokens.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Layout/whitespace (home page):
- feature-grid rendered as 3 full-width ballooning rows because the host
Tailwind scan covers rendered block HTML, not theme override .ninjatpl
files, so lg:grid-cols-* utilities in overrides are purge-fragile and
collapsed to one column. Move multi-column layout to plain CSS in
css.input_css_append (.tty-grid*, never purged) and apply to
feature-grid, stats, pricing, contact-card + a .tty-form-grid for
contact-form (col-span utilities were equally fragile).
- code_console / boot_log persona blocks shipped no max-width wrapper and
ran edge-to-edge on the full-width landing page while sibling sections
were contained; wrap both in a centred .tty-console-shell with a mobile
side gutter.
- CTA heading read dark-on-green (fails contrast): .terminal-heading in
assets/style.css hardcoded color:foreground, overriding the band's
primary-foreground. Change to color:inherit so headings on inverted
bands read correctly.
- Trim oversized section padding (py-16 md:py-24 -> py-12 md:py-20; the
window-nested contact sections -> py-8 md:py-12).
Mobile:
- All multi-column grids now collapse to 1 column via CSS media queries
(minmax(0,1fr) prevents long/monospace content forcing horizontal
overflow); console blocks keep overflow-x scroll inside their own box.
- Pin hero min-heights to CSS (.tty-hero*) since min-h-screen / arbitrary
min-h-[..] utilities are also purge-fragile.
Persona (phosphor TTY, window chrome, man-page, canvas hero) unchanged.
No version bump. make + check-safety both exit 0.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Replace the retired .so Makefile with the wasm/.bnp convention (build /
verify / archive-check / publish via ninja plugin build), add a
.gitignore for *.so and *.bnp artifacts, and refresh the stale
[compatibility] block_core constraint to the v0.15 era.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Add wasmguest.Serve(Registration) boilerplate and bump block/core to v0.15.2
for the .so->wasm migration. Built + published as .bnp to the dev registry.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Bootstrapped during the 2026-06-06 BlockNinja consolidation. Was previously
an unversioned directory inside ~/src/blockninja-themes/terminal.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>