StudyFox · System identyfikacji · v1.0
StudyFox to towarzysz studiów: pytania oparte na źródłach z sylabusa, uczciwe rankingi i kalendarz, który pamięta za Ciebie. Marka jest jak lis — bystra, ciepła i konkretna. Ten dokument jest jedynym źródłem prawdy o tym, jak wygląda i mówi.
Geometryczny lis z trzech trójkątów — czytelny od favikony po billboard. Znak występuje samodzielnie albo w zestawieniu ze słowem StudyFox (Bricolage Grotesque ExtraBold, „Fox" w kolorze marki).
Dwie rodziny: Fox (ruda energia marki) i Den (ciepłe neutrale — papier w dzień, nora w nocy). Stany systemowe (poprawnie / błędnie / uwaga / info) mają własne kolory i nigdy nie zastępują koloru marki. Proporcja na ekranie: ~90% neutrali, ~8% koloru marki, ~2% stanów.
| Rola | Jasny motyw | Ciemny motyw | Zastosowanie |
|---|---|---|---|
--ground | den-50 | den-950 | tło strony |
--surface | den-0 | den-900 | karty, panele |
--ink | den-900 | #F0EBE4 | tekst główny |
--brand | fox-500 | fox-400 | znak, wykresy, akcenty |
--brand-strong | fox-600 | fox-400 | przyciski, linki (AA) |
--ok / --err / --warn / --info | #348544 · #C43333 · #A66A00 · #33708F | wyłącznie stany odpowiedzi i komunikaty | |
Bricolage Grotesque mówi nagłówkami — ma lisi charakter i pełne polskie znaki. Instrument Sans robi całą resztę interfejsu. JetBrains Mono wyłącznie do liczb, statystyk, kodu i etykiet technicznych (zawsze z tabular-nums).
Żywe wzorce — tak wyglądają w produkcie. Wszystko zbudowane wyłącznie z tokenów; żaden komponent nie definiuje własnych kolorów.
Po polsku, na „ty", konkretnie. StudyFox jest sprytnym kolegą z roku — wie, co będzie na egzaminie, i mówi krótko. Nigdy nie jest infantylny, nie krzyczy wykrzyknikami i nie wstydzi się powiedzieć „nie wiemy jeszcze".
Źródło prawdy: tokens.css (role + skale, oba motywy) i tokens.json (dla narzędzi i aplikacji mobilnej). W aplikacji webowej (Tailwind 4) mapujemy tokeny w @theme:
@theme {
--color-fox-50: #FFF4EC; --color-fox-100: #FFE6D5;
--color-fox-200: #FDCCAB; --color-fox-300: #FAA976;
--color-fox-400: #F5813D; --color-fox-500: #ED5C0F;
--color-fox-600: #C74A0A; --color-fox-700: #A03C0C;
--color-fox-800: #7D300E; --color-fox-900: #66280F;
--color-fox-950: #3D1607;
--color-den-50: #FAF8F5; --color-den-100: #F2EFEA;
--color-den-200: #E5E0D8; --color-den-300: #CFC9BF;
--color-den-400: #A8A198; --color-den-500: #7E7870;
--color-den-600: #5C5750; --color-den-700: #453F38;
--color-den-800: #2E2A25; --color-den-900: #221E1A;
--color-den-950: #191613;
--color-ok: #348544; --color-ok-soft: #EAF5EC;
--color-err: #C43333; --color-err-soft: #FBEDEB;
--color-warn: #A66A00; --color-warn-soft: #FBF3E0;
--color-info: #33708F; --color-info-soft: #E9F2F7;
--font-display: "Bricolage Grotesque", system-ui, sans-serif;
--font-sans: "Instrument Sans", system-ui, sans-serif;
--font-mono: "JetBrains Mono", ui-monospace, monospace;
--radius-xs: 6px; --radius-sm: 8px; --radius-md: 12px;
--radius-lg: 16px; --radius-xl: 24px;
}