UI-Kit
demo/sections/ — je eine Datei pro Komponente. Jede generische Kit-Komponente muss hier erscheinen; bin/check-demo.php erzwingt das. Akzentfarbe und Hell/Dunkel oben rechts.Buttons
Varianten und Zustände. Fokus per Tab-Taste sichtbar (Ring), Hover/Aktiv über die Maus, deaktivierte Buttons ausgegraut.
Für destruktive Aktionen ohne Dialog — gedrückt halten füllt den Balken; erst dann feuert px:hold-complete.
Formulare
Jedes Feld hat ein Label. Fehler werden nicht nur farblich, sondern mit Icon und Text ausgewiesen. Zustände: Ruhe, Fokus (Ring), deaktiviert, Fehler.
name/value).
Karten & Kennzahlen
Generische Oberflächen-Karte (.px-card, optional --link mit Hover) im Kartenraster (.px-cards) und Kennzahl-Kachel (.px-stat) — für Detailpanels und Dashboards.
Toolbar & Filter
Suche links, Ansichts-Umschalter und Ergebniszähler rechts. Filter-Chips mit Zähler; aktive Chips tragen die Akzentfläche.
Tabs & Subnav
Horizontale Tabs für gleichrangige Unteransichten (aktiv = Akzent-Unterlinie, Punkt = Handlungsbedarf); vertikale Subnav für Einstellungsbereiche (klebt beim Scrollen, aktiv hebt sich als Kachel ab).
Datentabelle
Zwei Ausprägungen: die klassische Tabelle (in einer Card, sortierbar, fixierbare Kopfzeile) und die schwebende Tabelle (.px-ftable), die ohne Rahmen ruhig auf dem Hintergrund liegt und erst beim Hover als Kachel abhebt. Beträge rechtsbündig mit Tabellenziffern.
| Rechnung | Kunde | Status | Fällig | Betrag |
|---|---|---|---|---|
| RE-10428 | PixelCraft Services | Bezahlt | 01.09.2026 | CHF1'240.00 |
| RE-10429 | Atrium GmbH | Offen | 14.09.2026 | CHF480.00 |
| RE-10430 | Redbench AG | Überfällig | 20.08.2026 | CHF2'090.00 |
| Summe offen | CHF2'570.00 | |||
Beschreibungsliste
Feld/Wert-Paare für Detailansichten: Label links, Wert rechts, dünne Trennlinien.
- Kundennummer
- 1042
- Typ
- Firma
- Sprache
- Deutsch
- Währung
- CHF
- Zahlungsziel
- 14 Tage
- Status
- Aktiv
- Empfänger
- PixelCraft Services
- Strasse
- Musterweg 12
- PLZ / Ort
- 9000 St. Gallen
- Land
- CH
Badges & Status
Auf Basis des verallgemeinerten Zustandsvokabulars: neutral · active · success · waiting · critical. Jedes Tool bildet seine Fachzustände darauf ab.
Empty State
Wenn nichts da ist — mit Aktion oder kompakt (in Card/Liste).
Overlays
Modals sind zentral und standardmässig grosszügig breit (920px). Escape und Abbrechen schliessen immer; ein Hintergrundklick schliesst nur bei data-px-dismiss, sonst ist das Modal gelockt (gut für Formulare). Toast unten mit Fortschrittsbalken (Hover pausiert) und Copy-Icon. Beim Öffnen setzt das JS body.px-modal-open (sperrt das Scrollen des Hintergrunds).
App-Shell
Schwebende Sidebar (Brand, Nav mit aktivem/Hover-Zustand, User-Menü, Einklappen) und Content mit Seiten-Header. Die Demo-Seite selbst nutzt genau diese Shell; hier als eingerahmte Vorschau.
Dashboard
Auth / Login
Split-Screen: links Marketing-Panel mit schräger Trennung, rechts das Formular mit Fehlermeldung, „Angemeldet bleiben" und Alt-Link. Eigene Seite: auth.php.
Druck-Grundlage
Generisches A4-Blatt (.px-sheet) als Basis für spätere Rechnungsausgabe. Im Druck blendet das Kit die App-Chrome aus; .px-no-print versteckt Elemente im Druck, .px-print-only zeigt sie nur dort, .px-print-color erzwingt Farben. Unten verkleinerte Vorschau.
| Position | Menge | Betrag |
|---|---|---|
| Hosting Basis | 1 | CHF480.00 |
| Wartung | 1 | CHF160.00 |
| Total | CHF640.00 | |
Nur im Druck sichtbar (px-print-only).
Im Druck ausgeblendet (px-no-print).