your jammit ui,
any accent color
copy css/jamkit.css into any project. pick a preset above or use the color picker โ every primary button, tab, toggle, and badge updates instantly.
design tokens
css variables power theming. change --jam-accent or call applyAccent('#3b82f6') from theme.js.
| token | purpose |
|---|---|
--jam-accent | primary brand color (buttons, active nav, badges) |
--jam-accent-border | darker border on accent surfaces |
--jam-accent-rgb | for translucent highlights (leaderboard row) |
--jam-bg | page background |
--jam-raised | cards, inputs, inactive buttons |
--jam-border | 3px brutal outlines |
--jam-shadow | offset shadow color (not blur) |
--jam-muted | secondary text |
:root {
--jam-accent: #a855f7;
--jam-accent-border: #9333ea;
--jam-accent-rgb: 168, 85, 247;
}
/* dark mode flips surfaces via html.dark { ... } */
typography
fredoka one, always lowercase. use .display-hero for landing headlines.
display hero
display large
display medium
muted body copy for descriptions and hints.
forms
inputs match boxes โ same border weight and radius.
example field error โ username already taken
<input class="input-field" type="text" placeholder="..." /> <textarea class="input-field"></textarea> <p class="field-error">error message</p>
surfaces & cards
.box is the building block. stack content inside it.
plain box
default raised surface
<div class="box" style="padding:1.25rem">...</div> <div class="box set-card">clickable set</div> <div class="box set-card set-card-selected">selected</div>
feedback
alerts for page-level messages. field-error sits under inputs.
<div class="alert-error">...</div> <div class="alert-success">...</div>
toggles & checkboxes
pill toggles for settings. brutal checkboxes for forms.
avatars & badges
initials on a colored square. border + shadow match the system.
<div class="avatar avatar-md" style="background:#3b82f6">ja</div> <span class="badge">3</span>
game ui
trivia answer colors, timer, player rows, leaderboard โ straight from jammit games.
answer buttons
timer
players & leaderboard
modal
backdrop + box. confirm/cancel button row.
<div class="modal-backdrop">
<div class="box modal-panel">
<h2 class="display-md">delete game?</h2>
<div class="page-divider" style="width:4rem;margin:1rem 0"></div>
<p>all players will be removed.</p>
<div class="flex gap-3 mt-6">
<button class="btn btn-white flex-1">cancel</button>
<button class="btn btn-primary flex-1">delete</button>
</div>
</div>
</div>
layout shell
you're inside it right now โ .app-shell + sticky sidebar + .page-container.
<div class="app-shell">
<aside class="app-sidebar">...nav...</aside>
<main class="flex-1">
<div class="page-container">...content...</div>
</main>
</div>
drop the whole ui-kit/ folder on cloudflare pages, netlify, or github pages โ no build step.