00

Hero: Vorschlag

Digitalstudio · zwei Leute · Deutschland

masticfrog.de

Wir entwerfen und bauen Websites, CRMs und Browserspiele, von der ersten Skizze bis zum Livegang.

Probably bad vibecoding projects coming soon

Der Hero läuft immer auf Ink, unabhängig vom Modus. Logo 216 px (9 × 24), Wortmarke in Pixelify Sans, Fließtext in Sans, Kicker und Fußzeile in Mono.

01

Farben: Resin

Die Skala stammt aus dem Logo und ändert sich nie. Amber ist die einzige Akzentfarbe; Ink ist der Träger, auf dem das Logo immer steht.

#fffaf0Resin 100 · Augenweiß
#f6e7b4Resin 200 · Bauch, Buttontext
#e0c377Resin 400 · Amber, Akzent
#b8933fResin 600 · Schatten
#6b4f1aResin 800 · Kontur
02

Flächen: LightDark

#eae2d2#100e0b
surface/page
Seitengrund
#f9f6ef#1e1b16
surface/panel
Karten, Kopfzeile
#2b2114
surface/ink
Logo-Träger, in beiden Modi gleich
#cabda3#463f33
border/hairline
Trennlinien, Kartenrand
#8a7159#786e5a
border/strong
Sekundärbutton, Freiraum
#40382a#d8cdb4
text/body
Fließtext auf Panel
03

Status & Feedback

Statusfarben sind kräftig und eindeutig: sie müssen auf Panel-Flächen sofort auffallen. Die Farbe heißt danger (Zustand: Fehler oder unumkehrbare Aktion), die Button-Variante heißt destructive (die Handlung selbst). Jeder Zustand hat drei Werte: Rahmen, Fläche und Text. Nie eine Statusfarbe als Akzent oder Dekoration verwenden.

Success

Bestätigte Aktion, gespeicherter Zustand.

status/success #2f6b1f#96e06a status/success-bg #dcefd0#1a2612
Warning

Etwas braucht Aufmerksamkeit, blockiert aber nicht.

status/warning #8a5300#ffc44d status/warning-bg #fbe6b4#2b2110
Danger

Fehler und unumkehrbare Aktionen.

status/danger #a81f0e#ff8e79 status/danger-bg #fbdcd6#2e1613
Info

Neutraler Hinweis, kein Handlungsdruck.

status/info #1c4a72#7cc4ff status/info-bg #d4e6f5#121e2b

Meldungen

Änderungen gespeichert.
Domain ist noch nicht verifiziert.
Upload fehlgeschlagen: Datei zu groß.
Der Export läuft im Hintergrund.

Badges & Button-Variante „destructive“

Success Warning Danger Info

Destruktive Aktionen nur gefüllt, wenn sie die Primäraktion des Dialogs sind, sonst als Outline.

04

Typografie

Wortmarke

Pixelify Sans

Nur für die Wortmarke und Hero-Titel. Pixelraster wie das Logo, aber mit echten Kleinbuchstaben, deshalb steht die Wortmarke masticfrog.de wirklich klein. Nie im Fließtext, nie unter 20 px. Lädt die Pixelschrift nicht, tritt Space Mono in Versalien an ihre Stelle, nie eine System-Serif.

Überschriften & Labels

Space Mono

Die Leitschrift. 400 Regular · 700 Bold. Display negativ getrackt, Labels in Versalien durchgehend mit 0.16em.

Fließtext

Instrument Sans

Nur für längere Absätze. 400 Regular · 600 Semibold, Zeilenhöhe 1.55.

Alle drei Familien stehen unter der SIL Open Font License und laufen auf eigener Infrastruktur: woff2, eingebunden über @font-face mit font-display: swap, nur die tatsächlich benutzten Schnitte. Erlaubt sind fonts.masticfrog.de und das eigene Verzeichnis des Projekts — wer viele Seiten betreibt, nimmt den einen Ursprung statt derselben Datei in jedem Repo. Kein fremder Font-Host im Produktivbetrieb: kein Google Fonts, kein Bunny. Nicht wegen des zweiten Ursprungs, sondern weil so ein Server jeden Besucher sieht und jederzeit verschwinden kann. Bedingung für jede künftige Schrift: frei herunterladbar und selbst hostbar.

display/pixel 44 / 400 masticfrog.de
display/xl · mono 48 / 700 Schweißgequält vom öden Text zürnt Typograf Jakob.
heading/lg · mono 32 / 700 Schweißgequält vom öden Text zürnt Typograf Jakob.
heading/sm · mono 20 / 700 Schweißgequält vom öden Text zürnt Typograf Jakob.
body/lg · sans 16 / 400 Schweißgequält vom öden Text zürnt Typograf Jakob.
body/sm · sans 13 / 400 Schweißgequält vom öden Text zürnt Typograf Jakob.
label/mono 10 / 400 Schweißgequält vom öden Text zürnt Typograf Jakob.
05

Icons

Die Bibliothek ist frei wählbar, alles aus react-icons ist in Ordnung. Verbindlich ist nur der Stil: Outline, etwa 1.5 px Strichstärke, immer currentColor, keine gefüllten oder mehrfarbigen Icons. Innerhalb eines Bildschirms bleibt es bei einer Bibliothek, damit Strichstärke und Ecken zusammenpassen. Der Guide zeigt Lucide, weil es zur Hand ist. Das einzige Bildzeichen der Marke bleibt das Logo.

Größen

14 px
in Labels und Badges
16 px
in Buttons und Meldungen
20 px
Abschnitte, alleinstehend

Regeln

Immer currentColor, das Icon erbt die Textfarbe.

Alleinstehende Icons brauchen aria-label und 44 px Trefferfläche.

Keine gefüllten oder mehrfarbigen Icons.

Icon nie größer als 20 px. Dafür ist das Logo da.

Ausrichtung

Icon und Text stehen 9 px auseinander, optisch auf der Mittellinie. Richtungsicons rechts, alles andere links vom Text.

layout-template
droplet
layers
circle-alert
type
shapes
square-mouse-pointer
ruler
hand
contrast
message-square
gauge
check
x
info
triangle-alert
circle-x
arrow-right
chevron-right
mail
trash-2
search
settings
external-link
download
calendar
user
clock
plus
menu
table-2
chart-column
chart-line
chart-pie
trending-up
trending-down
sigma
euro
folder
align-right
circle-slash
palette
filter
arrow-up-down
eye
loader
ban
circle-check
git-branch
book
globe
database
log-out
06

Komponenten

Buttons

Text-Link

Keine Radien, keine Schatten. Vertikal 13 px, horizontal 22 px. Entscheidend ist die Rolle, nicht die Optik: was eine Aktion auslöst, ist ein Button; was zu einer anderen Seite führt, folgt den Navigationsregeln aus 07, auch wenn es in einer Zeile mit Buttons steht.

Logo-Einsatz

Das Logo steht immer auf Ink, in beiden Modi. Mindestgröße 24 px, Skalierung nur in 24-px-Schritten.

Eingabefelder

Bitte eine Zahl in Euro eingeben.

Feldhöhe 44 px, Rahmen 1 px, Fläche eine Stufe dunkler als das Panel. Label immer sichtbar, nie nur als Platzhalter.

Auswahl

Augen folgen dem Zeiger
Wartungsmodus

Kästchen und Schalter bleiben rechtwinklig. Der Radiobutton ist der einzige Kreis im System, damit er nicht mit dem Kästchen verwechselt wird. Schalter schalten sofort, ohne Bestätigen-Button.

Segmente, Regler, Verlauf

64 %
Verlauf 3 von 8
Ladeplatzhalter: flache Blöcke in border/hairline, kein Schimmern, kein Puls.

Dialog, Hinweis, Seiten

Projekt löschen

„Shop Landfein“ und alle 145 erfassten Stunden werden entfernt. Das lässt sich nicht zurückholen.

Kürzel: ⌘K Kurzhinweis: Ink-Fläche, kein Pfeil, kein Schatten.

Dialoge sind rechteckig, ohne Schatten, mit 1-px-Rahmen in border/strong und dunklerer Fläche als das Panel darunter.

07

Navigation & Menüs

Navigation ist Text, keine Grafik: Labels in Mono, Versalien, 0.16em Tracking. Die aktive Seite wird mit einer 2 px Amber-Linie markiert, nie mit einer Fläche. Höchstens fünf Punkte je Ebene, höchstens zwei Ebenen tief.

Tiefe

Höchstens fünf Punkte je Ebene und zwei Ebenen. Mehr Struktur gehört auf eine Übersichtsseite, nicht ins Menü.

Mobil

Unter 600 px ersetzt ein 44-px-Button das Menü. Das Panel ist vollflächig, Einträge 56 px hoch, Schließen oben rechts.

Kopf oder Seite

Website: waagerecht im Kopf. App mit vielen Bereichen: senkrecht links, 260–300 px breit, gleiche Labelregeln.

Tastatur

Erster Fokus im DOM ist ein Sprunglink zum Inhalt. Menü mit Escape schließbar, Fokus kehrt zum Auslöser zurück.

Zustände eines Navigationspunkts

Die aktive Seite trägt zusätzlich aria-current="page". Hover färbt nur den Text, nie die Fläche.

Fußzeile

Die Fußzeile läuft immer auf Ink, in beiden Modi, und schließt die Seite ohne obere Trennlinie ab. Links in Amber, Kleingedrucktes in Mono-Versalien. Höchstens drei Spalten plus Marke; Pflichtangaben (Impressum, Datenschutz) stehen unten und sind nie in einem Menü versteckt. Das gilt für die Website-Fußzeile mit Linkspalten. Ein einzeiliges Kolophon in einem Werkzeug bleibt auf der Seitenfläche und trägt Mono-Versalien in text/muted.

08

Raster & Abstände

Container

Maximal 1120 px breit, 40 px Seitenrand, 12 Spalten mit 20 px Abstand. Ab 900 px auf 6 Spalten, ab 600 px auf eine.

Geometrie

Alles rechtwinklig: 0 px Radius, keine Schatten. Tiefe entsteht nur über Fläche und 1-px-Linien, passend zum Pixelraster des Logos.

8 px Innerhalb einer Gruppe
20 px Zwischen Karten
40 px Seitenrand
76 px Zwischen Abschnitten
09

Interaktion & Zugänglichkeit

Klarheit vor Dekoration: jedes Element sagt, was es tut, reagiert sofort und bleibt mit Tastatur erreichbar. Diese Regeln gelten auch dann, wenn sie dem Layout wehtun.

Trefferflächen

Mindestens 44 × 44 px pro Bedienelement, auch wenn das Icon kleiner ist. Zwischen zwei Zielen mindestens 8 px.

Fokus & Tastatur

Fokus

Sichtbarer Ring: 2 px Akzent, 3 px Abstand. Nie outline: none ohne Ersatz. Reihenfolge folgt der Leserichtung.

Zustand Dauer Regel
default Ruhezustand. Rahmen sichtbar, kein Schatten, keine Radien.
hover 120 ms ease-out Nur auf Zeigergeräten. Fläche um eine Stufe dunkler bzw. heller, keine Größenänderung.
active 60 ms ease-out Sofortige Rückmeldung beim Drücken: Fläche zwei Stufen, 1 px nach unten.
focus-visible 0 ms 2 px Akzentring, 3 px Offset. Erscheint ohne Animation.
disabled 40 % Deckkraft, kein Hover, kein Cursor-Pointer, weiterhin lesbar.
loading 800 ms Schleife Beschriftung bleibt stehen, Icon rotiert. Nie den Button ausblenden.

Kontrast

Fließtext mindestens 4.5 : 1, Text ab 24 px und Icons mindestens 3 : 1. Amber nie als Textfarbe auf hellem Grund.

Beschriftung

Buttons benennen die Handlung, nicht die Bestätigung: „Projekt löschen“ statt „OK“. Icons nie allein ohne aria-label.

Bewegung

Maximal 200 ms. Animierbar sind Deckkraft, Position sowie Flächen- und Rahmenfarbe, nichts anderes. prefers-reduced-motion wird respektiert, dann ohne Übergang.

10

Daten: Tabellen & Diagramme

Zahlen stehen immer in Space Mono mit font-variant-numeric: tabular-nums, damit Ziffern untereinander bündig laufen. Formatierung deutsch: Punkt als Tausendertrenner, Komma als Dezimaltrenner, Einheit mit geschütztem Leerzeichen. Ausgenommen sind technische Ausgaben, die ein Werkzeug wörtlich durchreicht, etwa Dateigrößen, Logzeilen oder Versionsnummern.

Projekte mit Budget, Stunden, Marge und Status
Projekt Budget Stunden Status
Relaunch Kreisbau 48.000 € 612 38,2 % Live
CRM Hoffmann & Söhne 36.900 € 504 29,7 % In Arbeit
Browserspiel „Teich“ 28.500 € 381 24,1 % Review
Shop Landfein 15.000 € 145 −4,8 % Stopp
Interne Werkzeuge 84 Ohne Budget
Summe · 4 Projekte 128.400 € 1.642 31,5 %

Ausrichtung

Zahlen und Einheiten rechts, Text links, Kopfzeile folgt der Spalte. Nie Zahlen zentrieren.

Linien statt Streifen

Trennung nur über 1-px-Hairlines. Keine Zebra-Streifen, keine farbigen Zeilen. Farbe bleibt dem Status.

Leere Werte

Fehlender Wert ist ein Halbgeviertstrich (–) in text/muted, nie 0 und nie leer. Summenzeile immer mit Trennlinie darüber.

Balken · eine Reihe Stunden / Monat
Erfasste Stunden je Monat: März 184, April 241, Mai 302, Juni 266, Juli 198, August 97.
Mär184
Apr241
Mai302
Jun266
Jul198
Aug97

Werte stehen direkt am Balken: keine Legende, keine Gitterlinien, keine Achsenbeschriftung, wenn die Zahl schon dasteht. Nullpunkt immer sichtbar.

Drei Reihen
Websites CRM Spiele
Mär
Apr
Mai
Jun
Reihenfolge der Farben
series/1
Amber, Hauptreihe
series/2
Petrol
series/3
Pflaume
series/4
Graphit, Vergleich oder Vorjahr

Vier Reihen, vier verschiedene Farbtöne mit unterschiedlicher Helligkeit, damit sie sich auch bei Farbsehschwäche und im Schwarzweißdruck unterscheiden. Nie vier Abstufungen derselben Farbe. Statusfarben sind nie Reihenfarben, solange mehrere Reihen im Bild sind. Zeigt ein Balken genau einen Zustand, etwa freien Speicher oder Auslastung, ist die Statusfarbe richtig. Die Werte drehen sich pro Modus: auf hellem Grund dunkle Füllungen, auf dunklem Grund helle.

Balken

Erste Wahl für Vergleiche über Kategorien. Waagerecht, wenn die Labels lang sind.

Linie

Nur für Zeitreihen. Punkte an echten Messwerten, keine weiche Interpolation.

Torte

Höchstens zwei Segmente, sonst wird ein Balken daraus.

Tacho & 3D

Nie. Sie belegen viel Fläche für einen einzigen Wert. Dafür reicht die Zahl.

Immer

Nullpunkt der Achse sichtbar, abgeschnittene Skalen lügen.

Werte direkt am Element statt in einer Legende.

Reihen zusätzlich durch Reihenfolge oder Beschriftung unterscheidbar, nicht nur durch Farbe.

Einheit einmal nennen (Achse oder Kopfzeile), nicht an jeder Zahl.

Niemals

Verläufe, Schatten, 3D, Rundungen an Balken oder Flächen.

Torten- und Ringdiagramme mit mehr als zwei Segmenten.

Zweite Y-Achse oder Doppelskala in einem Diagramm.

Statusfarben als Reihenfarben. Rot heißt Fehler, nicht „Reihe 3“.