picotol.core.min.css)12184 bytes (11.90 KB minified · 4040 B gzip)
100% pure modern CSS • Strictly Paul Tol colour sets • Zero Sass • LightningCSS AST-minified
picotol.core.min.css)12184 bytes (11.90 KB minified · 4040 B gzip)
picotol.min.css)32079 bytes (31.33 KB minified · 7653 B gzip)
picotol.layer.min.css)32095 bytes (31.34 KB minified · 7656 B gzip)
How to read contrast ratios: Luminance contrast ranges from 1:1 (invisible) to 21:1 (pure black on white). ✓ AAA (≥ 7.0:1) is the highest W3C tier (enhanced low-vision legibility); ✓ AA (≥ 4.5:1) is the standard pass threshold for normal body text and UI controls.
Accent ([data-accent]) |
Light Link / Primary vs #FFF |
Light Button Fill vs #000 |
Dark Link / Primary vs #000 |
Dark Button Fill vs #FFF |
|---|---|---|---|---|
blue |
#2255AA · 7.12:1 ✓ AAA (--tol-dark-3)#004488 · 9.62:1 ✓ AAA |
#AACCEE · 12.58:1 ✓ AAA (--tol-pale-0)#77AADD · 8.58:1 ✓ AAA |
#77AADD · 8.58:1 ✓ AAA (--tol-light-blue)#AACCEE · 12.58:1 ✓ AAA |
#2255AA · 7.12:1 ✓ AAA (--tol-dark-3)#4477AA · 4.70:1 ✓ AA |
cyan |
#117788 · 5.23:1 ✓ AA (--tol-dark-6)#004488 · 9.62:1 ✓ AAA |
#CCEEFF · 17.24:1 ✓ AAA (--tol-pale-1)#99DDFF · 14.14:1 ✓ AAA |
#99DDFF · 14.14:1 ✓ AAA (--tol-light-cyan)#CCEEFF · 17.24:1 ✓ AAA |
#117788 · 5.23:1 ✓ AA (--tol-dark-6)#0077BB · 4.82:1 ✓ AA |
purple |
#762A83 · 8.64:1 ✓ AAA (--tol-prgn-0)#332288 · 12.17:1 ✓ AAA |
#E7D4E8 · 14.98:1 ✓ AAA (--tol-prgn-3)#C2A5CF · 9.58:1 ✓ AAA |
#C2A5CF · 9.58:1 ✓ AAA (--tol-prgn-2)#E7D4E8 · 14.98:1 ✓ AAA |
#762A83 · 8.64:1 ✓ AAA (--tol-prgn-0)#AA4499 · 5.26:1 ✓ AA |
magenta |
#993366 · 6.95:1 ✓ AA (--tol-dark-4)#882255 · 8.73:1 ✓ AAA |
#EEBBDD · 12.79:1 ✓ AAA (--tol-pale-5)#FFAABB · 11.72:1 ✓ AAA |
#FFAABB · 11.72:1 ✓ AAA (--tol-light-pink)#EEBBDD · 12.79:1 ✓ AAA |
#993366 · 6.95:1 ✓ AA (--tol-dark-4)#BB4488 · 4.89:1 ✓ AA |
Picotol provides container-level [data-accent] scoping without color-scheme leakage. Multiple distinct accent trees run concurrently side-by-side in isolated container scopes with distinct buttons, switches, badges, and progress indicators.
Blue Accent Neutral
Cyan Accent Neutral
Purple Accent Neutral
Magenta Accent Neutral
Body copy uses the system font stack with fluid root sizing via clamp(100%, 95% + 0.4vw, 125%) and an opt-in 75ch reading measure via :where(.measure, .prose). Links like primary link, secondary link, contrast link, and external link (opens in a new tab) step along Paul Tol's qualitative lightness ladder on hover.
Inline elements include strong, emphasis, highlighted mark, inserted text, deleted text, inline code, Ctrl + K, and PTCS (hover or focus for tooltip).
"The contrast ratio between each colour in the dark scheme and white is at least 4.5 for people with moderately low vision."
:root {
color-scheme: light dark;
--pt-bg: light-dark(var(--tol-white), var(--tol-black));
}
Data tables feature automatic tabular numeric alignment, alternating zebra stripes via table.striped, status dot indicators, and horizontal scrolling via responsive figure:has(> table) and .overflow-auto.
| Node ID | Region | CPU % | Memory | Latency | Status |
|---|---|---|---|---|---|
edge-us-east-01 |
us-east-1a | 24.5% | 3.8 / 16 GB | 12 ms | Operational |
edge-us-east-02 |
us-east-1b | 78.2% | 14.1 / 16 GB | 28 ms | Warning |
edge-us-east-03 |
us-east-1c | 96.8% | 15.9 / 16 GB | 145 ms | Critical |
edge-us-east-04 |
us-east-1d | 18.0% | 2.4 / 16 GB | 9 ms | Operational |
| Cluster Average / Total | 4 Active Nodes | 54.4% Avg | 36.2 / 64 GB | 48 ms P95 | 4 Monitored |
.overflow-auto / .table-container)Multi-column wide tabular datasets wrapped in .overflow-auto or .table-container maintain localized horizontal scrolling without window blowouts:
| Service Name | Health | Inbound RPS | Outbound RPS | Error Rate | P50 | P99 | Replica Count | Uptime | Host Zone |
|---|---|---|---|---|---|---|---|---|---|
| auth-service | Healthy | 1,240 req/s | 1,180 req/s | 0.01% | 4.2 ms | 18.4 ms | 8 / 8 | 99.99% | us-east-1a |
| billing-gateway | Degraded | 420 req/s | 390 req/s | 1.45% | 42.1 ms | 280.0 ms | 4 / 4 | 99.82% | us-east-1b |
| telemetry-pipe | Healthy | 18,500 req/s | 18,490 req/s | 0.00% | 1.1 ms | 6.8 ms | 16 / 16 | 100.0% | us-east-1c |
| worker-ingest | Failing | 85 req/s | 12 req/s | 24.8% | 340.5 ms | 1,820 ms | 1 / 4 | 98.12% | us-east-1d |
Modern Baseline CSS provides light-dark(), color-mix(), clamp(), and @layer natively, eliminating 3x duplicated variable blocks and shrinking the stylesheet by over 85%.
All solid UI states step across pale, light, medium-contrast, bright, dark, and high-contrast schemes.
Progress Indicator
Dropdown Menu & Modal Dialog
Slide-Over Drawers (<dialog class="sheet">)
Semantic HTML5 article element styled automatically with zero classes.
.cardGeneric div or section styled with .card for ergonomic framework interoperability.
.status-dot)Operational .status-dot.success
Warning .status-dot.warning
Critical .status-dot.danger
Active .status-dot.info
Neutral .status-dot.neutral
Idle .status-dot.idle
Cluster Healthy
Memory Pressure
Node Offline
Job Running
Service Idle
Flex gap layout (.no-margin / .m-0)
Flex and grid children declare min-width: 0 to prevent wide controls or long titles from blowing out containers.
Child section, article, and hr elements automatically zero their block margins in flex and grid containers, preventing compound spacing.
[data-density="compact"] / .pt-compact / .pt-tabular)Default density uses standard spacing tokens and typography scale.
data-density="compact")Micro-type scale, tighter card padding, and compressed control spacing for data-dense dashboards.
.pt-compact)Applied via class modifier to any container or component.
.pt-progress / .pt-gauge-marker)Default accent, compact height, and Paul Tol semantic modifiers.
.pt-progress)Cross-webview fallback with explicit role="progressbar" and ARIA semantics.
.pt-meter)Positioned threshold pins with tabular labels and semantic indicators.
.pt-callout / .pt-copy-pill).pt-details / .accordion-card / .pt-popover)Strict four-layer cascade isolation ensures design tokens and reset styles never bleed into extended component boundaries.
Native HTML5 <details> and <summary> elements provide keyboard navigation (Enter / Space) and screen reader announcements without runtime JavaScript.
Every severity tier (critical, warning, notice) is certified to maintain distinct relative luminance steps across greyscale conversions.
.pt-card-disclosure)Self-contained disclosure card with integrated surface styling, elevated header transition, and flush content padding.
.segmented.segmented-fill / .segmented-equal)Equal distribution across items (flex: 1 1 0) with automatic text ellipsis on narrow containers.
Toolbar mode switch with .segmented-equal alias and compact viewport resilience.
A simulated real-time operational monitor featuring accessible tabpanel switching, zero-CLS skeleton loading transitions, KPI metric stat cards, and status alerts.
Ingestion pipeline telemetry streaming at 48.6 MB/s across 6 regional endpoints.
Healthy Buffering: 1.2%
Edge cache hit efficiency: 94.2% with zero cold-start evictions.
[2026-10-19T18:20:00Z] INFO [telemetry] Heartbeat verified for 128 nodes.
[2026-10-19T18:22:15Z] WARN [ingress] High burst load detected on us-east-1c (96.8% CPU).
[2026-10-19T18:24:00Z] INFO [orchestrator] Autoscaled +4 container instances.
Neutral Badge Primary Accent Active Warning Failed Purple Accent
Explore canonical color-blind safe palettes authored by Dr. Paul Tol. Click any swatch or token to copy its CSS custom property to the clipboard.
--tol-bright-blue
#4477AA
bright
--tol-bright-red
#EE6677
bright
--tol-bright-green
#228833
bright
--tol-bright-yellow
#CCBB44
bright
--tol-bright-cyan
#66CCEE
bright
--tol-bright-purple
#AA3377
bright
--tol-bright-grey
#BBBBBB
bright
--tol-dark-0
#4477BB
dark
--tol-dark-1
#CC4466
dark
--tol-dark-2
#228833
dark
--tol-dark-3
#2255AA
dark
--tol-dark-4
#993366
dark
--tol-dark-5
#006644
dark
--tol-dark-6
#117788
dark
--tol-dark-7
#882288
dark
--tol-dark-8
#BB4488
dark
--tol-dark-9
#775500
dark
--tol-dark-10
#444444
dark
--tol-hc-blue
#004488
high-contrast
--tol-hc-yellow
#DDAA33
high-contrast
--tol-hc-red
#BB5566
high-contrast
--tol-light-blue
#77AADD
light
--tol-light-orange
#EE8866
light
--tol-light-yellow
#EEDD88
light
--tol-light-pink
#FFAABB
light
--tol-light-cyan
#99DDFF
light
--tol-light-mint
#44BB99
light
--tol-light-pear
#BBCC33
light
--tol-light-olive
#AAAA00
light
--tol-light-pale-grey
#DDDDDD
light
--tol-mc-blue
#6699CC
medium-contrast
--tol-mc-dark-blue
#004488
medium-contrast
--tol-mc-yellow
#EECC66
medium-contrast
--tol-mc-dark-red
#994455
medium-contrast
--tol-mc-dark-yellow
#997700
medium-contrast
--tol-mc-red
#EE99AA
medium-contrast
--tol-muted-rose
#CC6677
muted
--tol-muted-indigo
#332288
muted
--tol-muted-sand
#DDCC77
muted
--tol-muted-green
#117733
muted
--tol-muted-cyan
#88CCEE
muted
--tol-muted-wine
#882255
muted
--tol-muted-teal
#44AA99
muted
--tol-muted-olive
#999933
muted
--tol-muted-purple
#AA4499
muted
--tol-pale-0
#AACCEE
pale
--tol-pale-1
#CCEEFF
pale
--tol-pale-2
#BBDDBB
pale
--tol-pale-3
#EEEEBB
pale
--tol-pale-4
#FFBBCC
pale
--tol-pale-5
#EEBBDD
pale
--tol-pale-6
#DDDDDD
pale
--tol-vibrant-orange
#EE7733
vibrant
--tol-vibrant-blue
#0077BB
vibrant
--tol-vibrant-cyan
#33BBEE
vibrant
--tol-vibrant-magenta
#EE3377
vibrant
--tol-vibrant-red
#CC3311
vibrant
--tol-vibrant-teal
#009988
vibrant
--tol-vibrant-grey
#BBBBBB
vibrant
No matching Paul Tol color tokens found.