Style Guide

Bootstrap 5 + app.css

Colors

Primary
var(--bs-primary)
Secondary
var(--bs-secondary)
Success
var(--bs-success)
Danger
var(--bs-danger)
Warning
var(--bs-warning)
Info
var(--bs-info)
Light
var(--bs-light)
Dark
var(--bs-dark)
Body
var(--bs-body-color)
Border
var(--bs-border-color)

Buttons

btn btn-primary
btn btn-secondary
btn btn-success
btn btn-danger
btn btn-warning
btn btn-info
btn btn-light
btn btn-dark
btn btn-link
btn btn-outline-primary
btn btn-outline-secondary
btn btn-outline-success
btn btn-outline-danger
btn btn-outline-warning
btn btn-outline-info
btn btn-outline-dark
btn btn-primary btn-sm
btn btn-primary
btn btn-primary btn-lg
btn btn-primary disabled
Disabled link
btn btn-primary disabled

Utilities

.bg-primary .border .shadow-sm .text-body-secondary

Typography

H1 Heading

H2 Heading

H3 Heading

H4 Heading

H5 Heading
H6 Heading

Body text with strong, emphasis, links, and inline code.

Muted secondary text for subtle emphasis.

Lead paragraph to introduce sections.

Forms

@

Verification Switch

Apply .state-not-verified to the switch input for a red track.

Cards & Badges

Use .card with optional structural pieces:
.card-header.card-body.list-group.card-footer. Add utility classes like .h-100 when you need full-height columns.

Card header New
Card title

Supporting text below as a natural lead-in to additional content.

Action
  • Cras justo odio
  • Dapibus ac facilisis in
Badges
Primary Secondary Success Danger Warning Info Light Dark

Pager

/ 24
Showing 1–50 of 1,200

KPI Cards

KPI cards extend .card with .kpi-card plus a modifier (e.g. .kpi--primary).
Typical structure: KPI wrapper → .card-body with metrics → .card-footer for metadata or actions.

Screenings
1,248
+8.5% vs last week
Verified
834
+2.1% today
In Queue
57
ETA ~ 3m
Pending Review
112
-1.2% vs yesterday
Errors
9
3 new in last hour
Avg. Processing
18s
p95: 42s

Theme Wrappers

Wrap any group with p-2 theme-* (add h-100 for equal heights) to tint the background. The inner cards stay standard Bootstrap markup.

Jobs Theme
Tinted via wrapper
Admin Theme
Tinted via wrapper
Uploads Theme
Tinted via wrapper
Uploaded Results Theme
Tinted via wrapper
Screenings Theme
Tinted via wrapper
Grading Theme
Tinted via wrapper
Glaucoma Theme
Tinted via wrapper
Audit Theme
Tinted via wrapper

Named Gradient Cards

Sunrise
Warm gradient
Sea
Cool gradient
Forest
Green gradient
Lava
Hot gradient
Aurora
Purple/blue gradient
Candy
Playful pinks
Violet
Indigo/pink
Rainbow
Full spectrum

Soft Tinted Cards

Subtle, solid tints via .card-soft-* classes.

primary soft
Tinted background, subtle border
secondary soft
Tinted background, subtle border
success soft
Tinted background, subtle border
danger soft
Tinted background, subtle border
warning soft
Tinted background, subtle border
info soft
Tinted background, subtle border

High Contrast

Use .theme-contrast to neutralize gradients for data-heavy views.

Gradient card
Default colorful style
Neutralized
Contrast wrapper applied

Tables & Pagination

# First Last Handle
1MarkOtto@mdo
2JacobThornton@fat
3LarryBird@twitter

Rainbow Table

Applies colorful stripes to .table.table-striped (light theme).

# Label Value Status
1 Row 1 7% Primary
2 Row 2 14% Danger
3 Row 3 21% Warning
4 Row 4 28% Success
5 Row 5 35% Info
6 Row 6 42% Secondary
7 Row 7 49% Primary
8 Row 8 56% Danger
9 Row 9 63% Warning
10 Row 10 70% Success
11 Row 11 77% Info
12 Row 12 84% Secondary
.table.table-striped with custom 6-color stripe cycle.

Progress

Basic
Striped & Animated
Striping colors adapt to each variant.

Square Viewer (sv-*)

Demo image
1 / 4
File
example_image.png

Grading Viewer (imggr-*)

Demo image

Viewer Controls

Zoom
Filter buttons

Screenings Card

#716 PID‑00123
Open
  • Left image: available
  • Right image: missing
  • Reports: 2
  • Report 1 — status: ok
  • Report 2 — status: ok
  • Report 3 — status: ok
  • Report 4 — status: ok
  • Report 5 — status: ok
  • Report 6 — status: ok
  • Report 7 — status: ok
  • Report 8 — status: ok
Uses .scr-card, .scr-badge, .scr-grid, .list-compact, .scr-scroll

Alerts