docs/Website: Niveus at upstream f340d56; fonts are binary

The vendored copy of Niveus, the site's design system, brought up to
the current upstream (github.com/Nexoniarz/Niveus, 2026-10-18). The
tree under docs/Website/niveus is upstream's byte for byte.

.gitattributes says `* text eol=lf` and listed the binary types it
knew, and woff2 was not one of them: Niveus's InstrumentSans-Italic
had a CR LF pair in its compressed data, and committing it turned that
into LF and the font into garbage. woff, woff2, otf, ico, gif, webp,
pdf and wasm are binary now.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
This commit is contained in:
Nexoniarz 2026-10-23 15:10:40 +02:00
commit a8215149a3
56 changed files with 8139 additions and 279 deletions

View file

@ -240,12 +240,14 @@
<header class="hero">
<p class="nv-overline">Design system</p>
<h1 class="nv-display">Surfaces that feel understandable.</h1>
<h1 class="nv-display">Surfaces you could press.</h1>
<p class="nv-prose">
Niveus is a calm, adaptive interface language built on clarity, depth,
material and consistency. The same components carry their hierarchy from
light to dark, because nothing below is defined in terms of an
appearance — only in terms of a role.
Niveus is a tactile, adaptive interface language. Controls are bevelled
keys with light falling across them, fields are wells cut into the
surface, and glass is kept for the chrome that floats over everything
else. The same components carry their hierarchy from light to dark,
because nothing below is defined in terms of an appearance — only in
terms of a role.
</p>
<div class="demo-row">
<button class="nv-button nv-button--primary nv-button--lg" data-nv-dialog="welcome">
@ -513,7 +515,7 @@
</div>
<div class="type-row">
<span class="nv-overline">Overline</span>
<span class="type-row__meta">--nv-font-caption · uppercase</span>
<span class="type-row__meta">--nv-font-engraved · mono, uppercase</span>
</div>
</div>
</section>
@ -762,6 +764,58 @@
</div>
</div>
<div class="panel">
<h3 class="nv-title" style="margin-block-end: var(--nv-space-4)">Window</h3>
<div class="nv-bed nv-bed--quiet" style="display: grid; gap: var(--nv-space-6); grid-template-columns: repeat(auto-fit, minmax(min(20rem, 100%), 1fr)); align-items: start">
<div class="nv-window">
<div class="nv-window__titlebar">
<div class="nv-window__controls">
<button class="nv-window__control nv-window__control--close" aria-label="Close"></button>
<button class="nv-window__control nv-window__control--minimize" aria-label="Minimize"></button>
<button class="nv-window__control nv-window__control--zoom" aria-label="Zoom"></button>
</div>
<span class="nv-window__title">Appearance</span>
<div class="nv-window__actions">
<button class="nv-button nv-button--ghost nv-button--sm nv-button--icon" aria-label="Search">
<svg class="nv-button__icon" viewBox="0 0 24 24" fill="none" aria-hidden="true"><circle cx="11" cy="11" r="6.5" stroke="currentColor" stroke-width="2"/><path d="m20 20-4.2-4.2" stroke="currentColor" stroke-width="2" stroke-linecap="round"/></svg>
</button>
</div>
</div>
<div class="nv-window__body nv-stack" style="padding: var(--nv-space-5)">
<p class="nv-overline">Style</p>
<div class="nv-nav-tabs" role="tablist" aria-label="Appearance">
<button class="nv-nav__item" role="tab" aria-selected="false">Light</button>
<button class="nv-nav__item" role="tab" aria-selected="true">Dark</button>
<button class="nv-nav__item" role="tab" aria-selected="false">System</button>
</div>
<label class="nv-choice"><input class="nv-switch" type="checkbox" checked> Translucent chrome</label>
<label class="nv-choice"><input class="nv-switch" type="checkbox"> Reduce motion</label>
<div class="nv-field">
<label class="nv-field__label" for="win-wallpaper">Wallpaper</label>
<input class="nv-input" id="win-wallpaper" value="~/Pictures/dusk-ridge.jpg">
</div>
<div class="nv-cluster" style="justify-content: flex-end">
<button class="nv-button">Reset</button>
<button class="nv-button nv-button--primary">Apply</button>
</div>
</div>
</div>
<div class="nv-window nv-window--inactive">
<div class="nv-window__titlebar">
<div class="nv-window__controls">
<button class="nv-window__control nv-window__control--close" aria-label="Close"></button>
<button class="nv-window__control nv-window__control--minimize" aria-label="Minimize"></button>
<button class="nv-window__control nv-window__control--zoom" aria-label="Zoom"></button>
</div>
<span class="nv-window__title">Inactive — hover the lights</span>
</div>
<div class="nv-window__body" style="padding: var(--nv-space-5)">
<p class="nv-caption">A window without focus greys its lights and steps back one elevation. The lights take their color back the moment the pointer reaches them.</p>
</div>
</div>
</div>
</div>
<div class="panel">
<h3 class="nv-title" style="margin-block-end: var(--nv-space-4)">Dialog</h3>
<div class="demo-row">
@ -1315,7 +1369,7 @@
previous.removeAttribute("aria-current");
});
item.setAttribute("aria-current", "page");
});
}, { scope: group });
});
}