GitTrail colour system / version 3

One palette, every trail

Cool neutral surfaces, violet identity and six labelled graph lanes. Choose a theme and accent in the navigation to inspect the live token set.

1040 / 1040 WCAG pairs pass
750 / 750 text pairs meet |APCA Lc| ≥ 75. APCA is a supplementary check, not WCAG 2.2 conformance.

Perceptual scales

Each family has 12 roles in separate light and dark scales. Hue stays fixed; chroma is reduced at constant lightness when needed to fit sRGB. Hex comes first in CSS; supporting browsers use OKLCH.

Light scales

NeutralInspect 12 steps123456789101112
Light neutral · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.002 265#f9fafb
2 · Subtle background0.975 0.002 265#f6f7f8
3 · Component background0.96 0.002 265#f1f2f3
4 · Hover background0.94 0.002 265#eaebec
5 · Active background0.92 0.002 265#e4e4e6
6 · Subtle border0.84 0.002 265#cacacc
7 · Normal border0.72 0.002 265#a4a4a6
8 · Strong border / focus0.57 0.002 265#777778
9 · Solid fill0.48 0.002 265#5d5d5f
10 · Solid hover0.51 0.002 265#656667
11 · Secondary text0.39 0.002 265#444546
12 · Primary text0.18 0.002 265#111212
VioletInspect 12 steps123456789101112
Light violet · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.007301 285#f9f9ff
2 · Subtle background0.975 0.0122175 285#f6f6ff
3 · Component background0.955 0.0221701 285#eeeeff
4 · Hover background0.93 0.0348391 285#e5e5ff
5 · Active background0.905 0.0477668 285#dcdcff
6 · Subtle border0.84 0.0826247 285#c4c4ff
7 · Normal border0.74 0.126 285#a39ff7
8 · Strong border / focus0.6 0.1638 285#796ddc
9 · Solid fill0.46 0.1848 285#533db8
10 · Solid hover0.4 0.1932 285#4525a8
11 · Secondary text0.37 0.1512 285#3c2a8a
12 · Primary text0.205 0.0735 285#150f36
IndigoInspect 12 steps123456789101112
Light indigo · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0070308 275#f9faff
2 · Subtle background0.975 0.0117646 275#f4f6ff
3 · Component background0.955 0.0213453 275#ecefff
4 · Hover background0.93 0.0335369 275#e1e7ff
5 · Active background0.905 0.0459729 275#d6deff
6 · Subtle border0.84 0.0794824 275#bbc7ff
7 · Normal border0.74 0.126 275#94a4fa
8 · Strong border / focus0.6 0.1638 275#6673e0
9 · Solid fill0.46 0.1848 275#4044bc
10 · Solid hover0.4 0.1932 275#322dac
11 · Secondary text0.37 0.1512 275#2d308d
12 · Primary text0.205 0.0735 275#0f1138
TealInspect 12 steps123456789101112
Light teal · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0052 180#f7fbfa
2 · Subtle background0.975 0.0104 180#f0f9f7
3 · Component background0.955 0.0182 180#e4f4f0
4 · Hover background0.93 0.0299 180#d4efe8
5 · Active background0.905 0.0416 180#c3e9e1
6 · Subtle border0.84 0.0598 180#a0d8cc
7 · Normal border0.74 0.078 180#71bbad
8 · Strong border / focus0.6 0.1014 180#1f9482
9 · Solid fill0.46 0.0834578 180#00675a
10 · Solid hover0.4 0.072572 180#005449
11 · Secondary text0.37 0.0671291 180#004b41
12 · Primary text0.205 0.0371931 180#001d18
SkyInspect 12 steps123456789101112
Light sky · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0052 230#f7fbfd
2 · Subtle background0.975 0.0104 230#f0f8fd
3 · Component background0.955 0.0182 230#e4f3fa
4 · Hover background0.93 0.0299 230#d5ecf8
5 · Active background0.905 0.0416 230#c5e6f6
6 · Subtle border0.84 0.0598 230#a3d3ea
7 · Normal border0.74 0.078 230#76b4d3
8 · Strong border / focus0.6 0.1014 230#308bb1
9 · Solid fill0.46 0.091666 230#006181
10 · Solid hover0.4 0.0797096 230#004f6a
11 · Secondary text0.28 0.0557967 230#002d3f
12 · Primary text0.205 0.0408511 230#001a26
AmberInspect 12 steps123456789101112
Light amber · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0064 75#fdfaf5
2 · Subtle background0.975 0.0128 75#fcf6ee
3 · Component background0.955 0.0224 75#f9eee0
4 · Hover background0.93 0.0368 75#f7e5cd
5 · Active background0.905 0.0512 75#f4dcbb
6 · Subtle border0.84 0.0736 75#e7c495
7 · Normal border0.74 0.096 75#cea263
8 · Strong border / focus0.6 0.1248 75#ab7307
9 · Solid fill0.46 0.097042 75#774f00
10 · Solid hover0.4 0.0843844 75#624000
11 · Secondary text0.37 0.0780555 75#573900
12 · Primary text0.205 0.043247 75#221400
RoseInspect 12 steps123456789101112
Light rose · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0072905 15#fff8f8
2 · Subtle background0.975 0.0122535 15#fff4f4
3 · Component background0.955 0.0224377 15#ffeaeb
4 · Hover background0.93 0.0356805 15#ffdfe0
5 · Active background0.905 0.0495361 15#ffd3d5
6 · Subtle border0.84 0.0888009 15#ffb3b8
7 · Normal border0.74 0.132 15#f28690
8 · Strong border / focus0.6 0.1716 15#d2495e
9 · Solid fill0.46 0.1839047 15#a60035
10 · Solid hover0.4 0.1599171 15#89002a
11 · Secondary text0.37 0.1479234 15#7b0025
12 · Primary text0.205 0.077 15#32020b
LimeInspect 12 steps123456789101112
Light lime · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0076 130#f8fbf6
2 · Subtle background0.975 0.0152 130#f3f9ee
3 · Component background0.955 0.0266 130#eaf4e2
4 · Hover background0.93 0.0437 130#deeed0
5 · Active background0.905 0.0608 130#d2e8be
6 · Subtle border0.84 0.0874 130#b8d69a
7 · Normal border0.74 0.114 130#93b96a
8 · Strong border / focus0.6 0.1482 130#62911f
9 · Solid fill0.46 0.1238042 130#406500
10 · Solid hover0.4 0.1076558 130#345200
11 · Secondary text0.37 0.0995817 130#2d4900
12 · Primary text0.205 0.0551736 130#0e1c00
GreenInspect 12 steps123456789101112
Light green · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0064 150#f7fbf8
2 · Subtle background0.975 0.0128 150#f1f9f2
3 · Component background0.955 0.0224 150#e6f5e8
4 · Hover background0.93 0.0368 150#d7efdb
5 · Active background0.905 0.0512 150#c9eace
6 · Subtle border0.84 0.0736 150#a9d9b2
7 · Normal border0.74 0.096 150#7ebc8b
8 · Strong border / focus0.6 0.1248 150#3f9557
9 · Solid fill0.46 0.1266827 150#006b2e
10 · Solid hover0.4 0.1101589 150#005725
11 · Secondary text0.4 0.1101589 150#005725
12 · Primary text0.205 0.056 150#001e08
RedInspect 12 steps123456789101112
Light red · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0072401 25#fff8f8
2 · Subtle background0.975 0.0121665 25#fff4f3
3 · Component background0.955 0.0222695 25#ffebe9
4 · Hover background0.93 0.0353945 25#ffdfdc
5 · Active background0.905 0.0491116 25#ffd4cf
6 · Subtle border0.84 0.0878946 25#ffb5ae
7 · Normal border0.74 0.132 25#f38880
8 · Strong border / focus0.6 0.1716 25#d34c49
9 · Solid fill0.46 0.1864843 25#a80019
10 · Solid hover0.4 0.1621602 25#8a0012
11 · Secondary text0.22 0.0891881 25#3a0003
12 · Primary text0.205 0.077 25#320204
OrangeInspect 12 steps123456789101112
Light orange · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.985 0.0068 55#fef9f6
2 · Subtle background0.975 0.0136 55#fff5ee
3 · Component background0.955 0.0238 55#feece1
4 · Hover background0.93 0.0391 55#fee2d0
5 · Active background0.905 0.0544 55#fdd7be
6 · Subtle border0.84 0.0782 55#f3be9a
7 · Normal border0.74 0.102 55#dd996b
8 · Strong border / focus0.6 0.1326 55#bb6723
9 · Solid fill0.46 0.1138971 55#874300
10 · Solid hover0.4 0.0990409 55#6f3600
11 · Secondary text0.34 0.0841848 55#582a00
12 · Primary text0.205 0.0507585 55#281000

Dark scales

NeutralInspect 12 steps123456789101112
Dark neutral · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.16 0.003 265#0d0d0f
2 · Subtle background0.18 0.003 265#111213
3 · Component background0.215 0.003 265#19191b
4 · Hover background0.245 0.003 265#202022
5 · Active background0.27 0.003 265#262628
6 · Subtle border0.32 0.003 265#323334
7 · Normal border0.45 0.003 265#545557
8 · Strong border / focus0.61 0.003 265#828385
9 · Solid fill0.56 0.003 265#737476
10 · Solid hover0.61 0.003 265#828385
11 · Secondary text0.87 0.003 265#d3d4d6
12 · Primary text0.965 0.003 265#f2f3f5
VioletInspect 12 steps123456789101112
Dark violet · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.021 285#0e0e18
2 · Subtle background0.19 0.0336 285#121122
3 · Component background0.225 0.0525 285#1a1733
4 · Hover background0.26 0.0714 285#211d45
5 · Active background0.295 0.0882 285#292356
6 · Subtle border0.335 0.105 285#332b69
7 · Normal border0.455 0.1365 285#51479e
8 · Strong border / focus0.625 0.1743 285#8073eb
9 · Solid fill0.46 0.1848 285#533db8
10 · Solid hover0.49 0.1932 285#5b44c7
11 · Secondary text0.88 0.0609583 285#d3d3ff
12 · Primary text0.97 0.0146906 285#f4f4ff
IndigoInspect 12 steps123456789101112
Dark indigo · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.021 275#0d0f19
2 · Subtle background0.19 0.0336 275#0f1223
3 · Component background0.225 0.0525 275#151934
4 · Hover background0.26 0.0714 275#1b1f46
5 · Active background0.295 0.0882 275#212658
6 · Subtle border0.335 0.105 275#292f6c
7 · Normal border0.455 0.1365 275#434ca1
8 · Strong border / focus0.625 0.1743 275#6b7aef
9 · Solid fill0.46 0.1848 275#4044bc
10 · Solid hover0.49 0.1932 275#464bcb
11 · Secondary text0.88 0.058658 275#ccd5ff
12 · Primary text0.97 0.0141456 275#f2f5ff
TealInspect 12 steps123456789101112
Dark teal · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.013 180#091110
2 · Subtle background0.19 0.0208 180#091714
3 · Component background0.225 0.0325 180#07211c
4 · Hover background0.26 0.0442 180#032b25
5 · Active background0.295 0.0535218 180#00352e
6 · Subtle border0.335 0.060779 180#004138
7 · Normal border0.455 0.0825506 180#006558
8 · Strong border / focus0.625 0.1079 180#1b9d8a
9 · Solid fill0.46 0.0834578 180#00675a
10 · Solid hover0.49 0.0889007 180#007062
11 · Secondary text0.88 0.0715 180#a3e8d9
12 · Primary text0.97 0.0156 180#ebf9f5
SkyInspect 12 steps123456789101112
Dark sky · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.013 230#0a1114
2 · Subtle background0.19 0.0208 230#0a161b
3 · Component background0.225 0.0325 230#0a1f28
4 · Hover background0.26 0.0442 230#082835
5 · Active background0.295 0.0546 230#053142
6 · Subtle border0.335 0.065 230#033c52
7 · Normal border0.455 0.0845 230#115f7c
8 · Strong border / focus0.625 0.1079 230#3093bc
9 · Solid fill0.46 0.091666 230#006181
10 · Solid hover0.49 0.0976442 230#006a8d
11 · Secondary text0.94 0.035919 230#d4f0ff
12 · Primary text0.97 0.0156 230#ebf7fe
AmberInspect 12 steps123456789101112
Dark amber · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.016 75#140e08
2 · Subtle background0.19 0.0256 75#1b1207
3 · Component background0.225 0.04 75#271904
4 · Hover background0.26 0.0544 75#331f00
5 · Active background0.295 0.0622335 75#3e2700
6 · Subtle border0.335 0.0706719 75#4c3000
7 · Normal border0.455 0.0959872 75#754d00
8 · Strong border / focus0.625 0.1318506 75#b57a00
9 · Solid fill0.46 0.097042 75#774f00
10 · Solid hover0.49 0.1033709 75#825600
11 · Secondary text0.88 0.088 75#fad096
12 · Primary text0.97 0.0192 75#fdf4e7
RoseInspect 12 steps123456789101112
Dark rose · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.022 15#180b0c
2 · Subtle background0.19 0.0352 15#210d0f
3 · Component background0.225 0.055 15#310f13
4 · Hover background0.26 0.0748 15#411118
5 · Active background0.295 0.0924 15#51121d
6 · Subtle border0.335 0.11 15#631524
7 · Normal border0.455 0.143 15#95293c
8 · Strong border / focus0.625 0.1826 15#df4c63
9 · Solid fill0.46 0.1839047 15#a60035
10 · Solid hover0.49 0.1958985 15#b4003b
11 · Secondary text0.88 0.0640548 15#ffc7ca
12 · Primary text0.97 0.0147668 15#fff1f2
LimeInspect 12 steps123456789101112
Dark lime · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.019 130#0d1108
2 · Subtle background0.19 0.0304 130#0f1608
3 · Component background0.225 0.0475 130#142006
4 · Hover background0.26 0.0646 130#192a03
5 · Active background0.295 0.0793962 130#1f3400
6 · Subtle border0.335 0.0901618 130#273f00
7 · Normal border0.455 0.1224585 130#3f6300
8 · Strong border / focus0.625 0.1577 130#67991c
9 · Solid fill0.46 0.1238042 130#406500
10 · Solid hover0.49 0.1318784 130#466e00
11 · Secondary text0.88 0.1045 130#c1e69c
12 · Primary text0.97 0.0228 130#f0f9e9
GreenInspect 12 steps123456789101112
Dark green · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.016 150#0a110c
2 · Subtle background0.19 0.0256 150#0b170e
3 · Component background0.225 0.04 150#0d2111
4 · Hover background0.26 0.0544 150#0d2b15
5 · Active background0.295 0.0672 150#0e361a
6 · Subtle border0.335 0.08 150#0f421f
7 · Normal border0.455 0.104 150#216636
8 · Strong border / focus0.625 0.1328 150#419d5b
9 · Solid fill0.46 0.1266827 150#006b2e
10 · Solid hover0.49 0.1349446 150#007433
11 · Secondary text0.99 0.0156605 150#f5fff6
12 · Primary text0.97 0.0192 150#edf9ee
RedInspect 12 steps123456789101112
Dark red · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.022 25#180c0b
2 · Subtle background0.19 0.0352 25#210d0c
3 · Component background0.225 0.055 25#31100e
4 · Hover background0.26 0.0748 25#411110
5 · Active background0.295 0.0924 25#511313
6 · Subtle border0.335 0.11 25#641617
7 · Normal border0.455 0.143 25#962b2b
8 · Strong border / focus0.625 0.1826 25#e04e4c
9 · Solid fill0.46 0.1864843 25#a80019
10 · Solid hover0.49 0.1986463 25#b6001c
11 · Secondary text0.9 0.0519301 25#ffd1cd
12 · Primary text0.97 0.0146605 25#fff2f0
OrangeInspect 12 steps123456789101112
Dark orange · sRGB gamut-mapped
Step / roleOKLCHHex fallback
1 · Page background0.17 0.017 55#150d08
2 · Subtle background0.19 0.0272 55#1d1008
3 · Component background0.225 0.0425 55#2b1607
4 · Hover background0.26 0.0578 55#391b04
5 · Active background0.295 0.0714 55#472101
6 · Subtle border0.335 0.0829468 55#562900
7 · Normal border0.455 0.1105 55#844304
8 · Strong border / focus0.625 0.1411 55#c76d21
9 · Solid fill0.46 0.1138971 55#874300
10 · Solid hover0.49 0.1213252 55#934a00
11 · Secondary text0.86 0.0883014 55#ffc299
12 · Primary text0.97 0.017373 55#fff2ea

Semantic roles

These swatches follow the current theme and accent. Components use these roles or component aliases; they never reach into raw scales.

light / violet tokens

--brand#533db8
--bg#f9fafb
--bg-subtle#f6f7f8
--surface#f1f2f3
--surface-raised#eaebec
--surface-sunken#f6f7f8
--surface-translucent#f1f2f3f5
--overlay#04060ab8
--text#111212
--text-secondary#444546
--text-muted#4c4d4f
--text-disabled#777778
--text-on-accent#fdfdfe
--text-link#4525a8
--text-link-hover#150f36
--border-subtle#cacacc
--border#a4a4a6
--border-strong#777778
--focus-ring#4525a8
--code-bg#f6f7f8
--code-text#111212
--syn-keyword#3c2a8a
--syn-string#004b41
--syn-number#573900
--syn-comment#444546
--syn-function#002d3f
--syn-type#7b0025
--syn-punctuation#444546
--diff-add-bg#e6f5e8
--diff-del-bg#ffebe9
--glow#7f6afc14
--visited#3c2a8a
--success-bg#e6f5e8
--success-border#3f9557
--success-text#005725
--success-solid#006b2e
--success#005725
--warning-bg#feece1
--warning-border#bb6723
--warning-text#582a00
--warning-solid#874300
--warning#582a00
--danger-bg#ffebe9
--danger-border#d34c49
--danger-text#3a0003
--danger-solid#a80019
--danger#3a0003
--info-bg#e4f3fa
--info-border#308bb1
--info-text#002d3f
--info-solid#006181
--info#002d3f
--lane-1#009280
--lane-2#003649
--lane-3#5b3b00
--lane-4#420010
--lane-5#4d7800
--lane-6#5230c1
--accent#533db8
--accent-hover#4525a8
--accent-active#3c2a8a
--accent-soft#eeeeff
--accent-soft-hover#e5e5ff
--accent-border#796ddc
--accent-text#4525a8
--accent-text-hover#150f36
--accent-focus#4525a8
--accent-gradient-end#4044bc
Shadow sm
Shadow md
Shadow lg

light / teal tokens

--brand#533db8
--bg#f9fafb
--bg-subtle#f6f7f8
--surface#f1f2f3
--surface-raised#eaebec
--surface-sunken#f6f7f8
--surface-translucent#f1f2f3f5
--overlay#04060ab8
--text#111212
--text-secondary#444546
--text-muted#4c4d4f
--text-disabled#777778
--text-on-accent#fdfdfe
--text-link#005449
--text-link-hover#001d18
--border-subtle#cacacc
--border#a4a4a6
--border-strong#777778
--focus-ring#005449
--code-bg#f6f7f8
--code-text#111212
--syn-keyword#3c2a8a
--syn-string#004b41
--syn-number#573900
--syn-comment#444546
--syn-function#002d3f
--syn-type#7b0025
--syn-punctuation#444546
--diff-add-bg#e6f5e8
--diff-del-bg#ffebe9
--glow#7f6afc14
--visited#3c2a8a
--success-bg#e6f5e8
--success-border#3f9557
--success-text#005725
--success-solid#006b2e
--success#005725
--warning-bg#feece1
--warning-border#bb6723
--warning-text#582a00
--warning-solid#874300
--warning#582a00
--danger-bg#ffebe9
--danger-border#d34c49
--danger-text#3a0003
--danger-solid#a80019
--danger#3a0003
--info-bg#e4f3fa
--info-border#308bb1
--info-text#002d3f
--info-solid#006181
--info#002d3f
--lane-1#009280
--lane-2#003649
--lane-3#5b3b00
--lane-4#420010
--lane-5#4d7800
--lane-6#5230c1
--accent#00675a
--accent-hover#005449
--accent-active#004b41
--accent-soft#e4f4f0
--accent-soft-hover#d4efe8
--accent-border#1f9482
--accent-text#005449
--accent-text-hover#001d18
--accent-focus#005449
--accent-gradient-end#00675a
Shadow sm
Shadow md
Shadow lg

light / sky tokens

--brand#533db8
--bg#f9fafb
--bg-subtle#f6f7f8
--surface#f1f2f3
--surface-raised#eaebec
--surface-sunken#f6f7f8
--surface-translucent#f1f2f3f5
--overlay#04060ab8
--text#111212
--text-secondary#444546
--text-muted#4c4d4f
--text-disabled#777778
--text-on-accent#fdfdfe
--text-link#004f6a
--text-link-hover#001a26
--border-subtle#cacacc
--border#a4a4a6
--border-strong#777778
--focus-ring#004f6a
--code-bg#f6f7f8
--code-text#111212
--syn-keyword#3c2a8a
--syn-string#004b41
--syn-number#573900
--syn-comment#444546
--syn-function#002d3f
--syn-type#7b0025
--syn-punctuation#444546
--diff-add-bg#e6f5e8
--diff-del-bg#ffebe9
--glow#7f6afc14
--visited#3c2a8a
--success-bg#e6f5e8
--success-border#3f9557
--success-text#005725
--success-solid#006b2e
--success#005725
--warning-bg#feece1
--warning-border#bb6723
--warning-text#582a00
--warning-solid#874300
--warning#582a00
--danger-bg#ffebe9
--danger-border#d34c49
--danger-text#3a0003
--danger-solid#a80019
--danger#3a0003
--info-bg#e4f3fa
--info-border#308bb1
--info-text#002d3f
--info-solid#006181
--info#002d3f
--lane-1#009280
--lane-2#003649
--lane-3#5b3b00
--lane-4#420010
--lane-5#4d7800
--lane-6#5230c1
--accent#006181
--accent-hover#004f6a
--accent-active#002d3f
--accent-soft#e4f3fa
--accent-soft-hover#d5ecf8
--accent-border#308bb1
--accent-text#004f6a
--accent-text-hover#001a26
--accent-focus#004f6a
--accent-gradient-end#006181
Shadow sm
Shadow md
Shadow lg

light / rose tokens

--brand#533db8
--bg#f9fafb
--bg-subtle#f6f7f8
--surface#f1f2f3
--surface-raised#eaebec
--surface-sunken#f6f7f8
--surface-translucent#f1f2f3f5
--overlay#04060ab8
--text#111212
--text-secondary#444546
--text-muted#4c4d4f
--text-disabled#777778
--text-on-accent#fdfdfe
--text-link#89002a
--text-link-hover#32020b
--border-subtle#cacacc
--border#a4a4a6
--border-strong#777778
--focus-ring#89002a
--code-bg#f6f7f8
--code-text#111212
--syn-keyword#3c2a8a
--syn-string#004b41
--syn-number#573900
--syn-comment#444546
--syn-function#002d3f
--syn-type#7b0025
--syn-punctuation#444546
--diff-add-bg#e6f5e8
--diff-del-bg#ffebe9
--glow#7f6afc14
--visited#3c2a8a
--success-bg#e6f5e8
--success-border#3f9557
--success-text#005725
--success-solid#006b2e
--success#005725
--warning-bg#feece1
--warning-border#bb6723
--warning-text#582a00
--warning-solid#874300
--warning#582a00
--danger-bg#ffebe9
--danger-border#d34c49
--danger-text#3a0003
--danger-solid#a80019
--danger#3a0003
--info-bg#e4f3fa
--info-border#308bb1
--info-text#002d3f
--info-solid#006181
--info#002d3f
--lane-1#009280
--lane-2#003649
--lane-3#5b3b00
--lane-4#420010
--lane-5#4d7800
--lane-6#5230c1
--accent#a60035
--accent-hover#89002a
--accent-active#7b0025
--accent-soft#ffeaeb
--accent-soft-hover#ffdfe0
--accent-border#d2495e
--accent-text#89002a
--accent-text-hover#32020b
--accent-focus#89002a
--accent-gradient-end#a60035
Shadow sm
Shadow md
Shadow lg

light / amber tokens

--brand#533db8
--bg#f9fafb
--bg-subtle#f6f7f8
--surface#f1f2f3
--surface-raised#eaebec
--surface-sunken#f6f7f8
--surface-translucent#f1f2f3f5
--overlay#04060ab8
--text#111212
--text-secondary#444546
--text-muted#4c4d4f
--text-disabled#777778
--text-on-accent#fdfdfe
--text-link#624000
--text-link-hover#221400
--border-subtle#cacacc
--border#a4a4a6
--border-strong#777778
--focus-ring#624000
--code-bg#f6f7f8
--code-text#111212
--syn-keyword#3c2a8a
--syn-string#004b41
--syn-number#573900
--syn-comment#444546
--syn-function#002d3f
--syn-type#7b0025
--syn-punctuation#444546
--diff-add-bg#e6f5e8
--diff-del-bg#ffebe9
--glow#7f6afc14
--visited#3c2a8a
--success-bg#e6f5e8
--success-border#3f9557
--success-text#005725
--success-solid#006b2e
--success#005725
--warning-bg#feece1
--warning-border#bb6723
--warning-text#582a00
--warning-solid#874300
--warning#582a00
--danger-bg#ffebe9
--danger-border#d34c49
--danger-text#3a0003
--danger-solid#a80019
--danger#3a0003
--info-bg#e4f3fa
--info-border#308bb1
--info-text#002d3f
--info-solid#006181
--info#002d3f
--lane-1#009280
--lane-2#003649
--lane-3#5b3b00
--lane-4#420010
--lane-5#4d7800
--lane-6#5230c1
--accent#774f00
--accent-hover#624000
--accent-active#573900
--accent-soft#f9eee0
--accent-soft-hover#f7e5cd
--accent-border#ab7307
--accent-text#624000
--accent-text-hover#221400
--accent-focus#624000
--accent-gradient-end#774f00
Shadow sm
Shadow md
Shadow lg

dark / violet tokens

--brand#8073eb
--bg#0d0d0f
--bg-subtle#111213
--surface#19191b
--surface-raised#202022
--surface-sunken#111213
--surface-translucent#19191bf5
--overlay#04060ab8
--text#f2f3f5
--text-secondary#d3d4d6
--text-muted#d0d1d3
--text-disabled#828385
--text-on-accent#fdfdfe
--text-link#d3d3ff
--text-link-hover#f4f4ff
--border-subtle#323334
--border#545557
--border-strong#828385
--focus-ring#d3d3ff
--code-bg#111213
--code-text#f2f3f5
--syn-keyword#d3d3ff
--syn-string#a3e8d9
--syn-number#fad096
--syn-comment#d3d4d6
--syn-function#d4f0ff
--syn-type#ffc7ca
--syn-punctuation#d3d4d6
--diff-add-bg#0d2111
--diff-del-bg#31100e
--glow#7f6afc14
--visited#d3d3ff
--success-bg#0d2111
--success-border#419d5b
--success-text#f5fff6
--success-solid#006b2e
--success#f5fff6
--warning-bg#2b1607
--warning-border#c76d21
--warning-text#ffc299
--warning-solid#874300
--warning#ffc299
--danger-bg#31100e
--danger-border#e04e4c
--danger-text#ffd1cd
--danger-solid#a80019
--danger#ffd1cd
--info-bg#0a1f28
--info-border#3093bc
--info-text#d4f0ff
--info-solid#006181
--info#d4f0ff
--lane-1#00b8a1
--lane-2#43c0f3
--lane-3#ffce8a
--lane-4#de1c4e
--lane-5#9adb45
--lane-6#8472ff
--accent#533db8
--accent-hover#5b44c7
--accent-active#533db8
--accent-soft#1a1733
--accent-soft-hover#211d45
--accent-border#8073eb
--accent-text#d3d3ff
--accent-text-hover#f4f4ff
--accent-focus#d3d3ff
--accent-gradient-end#4044bc
Shadow sm
Shadow md
Shadow lg

dark / teal tokens

--brand#8073eb
--bg#0d0d0f
--bg-subtle#111213
--surface#19191b
--surface-raised#202022
--surface-sunken#111213
--surface-translucent#19191bf5
--overlay#04060ab8
--text#f2f3f5
--text-secondary#d3d4d6
--text-muted#d0d1d3
--text-disabled#828385
--text-on-accent#fdfdfe
--text-link#a3e8d9
--text-link-hover#ebf9f5
--border-subtle#323334
--border#545557
--border-strong#828385
--focus-ring#a3e8d9
--code-bg#111213
--code-text#f2f3f5
--syn-keyword#d3d3ff
--syn-string#a3e8d9
--syn-number#fad096
--syn-comment#d3d4d6
--syn-function#d4f0ff
--syn-type#ffc7ca
--syn-punctuation#d3d4d6
--diff-add-bg#0d2111
--diff-del-bg#31100e
--glow#7f6afc14
--visited#d3d3ff
--success-bg#0d2111
--success-border#419d5b
--success-text#f5fff6
--success-solid#006b2e
--success#f5fff6
--warning-bg#2b1607
--warning-border#c76d21
--warning-text#ffc299
--warning-solid#874300
--warning#ffc299
--danger-bg#31100e
--danger-border#e04e4c
--danger-text#ffd1cd
--danger-solid#a80019
--danger#ffd1cd
--info-bg#0a1f28
--info-border#3093bc
--info-text#d4f0ff
--info-solid#006181
--info#d4f0ff
--lane-1#00b8a1
--lane-2#43c0f3
--lane-3#ffce8a
--lane-4#de1c4e
--lane-5#9adb45
--lane-6#8472ff
--accent#00675a
--accent-hover#007062
--accent-active#00675a
--accent-soft#07211c
--accent-soft-hover#032b25
--accent-border#1b9d8a
--accent-text#a3e8d9
--accent-text-hover#ebf9f5
--accent-focus#a3e8d9
--accent-gradient-end#00675a
Shadow sm
Shadow md
Shadow lg

dark / sky tokens

--brand#8073eb
--bg#0d0d0f
--bg-subtle#111213
--surface#19191b
--surface-raised#202022
--surface-sunken#111213
--surface-translucent#19191bf5
--overlay#04060ab8
--text#f2f3f5
--text-secondary#d3d4d6
--text-muted#d0d1d3
--text-disabled#828385
--text-on-accent#fdfdfe
--text-link#d4f0ff
--text-link-hover#ebf7fe
--border-subtle#323334
--border#545557
--border-strong#828385
--focus-ring#d4f0ff
--code-bg#111213
--code-text#f2f3f5
--syn-keyword#d3d3ff
--syn-string#a3e8d9
--syn-number#fad096
--syn-comment#d3d4d6
--syn-function#d4f0ff
--syn-type#ffc7ca
--syn-punctuation#d3d4d6
--diff-add-bg#0d2111
--diff-del-bg#31100e
--glow#7f6afc14
--visited#d3d3ff
--success-bg#0d2111
--success-border#419d5b
--success-text#f5fff6
--success-solid#006b2e
--success#f5fff6
--warning-bg#2b1607
--warning-border#c76d21
--warning-text#ffc299
--warning-solid#874300
--warning#ffc299
--danger-bg#31100e
--danger-border#e04e4c
--danger-text#ffd1cd
--danger-solid#a80019
--danger#ffd1cd
--info-bg#0a1f28
--info-border#3093bc
--info-text#d4f0ff
--info-solid#006181
--info#d4f0ff
--lane-1#00b8a1
--lane-2#43c0f3
--lane-3#ffce8a
--lane-4#de1c4e
--lane-5#9adb45
--lane-6#8472ff
--accent#006181
--accent-hover#006a8d
--accent-active#006181
--accent-soft#0a1f28
--accent-soft-hover#082835
--accent-border#3093bc
--accent-text#d4f0ff
--accent-text-hover#ebf7fe
--accent-focus#d4f0ff
--accent-gradient-end#006181
Shadow sm
Shadow md
Shadow lg

dark / rose tokens

--brand#8073eb
--bg#0d0d0f
--bg-subtle#111213
--surface#19191b
--surface-raised#202022
--surface-sunken#111213
--surface-translucent#19191bf5
--overlay#04060ab8
--text#f2f3f5
--text-secondary#d3d4d6
--text-muted#d0d1d3
--text-disabled#828385
--text-on-accent#fdfdfe
--text-link#ffc7ca
--text-link-hover#fff1f2
--border-subtle#323334
--border#545557
--border-strong#828385
--focus-ring#ffc7ca
--code-bg#111213
--code-text#f2f3f5
--syn-keyword#d3d3ff
--syn-string#a3e8d9
--syn-number#fad096
--syn-comment#d3d4d6
--syn-function#d4f0ff
--syn-type#ffc7ca
--syn-punctuation#d3d4d6
--diff-add-bg#0d2111
--diff-del-bg#31100e
--glow#7f6afc14
--visited#d3d3ff
--success-bg#0d2111
--success-border#419d5b
--success-text#f5fff6
--success-solid#006b2e
--success#f5fff6
--warning-bg#2b1607
--warning-border#c76d21
--warning-text#ffc299
--warning-solid#874300
--warning#ffc299
--danger-bg#31100e
--danger-border#e04e4c
--danger-text#ffd1cd
--danger-solid#a80019
--danger#ffd1cd
--info-bg#0a1f28
--info-border#3093bc
--info-text#d4f0ff
--info-solid#006181
--info#d4f0ff
--lane-1#00b8a1
--lane-2#43c0f3
--lane-3#ffce8a
--lane-4#de1c4e
--lane-5#9adb45
--lane-6#8472ff
--accent#a60035
--accent-hover#b4003b
--accent-active#a60035
--accent-soft#310f13
--accent-soft-hover#411118
--accent-border#df4c63
--accent-text#ffc7ca
--accent-text-hover#fff1f2
--accent-focus#ffc7ca
--accent-gradient-end#a60035
Shadow sm
Shadow md
Shadow lg

dark / amber tokens

--brand#8073eb
--bg#0d0d0f
--bg-subtle#111213
--surface#19191b
--surface-raised#202022
--surface-sunken#111213
--surface-translucent#19191bf5
--overlay#04060ab8
--text#f2f3f5
--text-secondary#d3d4d6
--text-muted#d0d1d3
--text-disabled#828385
--text-on-accent#fdfdfe
--text-link#fad096
--text-link-hover#fdf4e7
--border-subtle#323334
--border#545557
--border-strong#828385
--focus-ring#fad096
--code-bg#111213
--code-text#f2f3f5
--syn-keyword#d3d3ff
--syn-string#a3e8d9
--syn-number#fad096
--syn-comment#d3d4d6
--syn-function#d4f0ff
--syn-type#ffc7ca
--syn-punctuation#d3d4d6
--diff-add-bg#0d2111
--diff-del-bg#31100e
--glow#7f6afc14
--visited#d3d3ff
--success-bg#0d2111
--success-border#419d5b
--success-text#f5fff6
--success-solid#006b2e
--success#f5fff6
--warning-bg#2b1607
--warning-border#c76d21
--warning-text#ffc299
--warning-solid#874300
--warning#ffc299
--danger-bg#31100e
--danger-border#e04e4c
--danger-text#ffd1cd
--danger-solid#a80019
--danger#ffd1cd
--info-bg#0a1f28
--info-border#3093bc
--info-text#d4f0ff
--info-solid#006181
--info#d4f0ff
--lane-1#00b8a1
--lane-2#43c0f3
--lane-3#ffce8a
--lane-4#de1c4e
--lane-5#9adb45
--lane-6#8472ff
--accent#774f00
--accent-hover#825600
--accent-active#774f00
--accent-soft#271904
--accent-soft-hover#331f00
--accent-border#b57a00
--accent-text#fad096
--accent-text-hover#fdf4e7
--accent-focus#fad096
--accent-gradient-end#774f00
Shadow sm
Shadow md
Shadow lg

Component theme matrix

Open a set to compare the same components in all 10 combinations. One specimen opens at a time so gradients do not compete. The full state catalogue follows your selected theme on the style guide.

Light / Violet

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Light / Teal

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Light / Sky

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Light / Rose

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Light / Amber

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Dark / Violet

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Dark / Teal

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Dark / Sky

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Dark / Rose

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

Dark / Amber

Use the right account

Set a folder rule once. Your repo keeps the right identity.

Download GitTrailCompare plans

This rule uses the work account.

Address is incomplete. Enter a Git remote URL.

Account matched
Your next push uses the work account.
Review the folder rule
The folder contains repos from two accounts.
Push stopped
Choose an account that can access this remote.
Offline editing
You can commit locally and push when connected.
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
gittrail — terminal

# Verify the current repo

gittrail use work

Account matched · 1 folder rule

1 account · ready

Free

The right account. Your everyday Git.

$0forever
No credit card neededDownload free
  • Unlimited accounts and repositories
  • Automatic account and SSH switching
  • Commit graph, staging and conflicts
  • Worktrees, stashes and safe undo
  • Local-first. No tracking.

Pro

For your next chapter

More context. Fewer tabs. Better teamwork.

60% off Launch offer, monthly and yearly billing

Regular price $8$3.20/ month
Billed yearly · $38.40 / year (regular $96)14-day free trialExplore Pro
  • Everything in Free
  • Full pull request workspace
  • Stacks and issue tracker integrations
  • Team insights and plugins
  • Custom commands and history cleanup
Illustrative pricing and offer · not yet available to purchase

Read-only product illustration. Use the home-page repo selector for the interactive demo.

GitTrail / web-appProduct preview
web-app~/code/acme/web-app
Push
Commit graphAll branches
GraphCommit messageAuthor
Orders: empty state and loading skeletonfeature/order-historybb3235a
Maya Fernando 1h ago
Orders: filters and search3371a14
Maya Fernando 2h ago
Orders: list page79de28b
Maya Fernando 3h ago
CI: cache node_moduleschore/ci-cache407a6f7
Aisha Khan 4h ago
Upgrade React to 19main14faf12
Leo Park 5h ago
Release notes for 0.2v0.2.0aa6695f
Aisha Khan 6h ago
Right repo, right identity

Matched by folder rule ~/code/acme/**

Verified
feature/order-historyIdentity protected
Read-only illustration · work account matched
Does local Git work offline?

Yes. Remote pushes need a connection to your provider.

WCAG and APCA audit

Every supported theme and accent is checked against the foreground/background contracts below, including hover, syntax, status and gradient endpoints. Body and small text target 4.5:1 and |Lc| ≥ 75; meaningful borders and graphics target 3:1. Large text therefore also exceeds the requested |Lc| ≥ 60.

APCA-W3 0.0.98G-4g, apca-w3 0.1.9. Signed Lc; absolute Lc used for the requested target. WCAG 2.2 AA remains the conformance test. Values below are signed Lc. Negative values mean light text on a darker background. Ratios use the stricter result from exact OKLCH and the 8-bit fallback.

Light / Violet

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.96:1
Pass
102.2Target met
text / bg-subtlebody / small17.49:1
Pass
100.3Target met
text / surfacebody / small16.74:1
Pass
97.3Target met
text / surface-raisedbody / small15.72:1
Pass
93.4Target met
text / surface-sunkenbody / small17.49:1
Pass
100.3Target met
text / surface-translucentbody / small16.79:1
Pass
97.5Target met
text-secondary / bgbody / small9.19:1
Pass
89.2Target met
text-secondary / bg-subtlebody / small8.94:1
Pass
87.3Target met
text-secondary / surfacebody / small8.55:1
Pass
84.3Target met
text-secondary / surface-raisedbody / small8.05:1
Pass
80.4Target met
text-secondary / surface-sunkenbody / small8.94:1
Pass
87.3Target met
text-secondary / surface-translucentbody / small8.58:1
Pass
84.5Target met
text-muted / bgbody / small8.1:1
Pass
86.1Target met
text-muted / bg-subtlebody / small7.87:1
Pass
84.2Target met
text-muted / surfacebody / small7.53:1
Pass
81.2Target met
text-muted / surface-raisedbody / small7.09:1
Pass
77.2Target met
text-muted / surface-sunkenbody / small7.87:1
Pass
84.2Target met
text-muted / surface-translucentbody / small7.56:1
Pass
81.4Target met
text-link / bgbody / small9.65:1
Pass
89.3Target met
text-link / bg-subtlebody / small9.39:1
Pass
87.4Target met
text-link / surfacebody / small8.98:1
Pass
84.4Target met
text-link / surface-raisedbody / small8.45:1
Pass
80.5Target met
text-link / surface-sunkenbody / small9.39:1
Pass
87.4Target met
text-link / surface-translucentbody / small9.01:1
Pass
84.6Target met
text-link-hover / bgbody / small17.4:1
Pass
101.6Target met
text-link-hover / bg-subtlebody / small16.9:1
Pass
99.7Target met
text-link-hover / surfacebody / small16.17:1
Pass
96.7Target met
text-link-hover / surface-raisedbody / small15.24:1
Pass
92.8Target met
text-link-hover / surface-sunkenbody / small16.9:1
Pass
99.7Target met
text-link-hover / surface-translucentbody / small16.22:1
Pass
96.9Target met
border-strong / bgcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus3.97:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus3.74:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus9.65:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus9.39:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus8.98:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus8.45:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus9.39:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus9.01:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus3.87:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus3.71:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus3.49:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus3.87:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus3.72:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.57:1
Pass
-89.7Target met
text-on-accent / accent-hoverbutton text / gradient stop9.92:1
Pass
-95.3Target met
text-on-accent / accent-activebutton text / gradient stop10.93:1
Pass
-97.7Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.45:1
Pass
-89.3Target met
success-text / success-bgstatus text7.74:1
Pass
81Target met
success-border / success-bgstatus border3.29:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text7.8:1
Pass
81.5Target met
success-text / surface-raisedstatus text7.35:1
Pass
77.6Target met
warning-text / warning-bgstatus text10.48:1
Pass
87.7Target met
warning-border / warning-bgstatus border3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text10.73:1
Pass
89.2Target met
warning-text / surface-raisedstatus text10.08:1
Pass
85.1Target met
danger-text / danger-bgstatus text15.46:1
Pass
94.1Target met
danger-border / danger-bgstatus border3.74:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text15.81:1
Pass
95.6Target met
danger-text / surface-raisedstatus text14.89:1
Pass
91.6Target met
info-text / info-bgstatus text12.72:1
Pass
92.2Target met
info-border / info-bgstatus border3.39:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text12.86:1
Pass
92.9Target met
info-text / surface-raisedstatus text12.11:1
Pass
89Target met
code-text / code-bgcode / small17.49:1
Pass
100.3Target met
code-text / diff-add-bgcode / small16.61:1
Pass
96.9Target met
code-text / diff-del-bgcode / small16.36:1
Pass
95.9Target met
syn-keyword / code-bgcode / small10.32:1
Pass
90.1Target met
syn-keyword / diff-add-bgcode / small9.8:1
Pass
86.6Target met
syn-keyword / diff-del-bgcode / small9.66:1
Pass
85.7Target met
syn-string / code-bgcode / small9.38:1
Pass
87.9Target met
syn-string / diff-add-bgcode / small8.91:1
Pass
84.5Target met
syn-string / diff-del-bgcode / small8.78:1
Pass
83.5Target met
syn-number / code-bgcode / small9.84:1
Pass
89.3Target met
syn-number / diff-add-bgcode / small9.34:1
Pass
85.8Target met
syn-number / diff-del-bgcode / small9.2:1
Pass
84.9Target met
syn-comment / code-bgcode / small8.94:1
Pass
87.3Target met
syn-comment / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-comment / diff-del-bgcode / small8.36:1
Pass
82.9Target met
syn-function / code-bgcode / small13.44:1
Pass
95.9Target met
syn-function / diff-add-bgcode / small12.77:1
Pass
92.5Target met
syn-function / diff-del-bgcode / small12.58:1
Pass
91.5Target met
syn-type / code-bgcode / small10.47:1
Pass
88.8Target met
syn-type / diff-add-bgcode / small9.95:1
Pass
85.3Target met
syn-type / diff-del-bgcode / small9.8:1
Pass
84.3Target met
syn-punctuation / code-bgcode / small8.94:1
Pass
87.3Target met
syn-punctuation / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-punctuation / diff-del-bgcode / small8.36:1
Pass
82.9Target met
text-on-accent / brandbrand graphic7.57:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link10.62:1
Pass
92Target met
lane-1 / surfacelabelled graph stroke3.45:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke11.54:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke9.04:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke15.12:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke4.68:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke7.31:1
Pass
Not text3:1 graphic / boundary rule

Light / Teal

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.96:1
Pass
102.2Target met
text / bg-subtlebody / small17.49:1
Pass
100.3Target met
text / surfacebody / small16.74:1
Pass
97.3Target met
text / surface-raisedbody / small15.72:1
Pass
93.4Target met
text / surface-sunkenbody / small17.49:1
Pass
100.3Target met
text / surface-translucentbody / small16.79:1
Pass
97.5Target met
text-secondary / bgbody / small9.19:1
Pass
89.2Target met
text-secondary / bg-subtlebody / small8.94:1
Pass
87.3Target met
text-secondary / surfacebody / small8.55:1
Pass
84.3Target met
text-secondary / surface-raisedbody / small8.05:1
Pass
80.4Target met
text-secondary / surface-sunkenbody / small8.94:1
Pass
87.3Target met
text-secondary / surface-translucentbody / small8.58:1
Pass
84.5Target met
text-muted / bgbody / small8.1:1
Pass
86.1Target met
text-muted / bg-subtlebody / small7.87:1
Pass
84.2Target met
text-muted / surfacebody / small7.53:1
Pass
81.2Target met
text-muted / surface-raisedbody / small7.09:1
Pass
77.2Target met
text-muted / surface-sunkenbody / small7.87:1
Pass
84.2Target met
text-muted / surface-translucentbody / small7.56:1
Pass
81.4Target met
text-link / bgbody / small8.49:1
Pass
86.8Target met
text-link / bg-subtlebody / small8.25:1
Pass
84.8Target met
text-link / surfacebody / small7.89:1
Pass
81.8Target met
text-link / surface-raisedbody / small7.43:1
Pass
77.9Target met
text-link / surface-sunkenbody / small8.25:1
Pass
84.8Target met
text-link / surface-translucentbody / small7.91:1
Pass
82Target met
text-link-hover / bgbody / small16.9:1
Pass
101.2Target met
text-link-hover / bg-subtlebody / small16.47:1
Pass
99.3Target met
text-link-hover / surfacebody / small15.76:1
Pass
96.4Target met
text-link-hover / surface-raisedbody / small14.8:1
Pass
92.4Target met
text-link-hover / surface-sunkenbody / small16.47:1
Pass
99.3Target met
text-link-hover / surface-translucentbody / small15.8:1
Pass
96.6Target met
border-strong / bgcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus3.97:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus3.74:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus8.49:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus8.25:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus7.89:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus7.43:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus8.25:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus7.91:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus3.58:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus3.49:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus3.34:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus3.13:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus3.49:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus3.35:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop6.69:1
Pass
-86.7Target met
text-on-accent / accent-hoverbutton text / gradient stop8.74:1
Pass
-93.1Target met
text-on-accent / accent-activebutton text / gradient stop9.92:1
Pass
-95.8Target met
text-on-accent / accent-gradient-endbutton text / gradient stop6.69:1
Pass
-86.7Target met
success-text / success-bgstatus text7.74:1
Pass
81Target met
success-border / success-bgstatus border3.29:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text7.8:1
Pass
81.5Target met
success-text / surface-raisedstatus text7.35:1
Pass
77.6Target met
warning-text / warning-bgstatus text10.48:1
Pass
87.7Target met
warning-border / warning-bgstatus border3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text10.73:1
Pass
89.2Target met
warning-text / surface-raisedstatus text10.08:1
Pass
85.1Target met
danger-text / danger-bgstatus text15.46:1
Pass
94.1Target met
danger-border / danger-bgstatus border3.74:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text15.81:1
Pass
95.6Target met
danger-text / surface-raisedstatus text14.89:1
Pass
91.6Target met
info-text / info-bgstatus text12.72:1
Pass
92.2Target met
info-border / info-bgstatus border3.39:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text12.86:1
Pass
92.9Target met
info-text / surface-raisedstatus text12.11:1
Pass
89Target met
code-text / code-bgcode / small17.49:1
Pass
100.3Target met
code-text / diff-add-bgcode / small16.61:1
Pass
96.9Target met
code-text / diff-del-bgcode / small16.36:1
Pass
95.9Target met
syn-keyword / code-bgcode / small10.32:1
Pass
90.1Target met
syn-keyword / diff-add-bgcode / small9.8:1
Pass
86.6Target met
syn-keyword / diff-del-bgcode / small9.66:1
Pass
85.7Target met
syn-string / code-bgcode / small9.38:1
Pass
87.9Target met
syn-string / diff-add-bgcode / small8.91:1
Pass
84.5Target met
syn-string / diff-del-bgcode / small8.78:1
Pass
83.5Target met
syn-number / code-bgcode / small9.84:1
Pass
89.3Target met
syn-number / diff-add-bgcode / small9.34:1
Pass
85.8Target met
syn-number / diff-del-bgcode / small9.2:1
Pass
84.9Target met
syn-comment / code-bgcode / small8.94:1
Pass
87.3Target met
syn-comment / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-comment / diff-del-bgcode / small8.36:1
Pass
82.9Target met
syn-function / code-bgcode / small13.44:1
Pass
95.9Target met
syn-function / diff-add-bgcode / small12.77:1
Pass
92.5Target met
syn-function / diff-del-bgcode / small12.58:1
Pass
91.5Target met
syn-type / code-bgcode / small10.47:1
Pass
88.8Target met
syn-type / diff-add-bgcode / small9.95:1
Pass
85.3Target met
syn-type / diff-del-bgcode / small9.8:1
Pass
84.3Target met
syn-punctuation / code-bgcode / small8.94:1
Pass
87.3Target met
syn-punctuation / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-punctuation / diff-del-bgcode / small8.36:1
Pass
82.9Target met
text-on-accent / brandbrand graphic7.57:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link10.62:1
Pass
92Target met
lane-1 / surfacelabelled graph stroke3.45:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke11.54:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke9.04:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke15.12:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke4.68:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke7.31:1
Pass
Not text3:1 graphic / boundary rule

Light / Sky

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.96:1
Pass
102.2Target met
text / bg-subtlebody / small17.49:1
Pass
100.3Target met
text / surfacebody / small16.74:1
Pass
97.3Target met
text / surface-raisedbody / small15.72:1
Pass
93.4Target met
text / surface-sunkenbody / small17.49:1
Pass
100.3Target met
text / surface-translucentbody / small16.79:1
Pass
97.5Target met
text-secondary / bgbody / small9.19:1
Pass
89.2Target met
text-secondary / bg-subtlebody / small8.94:1
Pass
87.3Target met
text-secondary / surfacebody / small8.55:1
Pass
84.3Target met
text-secondary / surface-raisedbody / small8.05:1
Pass
80.4Target met
text-secondary / surface-sunkenbody / small8.94:1
Pass
87.3Target met
text-secondary / surface-translucentbody / small8.58:1
Pass
84.5Target met
text-muted / bgbody / small8.1:1
Pass
86.1Target met
text-muted / bg-subtlebody / small7.87:1
Pass
84.2Target met
text-muted / surfacebody / small7.53:1
Pass
81.2Target met
text-muted / surface-raisedbody / small7.09:1
Pass
77.2Target met
text-muted / surface-sunkenbody / small7.87:1
Pass
84.2Target met
text-muted / surface-translucentbody / small7.56:1
Pass
81.4Target met
text-link / bgbody / small8.64:1
Pass
87.1Target met
text-link / bg-subtlebody / small8.41:1
Pass
85.2Target met
text-link / surfacebody / small8.05:1
Pass
82.3Target met
text-link / surface-raisedbody / small7.56:1
Pass
78.3Target met
text-link / surface-sunkenbody / small8.41:1
Pass
85.2Target met
text-link / surface-translucentbody / small8.07:1
Pass
82.5Target met
text-link-hover / bgbody / small17.07:1
Pass
101.4Target met
text-link-hover / bg-subtlebody / small16.58:1
Pass
99.4Target met
text-link-hover / surfacebody / small15.87:1
Pass
96.4Target met
text-link-hover / surface-raisedbody / small14.95:1
Pass
92.5Target met
text-link-hover / surface-sunkenbody / small16.58:1
Pass
99.4Target met
text-link-hover / surface-translucentbody / small15.91:1
Pass
96.6Target met
border-strong / bgcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus3.97:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus3.74:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus8.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus8.41:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus8.05:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus7.56:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus8.41:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus8.07:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus3.68:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus3.58:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus3.43:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus3.23:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus3.58:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus3.44:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop6.82:1
Pass
-87.2Target met
text-on-accent / accent-hoverbutton text / gradient stop8.88:1
Pass
-93.4Target met
text-on-accent / accent-activebutton text / gradient stop14.24:1
Pass
-102.6Target met
text-on-accent / accent-gradient-endbutton text / gradient stop6.82:1
Pass
-87.2Target met
success-text / success-bgstatus text7.74:1
Pass
81Target met
success-border / success-bgstatus border3.29:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text7.8:1
Pass
81.5Target met
success-text / surface-raisedstatus text7.35:1
Pass
77.6Target met
warning-text / warning-bgstatus text10.48:1
Pass
87.7Target met
warning-border / warning-bgstatus border3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text10.73:1
Pass
89.2Target met
warning-text / surface-raisedstatus text10.08:1
Pass
85.1Target met
danger-text / danger-bgstatus text15.46:1
Pass
94.1Target met
danger-border / danger-bgstatus border3.74:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text15.81:1
Pass
95.6Target met
danger-text / surface-raisedstatus text14.89:1
Pass
91.6Target met
info-text / info-bgstatus text12.72:1
Pass
92.2Target met
info-border / info-bgstatus border3.39:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text12.86:1
Pass
92.9Target met
info-text / surface-raisedstatus text12.11:1
Pass
89Target met
code-text / code-bgcode / small17.49:1
Pass
100.3Target met
code-text / diff-add-bgcode / small16.61:1
Pass
96.9Target met
code-text / diff-del-bgcode / small16.36:1
Pass
95.9Target met
syn-keyword / code-bgcode / small10.32:1
Pass
90.1Target met
syn-keyword / diff-add-bgcode / small9.8:1
Pass
86.6Target met
syn-keyword / diff-del-bgcode / small9.66:1
Pass
85.7Target met
syn-string / code-bgcode / small9.38:1
Pass
87.9Target met
syn-string / diff-add-bgcode / small8.91:1
Pass
84.5Target met
syn-string / diff-del-bgcode / small8.78:1
Pass
83.5Target met
syn-number / code-bgcode / small9.84:1
Pass
89.3Target met
syn-number / diff-add-bgcode / small9.34:1
Pass
85.8Target met
syn-number / diff-del-bgcode / small9.2:1
Pass
84.9Target met
syn-comment / code-bgcode / small8.94:1
Pass
87.3Target met
syn-comment / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-comment / diff-del-bgcode / small8.36:1
Pass
82.9Target met
syn-function / code-bgcode / small13.44:1
Pass
95.9Target met
syn-function / diff-add-bgcode / small12.77:1
Pass
92.5Target met
syn-function / diff-del-bgcode / small12.58:1
Pass
91.5Target met
syn-type / code-bgcode / small10.47:1
Pass
88.8Target met
syn-type / diff-add-bgcode / small9.95:1
Pass
85.3Target met
syn-type / diff-del-bgcode / small9.8:1
Pass
84.3Target met
syn-punctuation / code-bgcode / small8.94:1
Pass
87.3Target met
syn-punctuation / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-punctuation / diff-del-bgcode / small8.36:1
Pass
82.9Target met
text-on-accent / brandbrand graphic7.57:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link10.62:1
Pass
92Target met
lane-1 / surfacelabelled graph stroke3.45:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke11.54:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke9.04:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke15.12:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke4.68:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke7.31:1
Pass
Not text3:1 graphic / boundary rule

Light / Rose

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.96:1
Pass
102.2Target met
text / bg-subtlebody / small17.49:1
Pass
100.3Target met
text / surfacebody / small16.74:1
Pass
97.3Target met
text / surface-raisedbody / small15.72:1
Pass
93.4Target met
text / surface-sunkenbody / small17.49:1
Pass
100.3Target met
text / surface-translucentbody / small16.79:1
Pass
97.5Target met
text-secondary / bgbody / small9.19:1
Pass
89.2Target met
text-secondary / bg-subtlebody / small8.94:1
Pass
87.3Target met
text-secondary / surfacebody / small8.55:1
Pass
84.3Target met
text-secondary / surface-raisedbody / small8.05:1
Pass
80.4Target met
text-secondary / surface-sunkenbody / small8.94:1
Pass
87.3Target met
text-secondary / surface-translucentbody / small8.58:1
Pass
84.5Target met
text-muted / bgbody / small8.1:1
Pass
86.1Target met
text-muted / bg-subtlebody / small7.87:1
Pass
84.2Target met
text-muted / surfacebody / small7.53:1
Pass
81.2Target met
text-muted / surface-raisedbody / small7.09:1
Pass
77.2Target met
text-muted / surface-sunkenbody / small7.87:1
Pass
84.2Target met
text-muted / surface-translucentbody / small7.56:1
Pass
81.4Target met
text-link / bgbody / small9.58:1
Pass
87.8Target met
text-link / bg-subtlebody / small9.33:1
Pass
85.9Target met
text-link / surfacebody / small8.93:1
Pass
83Target met
text-link / surface-raisedbody / small8.39:1
Pass
79Target met
text-link / surface-sunkenbody / small9.33:1
Pass
85.9Target met
text-link / surface-translucentbody / small8.96:1
Pass
83.2Target met
text-link-hover / bgbody / small17.49:1
Pass
101.1Target met
text-link-hover / bg-subtlebody / small17.01:1
Pass
99.2Target met
text-link-hover / surfacebody / small16.27:1
Pass
96.3Target met
text-link-hover / surface-raisedbody / small15.31:1
Pass
92.3Target met
text-link-hover / surface-sunkenbody / small17.01:1
Pass
99.2Target met
text-link-hover / surface-translucentbody / small16.32:1
Pass
96.5Target met
border-strong / bgcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus3.97:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus3.74:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus9.58:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus9.33:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus8.93:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus8.39:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus9.33:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus8.96:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus4.13:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus4.01:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus3.84:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus3.62:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus4.01:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus3.85:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.73:1
Pass
-88.4Target met
text-on-accent / accent-hoverbutton text / gradient stop9.85:1
Pass
-94Target met
text-on-accent / accent-activebutton text / gradient stop11.05:1
Pass
-96.5Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.73:1
Pass
-88.4Target met
success-text / success-bgstatus text7.74:1
Pass
81Target met
success-border / success-bgstatus border3.29:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text7.8:1
Pass
81.5Target met
success-text / surface-raisedstatus text7.35:1
Pass
77.6Target met
warning-text / warning-bgstatus text10.48:1
Pass
87.7Target met
warning-border / warning-bgstatus border3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text10.73:1
Pass
89.2Target met
warning-text / surface-raisedstatus text10.08:1
Pass
85.1Target met
danger-text / danger-bgstatus text15.46:1
Pass
94.1Target met
danger-border / danger-bgstatus border3.74:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text15.81:1
Pass
95.6Target met
danger-text / surface-raisedstatus text14.89:1
Pass
91.6Target met
info-text / info-bgstatus text12.72:1
Pass
92.2Target met
info-border / info-bgstatus border3.39:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text12.86:1
Pass
92.9Target met
info-text / surface-raisedstatus text12.11:1
Pass
89Target met
code-text / code-bgcode / small17.49:1
Pass
100.3Target met
code-text / diff-add-bgcode / small16.61:1
Pass
96.9Target met
code-text / diff-del-bgcode / small16.36:1
Pass
95.9Target met
syn-keyword / code-bgcode / small10.32:1
Pass
90.1Target met
syn-keyword / diff-add-bgcode / small9.8:1
Pass
86.6Target met
syn-keyword / diff-del-bgcode / small9.66:1
Pass
85.7Target met
syn-string / code-bgcode / small9.38:1
Pass
87.9Target met
syn-string / diff-add-bgcode / small8.91:1
Pass
84.5Target met
syn-string / diff-del-bgcode / small8.78:1
Pass
83.5Target met
syn-number / code-bgcode / small9.84:1
Pass
89.3Target met
syn-number / diff-add-bgcode / small9.34:1
Pass
85.8Target met
syn-number / diff-del-bgcode / small9.2:1
Pass
84.9Target met
syn-comment / code-bgcode / small8.94:1
Pass
87.3Target met
syn-comment / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-comment / diff-del-bgcode / small8.36:1
Pass
82.9Target met
syn-function / code-bgcode / small13.44:1
Pass
95.9Target met
syn-function / diff-add-bgcode / small12.77:1
Pass
92.5Target met
syn-function / diff-del-bgcode / small12.58:1
Pass
91.5Target met
syn-type / code-bgcode / small10.47:1
Pass
88.8Target met
syn-type / diff-add-bgcode / small9.95:1
Pass
85.3Target met
syn-type / diff-del-bgcode / small9.8:1
Pass
84.3Target met
syn-punctuation / code-bgcode / small8.94:1
Pass
87.3Target met
syn-punctuation / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-punctuation / diff-del-bgcode / small8.36:1
Pass
82.9Target met
text-on-accent / brandbrand graphic7.57:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link10.62:1
Pass
92Target met
lane-1 / surfacelabelled graph stroke3.45:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke11.54:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke9.04:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke15.12:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke4.68:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke7.31:1
Pass
Not text3:1 graphic / boundary rule

Light / Amber

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.96:1
Pass
102.2Target met
text / bg-subtlebody / small17.49:1
Pass
100.3Target met
text / surfacebody / small16.74:1
Pass
97.3Target met
text / surface-raisedbody / small15.72:1
Pass
93.4Target met
text / surface-sunkenbody / small17.49:1
Pass
100.3Target met
text / surface-translucentbody / small16.79:1
Pass
97.5Target met
text-secondary / bgbody / small9.19:1
Pass
89.2Target met
text-secondary / bg-subtlebody / small8.94:1
Pass
87.3Target met
text-secondary / surfacebody / small8.55:1
Pass
84.3Target met
text-secondary / surface-raisedbody / small8.05:1
Pass
80.4Target met
text-secondary / surface-sunkenbody / small8.94:1
Pass
87.3Target met
text-secondary / surface-translucentbody / small8.58:1
Pass
84.5Target met
text-muted / bgbody / small8.1:1
Pass
86.1Target met
text-muted / bg-subtlebody / small7.87:1
Pass
84.2Target met
text-muted / surfacebody / small7.53:1
Pass
81.2Target met
text-muted / surface-raisedbody / small7.09:1
Pass
77.2Target met
text-muted / surface-sunkenbody / small7.87:1
Pass
84.2Target met
text-muted / surface-translucentbody / small7.56:1
Pass
81.4Target met
text-link / bgbody / small8.92:1
Pass
88.2Target met
text-link / bg-subtlebody / small8.69:1
Pass
86.3Target met
text-link / surfacebody / small8.32:1
Pass
83.4Target met
text-link / surface-raisedbody / small7.81:1
Pass
79.3Target met
text-link / surface-sunkenbody / small8.69:1
Pass
86.3Target met
text-link / surface-translucentbody / small8.34:1
Pass
83.6Target met
text-link-hover / bgbody / small17.2:1
Pass
101.5Target met
text-link-hover / bg-subtlebody / small16.73:1
Pass
99.6Target met
text-link-hover / surfacebody / small16.01:1
Pass
96.7Target met
text-link-hover / surface-raisedbody / small15.06:1
Pass
92.7Target met
text-link-hover / surface-sunkenbody / small16.73:1
Pass
99.6Target met
text-link-hover / surface-translucentbody / small16.06:1
Pass
96.9Target met
border-strong / bgcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus3.97:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus3.74:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.15:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus3.99:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus8.92:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus8.69:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus8.32:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus7.81:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus8.69:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus8.34:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus3.86:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus3.75:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus3.59:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus3.38:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus3.75:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.12:1
Pass
-88.5Target met
text-on-accent / accent-hoverbutton text / gradient stop9.17:1
Pass
-94.3Target met
text-on-accent / accent-activebutton text / gradient stop10.38:1
Pass
-96.9Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.12:1
Pass
-88.5Target met
success-text / success-bgstatus text7.74:1
Pass
81Target met
success-border / success-bgstatus border3.29:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text7.8:1
Pass
81.5Target met
success-text / surface-raisedstatus text7.35:1
Pass
77.6Target met
warning-text / warning-bgstatus text10.48:1
Pass
87.7Target met
warning-border / warning-bgstatus border3.6:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text10.73:1
Pass
89.2Target met
warning-text / surface-raisedstatus text10.08:1
Pass
85.1Target met
danger-text / danger-bgstatus text15.46:1
Pass
94.1Target met
danger-border / danger-bgstatus border3.74:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text15.81:1
Pass
95.6Target met
danger-text / surface-raisedstatus text14.89:1
Pass
91.6Target met
info-text / info-bgstatus text12.72:1
Pass
92.2Target met
info-border / info-bgstatus border3.39:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text12.86:1
Pass
92.9Target met
info-text / surface-raisedstatus text12.11:1
Pass
89Target met
code-text / code-bgcode / small17.49:1
Pass
100.3Target met
code-text / diff-add-bgcode / small16.61:1
Pass
96.9Target met
code-text / diff-del-bgcode / small16.36:1
Pass
95.9Target met
syn-keyword / code-bgcode / small10.32:1
Pass
90.1Target met
syn-keyword / diff-add-bgcode / small9.8:1
Pass
86.6Target met
syn-keyword / diff-del-bgcode / small9.66:1
Pass
85.7Target met
syn-string / code-bgcode / small9.38:1
Pass
87.9Target met
syn-string / diff-add-bgcode / small8.91:1
Pass
84.5Target met
syn-string / diff-del-bgcode / small8.78:1
Pass
83.5Target met
syn-number / code-bgcode / small9.84:1
Pass
89.3Target met
syn-number / diff-add-bgcode / small9.34:1
Pass
85.8Target met
syn-number / diff-del-bgcode / small9.2:1
Pass
84.9Target met
syn-comment / code-bgcode / small8.94:1
Pass
87.3Target met
syn-comment / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-comment / diff-del-bgcode / small8.36:1
Pass
82.9Target met
syn-function / code-bgcode / small13.44:1
Pass
95.9Target met
syn-function / diff-add-bgcode / small12.77:1
Pass
92.5Target met
syn-function / diff-del-bgcode / small12.58:1
Pass
91.5Target met
syn-type / code-bgcode / small10.47:1
Pass
88.8Target met
syn-type / diff-add-bgcode / small9.95:1
Pass
85.3Target met
syn-type / diff-del-bgcode / small9.8:1
Pass
84.3Target met
syn-punctuation / code-bgcode / small8.94:1
Pass
87.3Target met
syn-punctuation / diff-add-bgcode / small8.49:1
Pass
83.8Target met
syn-punctuation / diff-del-bgcode / small8.36:1
Pass
82.9Target met
text-on-accent / brandbrand graphic7.57:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link10.62:1
Pass
92Target met
lane-1 / surfacelabelled graph stroke3.45:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke11.54:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke9.04:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke15.12:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke4.68:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke7.31:1
Pass
Not text3:1 graphic / boundary rule

Dark / Violet

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.49:1
Pass
-99.7Target met
text / bg-subtlebody / small16.89:1
Pass
-99.4Target met
text / surfacebody / small15.81:1
Pass
-98.7Target met
text / surface-raisedbody / small14.65:1
Pass
-97.8Target met
text / surface-sunkenbody / small16.89:1
Pass
-99.4Target met
text / surface-translucentbody / small15.89:1
Pass
-98.8Target met
text-secondary / bgbody / small13.09:1
Pass
-80.2Target met
text-secondary / bg-subtlebody / small12.64:1
Pass
-79.9Target met
text-secondary / surfacebody / small11.82:1
Pass
-79.2Target met
text-secondary / surface-raisedbody / small10.95:1
Pass
-78.3Target met
text-secondary / surface-sunkenbody / small12.64:1
Pass
-79.9Target met
text-secondary / surface-translucentbody / small11.88:1
Pass
-79.3Target met
text-muted / bgbody / small12.68:1
Pass
-78.3Target met
text-muted / bg-subtlebody / small12.27:1
Pass
-78Target met
text-muted / surfacebody / small11.45:1
Pass
-77.3Target met
text-muted / surface-raisedbody / small10.6:1
Pass
-76.4Target met
text-muted / surface-sunkenbody / small12.27:1
Pass
-78Target met
text-muted / surface-translucentbody / small11.5:1
Pass
-77.3Target met
text-link / bgbody / small13.38:1
Pass
-81.6Target met
text-link / bg-subtlebody / small12.97:1
Pass
-81.3Target met
text-link / surfacebody / small12.08:1
Pass
-80.6Target met
text-link / surface-raisedbody / small11.19:1
Pass
-79.7Target met
text-link / surface-sunkenbody / small12.97:1
Pass
-81.3Target met
text-link / surface-translucentbody / small12.14:1
Pass
-80.6Target met
text-link-hover / bgbody / small17.76:1
Pass
-100.8Target met
text-link-hover / bg-subtlebody / small17.17:1
Pass
-100.6Target met
text-link-hover / surfacebody / small16.03:1
Pass
-99.8Target met
text-link-hover / surface-raisedbody / small14.85:1
Pass
-98.9Target met
text-link-hover / surface-sunkenbody / small17.17:1
Pass
-100.6Target met
text-link-hover / surface-translucentbody / small16.11:1
Pass
-99.9Target met
border-strong / bgcontrol boundary / focus5.12:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus4.62:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus13.38:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus12.97:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus12.08:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus11.19:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus12.97:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus12.14:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus5.14:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus4.97:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus4.3:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus4.97:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus4.66:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.57:1
Pass
-89.7Target met
text-on-accent / accent-hoverbutton text / gradient stop6.67:1
Pass
-86.6Target met
text-on-accent / accent-activebutton text / gradient stop7.57:1
Pass
-89.7Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.45:1
Pass
-89.3Target met
success-text / success-bgstatus text16.51:1
Pass
-104.3Target met
success-border / success-bgstatus border4.99:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text17.11:1
Pass
-104.8Target met
success-text / surface-raisedstatus text15.85:1
Pass
-103.9Target met
warning-text / warning-bgstatus text11:1
Pass
-75.8Target met
warning-border / warning-bgstatus border4.62:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text11.22:1
Pass
-76.1Target met
warning-text / surface-raisedstatus text10.39:1
Pass
-75.2Target met
danger-text / danger-bgstatus text12.6:1
Pass
-83.6Target met
danger-border / danger-bgstatus border4.43:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text12.75:1
Pass
-84Target met
danger-text / surface-raisedstatus text11.81:1
Pass
-83Target met
info-text / info-bgstatus text14.29:1
Pass
-93.5Target met
info-border / info-bgstatus border4.86:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text14.8:1
Pass
-94Target met
info-text / surface-raisedstatus text13.71:1
Pass
-93.1Target met
code-text / code-bgcode / small16.89:1
Pass
-99.4Target met
code-text / diff-add-bgcode / small15.22:1
Pass
-98.2Target met
code-text / diff-del-bgcode / small15.62:1
Pass
-98.3Target met
syn-keyword / code-bgcode / small12.97:1
Pass
-81.3Target met
syn-keyword / diff-add-bgcode / small11.66:1
Pass
-80.1Target met
syn-keyword / diff-del-bgcode / small11.98:1
Pass
-80.3Target met
syn-string / code-bgcode / small13.48:1
Pass
-83.8Target met
syn-string / diff-add-bgcode / small12.12:1
Pass
-82.6Target met
syn-string / diff-del-bgcode / small12.45:1
Pass
-82.8Target met
syn-number / code-bgcode / small12.97:1
Pass
-81.5Target met
syn-number / diff-add-bgcode / small11.68:1
Pass
-80.3Target met
syn-number / diff-del-bgcode / small12:1
Pass
-80.4Target met
syn-comment / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-comment / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-comment / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
syn-function / code-bgcode / small15.81:1
Pass
-94.7Target met
syn-function / diff-add-bgcode / small14.25:1
Pass
-93.5Target met
syn-function / diff-del-bgcode / small14.62:1
Pass
-93.6Target met
syn-type / code-bgcode / small12.75:1
Pass
-80.5Target met
syn-type / diff-add-bgcode / small11.49:1
Pass
-79.3Target met
syn-type / diff-del-bgcode / small11.79:1
Pass
-79.4Target met
syn-punctuation / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-punctuation / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-punctuation / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
text-on-accent / brandbrand graphic3.71:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link13.38:1
Pass
-81.6Target met
lane-1 / surfacelabelled graph stroke6.96:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke8.38:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke12.08:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke3.64:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke10.53:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke4.86:1
Pass
Not text3:1 graphic / boundary rule

Dark / Teal

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.49:1
Pass
-99.7Target met
text / bg-subtlebody / small16.89:1
Pass
-99.4Target met
text / surfacebody / small15.81:1
Pass
-98.7Target met
text / surface-raisedbody / small14.65:1
Pass
-97.8Target met
text / surface-sunkenbody / small16.89:1
Pass
-99.4Target met
text / surface-translucentbody / small15.89:1
Pass
-98.8Target met
text-secondary / bgbody / small13.09:1
Pass
-80.2Target met
text-secondary / bg-subtlebody / small12.64:1
Pass
-79.9Target met
text-secondary / surfacebody / small11.82:1
Pass
-79.2Target met
text-secondary / surface-raisedbody / small10.95:1
Pass
-78.3Target met
text-secondary / surface-sunkenbody / small12.64:1
Pass
-79.9Target met
text-secondary / surface-translucentbody / small11.88:1
Pass
-79.3Target met
text-muted / bgbody / small12.68:1
Pass
-78.3Target met
text-muted / bg-subtlebody / small12.27:1
Pass
-78Target met
text-muted / surfacebody / small11.45:1
Pass
-77.3Target met
text-muted / surface-raisedbody / small10.6:1
Pass
-76.4Target met
text-muted / surface-sunkenbody / small12.27:1
Pass
-78Target met
text-muted / surface-translucentbody / small11.5:1
Pass
-77.3Target met
text-link / bgbody / small13.91:1
Pass
-84.1Target met
text-link / bg-subtlebody / small13.48:1
Pass
-83.8Target met
text-link / surfacebody / small12.56:1
Pass
-83.1Target met
text-link / surface-raisedbody / small11.63:1
Pass
-82.2Target met
text-link / surface-sunkenbody / small13.48:1
Pass
-83.8Target met
text-link / surface-translucentbody / small12.62:1
Pass
-83.2Target met
text-link-hover / bgbody / small17.9:1
Pass
-101.4Target met
text-link-hover / bg-subtlebody / small17.33:1
Pass
-101.2Target met
text-link-hover / surfacebody / small16.15:1
Pass
-100.4Target met
text-link-hover / surface-raisedbody / small14.96:1
Pass
-99.5Target met
text-link-hover / surface-sunkenbody / small17.33:1
Pass
-101.2Target met
text-link-hover / surface-translucentbody / small16.23:1
Pass
-100.5Target met
border-strong / bgcontrol boundary / focus5.12:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus4.62:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus13.91:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus13.48:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus12.56:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus11.63:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus13.48:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus12.62:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus5.74:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus5.56:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus5.18:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus4.8:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus5.56:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus5.2:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop6.69:1
Pass
-86.7Target met
text-on-accent / accent-hoverbutton text / gradient stop5.89:1
Pass
-83.4Target met
text-on-accent / accent-activebutton text / gradient stop6.69:1
Pass
-86.7Target met
text-on-accent / accent-gradient-endbutton text / gradient stop6.69:1
Pass
-86.7Target met
success-text / success-bgstatus text16.51:1
Pass
-104.3Target met
success-border / success-bgstatus border4.99:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text17.11:1
Pass
-104.8Target met
success-text / surface-raisedstatus text15.85:1
Pass
-103.9Target met
warning-text / warning-bgstatus text11:1
Pass
-75.8Target met
warning-border / warning-bgstatus border4.62:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text11.22:1
Pass
-76.1Target met
warning-text / surface-raisedstatus text10.39:1
Pass
-75.2Target met
danger-text / danger-bgstatus text12.6:1
Pass
-83.6Target met
danger-border / danger-bgstatus border4.43:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text12.75:1
Pass
-84Target met
danger-text / surface-raisedstatus text11.81:1
Pass
-83Target met
info-text / info-bgstatus text14.29:1
Pass
-93.5Target met
info-border / info-bgstatus border4.86:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text14.8:1
Pass
-94Target met
info-text / surface-raisedstatus text13.71:1
Pass
-93.1Target met
code-text / code-bgcode / small16.89:1
Pass
-99.4Target met
code-text / diff-add-bgcode / small15.22:1
Pass
-98.2Target met
code-text / diff-del-bgcode / small15.62:1
Pass
-98.3Target met
syn-keyword / code-bgcode / small12.97:1
Pass
-81.3Target met
syn-keyword / diff-add-bgcode / small11.66:1
Pass
-80.1Target met
syn-keyword / diff-del-bgcode / small11.98:1
Pass
-80.3Target met
syn-string / code-bgcode / small13.48:1
Pass
-83.8Target met
syn-string / diff-add-bgcode / small12.12:1
Pass
-82.6Target met
syn-string / diff-del-bgcode / small12.45:1
Pass
-82.8Target met
syn-number / code-bgcode / small12.97:1
Pass
-81.5Target met
syn-number / diff-add-bgcode / small11.68:1
Pass
-80.3Target met
syn-number / diff-del-bgcode / small12:1
Pass
-80.4Target met
syn-comment / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-comment / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-comment / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
syn-function / code-bgcode / small15.81:1
Pass
-94.7Target met
syn-function / diff-add-bgcode / small14.25:1
Pass
-93.5Target met
syn-function / diff-del-bgcode / small14.62:1
Pass
-93.6Target met
syn-type / code-bgcode / small12.75:1
Pass
-80.5Target met
syn-type / diff-add-bgcode / small11.49:1
Pass
-79.3Target met
syn-type / diff-del-bgcode / small11.79:1
Pass
-79.4Target met
syn-punctuation / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-punctuation / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-punctuation / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
text-on-accent / brandbrand graphic3.71:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link13.38:1
Pass
-81.6Target met
lane-1 / surfacelabelled graph stroke6.96:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke8.38:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke12.08:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke3.64:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke10.53:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke4.86:1
Pass
Not text3:1 graphic / boundary rule

Dark / Sky

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.49:1
Pass
-99.7Target met
text / bg-subtlebody / small16.89:1
Pass
-99.4Target met
text / surfacebody / small15.81:1
Pass
-98.7Target met
text / surface-raisedbody / small14.65:1
Pass
-97.8Target met
text / surface-sunkenbody / small16.89:1
Pass
-99.4Target met
text / surface-translucentbody / small15.89:1
Pass
-98.8Target met
text-secondary / bgbody / small13.09:1
Pass
-80.2Target met
text-secondary / bg-subtlebody / small12.64:1
Pass
-79.9Target met
text-secondary / surfacebody / small11.82:1
Pass
-79.2Target met
text-secondary / surface-raisedbody / small10.95:1
Pass
-78.3Target met
text-secondary / surface-sunkenbody / small12.64:1
Pass
-79.9Target met
text-secondary / surface-translucentbody / small11.88:1
Pass
-79.3Target met
text-muted / bgbody / small12.68:1
Pass
-78.3Target met
text-muted / bg-subtlebody / small12.27:1
Pass
-78Target met
text-muted / surfacebody / small11.45:1
Pass
-77.3Target met
text-muted / surface-raisedbody / small10.6:1
Pass
-76.4Target met
text-muted / surface-sunkenbody / small12.27:1
Pass
-78Target met
text-muted / surface-translucentbody / small11.5:1
Pass
-77.3Target met
text-link / bgbody / small16.37:1
Pass
-94.9Target met
text-link / bg-subtlebody / small15.81:1
Pass
-94.7Target met
text-link / surfacebody / small14.8:1
Pass
-94Target met
text-link / surface-raisedbody / small13.71:1
Pass
-93.1Target met
text-link / surface-sunkenbody / small15.81:1
Pass
-94.7Target met
text-link / surface-translucentbody / small14.87:1
Pass
-94Target met
text-link-hover / bgbody / small17.81:1
Pass
-101Target met
text-link-hover / bg-subtlebody / small17.21:1
Pass
-100.8Target met
text-link-hover / surfacebody / small16.11:1
Pass
-100.1Target met
text-link-hover / surface-raisedbody / small14.92:1
Pass
-99.2Target met
text-link-hover / surface-sunkenbody / small17.21:1
Pass
-100.8Target met
text-link-hover / surface-translucentbody / small16.18:1
Pass
-100.1Target met
border-strong / bgcontrol boundary / focus5.12:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus4.62:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus16.37:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus15.81:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus14.8:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus13.71:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus15.81:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus14.87:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus5.57:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus5.38:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus5.03:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus4.66:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus5.38:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus5.06:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop6.82:1
Pass
-87.2Target met
text-on-accent / accent-hoverbutton text / gradient stop5.99:1
Pass
-83.8Target met
text-on-accent / accent-activebutton text / gradient stop6.82:1
Pass
-87.2Target met
text-on-accent / accent-gradient-endbutton text / gradient stop6.82:1
Pass
-87.2Target met
success-text / success-bgstatus text16.51:1
Pass
-104.3Target met
success-border / success-bgstatus border4.99:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text17.11:1
Pass
-104.8Target met
success-text / surface-raisedstatus text15.85:1
Pass
-103.9Target met
warning-text / warning-bgstatus text11:1
Pass
-75.8Target met
warning-border / warning-bgstatus border4.62:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text11.22:1
Pass
-76.1Target met
warning-text / surface-raisedstatus text10.39:1
Pass
-75.2Target met
danger-text / danger-bgstatus text12.6:1
Pass
-83.6Target met
danger-border / danger-bgstatus border4.43:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text12.75:1
Pass
-84Target met
danger-text / surface-raisedstatus text11.81:1
Pass
-83Target met
info-text / info-bgstatus text14.29:1
Pass
-93.5Target met
info-border / info-bgstatus border4.86:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text14.8:1
Pass
-94Target met
info-text / surface-raisedstatus text13.71:1
Pass
-93.1Target met
code-text / code-bgcode / small16.89:1
Pass
-99.4Target met
code-text / diff-add-bgcode / small15.22:1
Pass
-98.2Target met
code-text / diff-del-bgcode / small15.62:1
Pass
-98.3Target met
syn-keyword / code-bgcode / small12.97:1
Pass
-81.3Target met
syn-keyword / diff-add-bgcode / small11.66:1
Pass
-80.1Target met
syn-keyword / diff-del-bgcode / small11.98:1
Pass
-80.3Target met
syn-string / code-bgcode / small13.48:1
Pass
-83.8Target met
syn-string / diff-add-bgcode / small12.12:1
Pass
-82.6Target met
syn-string / diff-del-bgcode / small12.45:1
Pass
-82.8Target met
syn-number / code-bgcode / small12.97:1
Pass
-81.5Target met
syn-number / diff-add-bgcode / small11.68:1
Pass
-80.3Target met
syn-number / diff-del-bgcode / small12:1
Pass
-80.4Target met
syn-comment / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-comment / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-comment / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
syn-function / code-bgcode / small15.81:1
Pass
-94.7Target met
syn-function / diff-add-bgcode / small14.25:1
Pass
-93.5Target met
syn-function / diff-del-bgcode / small14.62:1
Pass
-93.6Target met
syn-type / code-bgcode / small12.75:1
Pass
-80.5Target met
syn-type / diff-add-bgcode / small11.49:1
Pass
-79.3Target met
syn-type / diff-del-bgcode / small11.79:1
Pass
-79.4Target met
syn-punctuation / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-punctuation / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-punctuation / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
text-on-accent / brandbrand graphic3.71:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link13.38:1
Pass
-81.6Target met
lane-1 / surfacelabelled graph stroke6.96:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke8.38:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke12.08:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke3.64:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke10.53:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke4.86:1
Pass
Not text3:1 graphic / boundary rule

Dark / Rose

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.49:1
Pass
-99.7Target met
text / bg-subtlebody / small16.89:1
Pass
-99.4Target met
text / surfacebody / small15.81:1
Pass
-98.7Target met
text / surface-raisedbody / small14.65:1
Pass
-97.8Target met
text / surface-sunkenbody / small16.89:1
Pass
-99.4Target met
text / surface-translucentbody / small15.89:1
Pass
-98.8Target met
text-secondary / bgbody / small13.09:1
Pass
-80.2Target met
text-secondary / bg-subtlebody / small12.64:1
Pass
-79.9Target met
text-secondary / surfacebody / small11.82:1
Pass
-79.2Target met
text-secondary / surface-raisedbody / small10.95:1
Pass
-78.3Target met
text-secondary / surface-sunkenbody / small12.64:1
Pass
-79.9Target met
text-secondary / surface-translucentbody / small11.88:1
Pass
-79.3Target met
text-muted / bgbody / small12.68:1
Pass
-78.3Target met
text-muted / bg-subtlebody / small12.27:1
Pass
-78Target met
text-muted / surfacebody / small11.45:1
Pass
-77.3Target met
text-muted / surface-raisedbody / small10.6:1
Pass
-76.4Target met
text-muted / surface-sunkenbody / small12.27:1
Pass
-78Target met
text-muted / surface-translucentbody / small11.5:1
Pass
-77.3Target met
text-link / bgbody / small13.19:1
Pass
-80.7Target met
text-link / bg-subtlebody / small12.75:1
Pass
-80.5Target met
text-link / surfacebody / small11.91:1
Pass
-79.8Target met
text-link / surface-raisedbody / small11.03:1
Pass
-78.8Target met
text-link / surface-sunkenbody / small12.75:1
Pass
-80.5Target met
text-link / surface-translucentbody / small11.96:1
Pass
-79.8Target met
text-link-hover / bgbody / small17.67:1
Pass
-100.5Target met
text-link-hover / bg-subtlebody / small17.07:1
Pass
-100.2Target met
text-link-hover / surfacebody / small15.98:1
Pass
-99.5Target met
text-link-hover / surface-raisedbody / small14.8:1
Pass
-98.6Target met
text-link-hover / surface-sunkenbody / small17.07:1
Pass
-100.2Target met
text-link-hover / surface-translucentbody / small16.06:1
Pass
-99.5Target met
border-strong / bgcontrol boundary / focus5.12:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus4.62:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus13.19:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus12.75:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus11.91:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus11.03:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus12.75:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus11.96:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus4.95:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus4.78:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus4.47:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus4.14:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus4.78:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus4.5:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.73:1
Pass
-88.4Target met
text-on-accent / accent-hoverbutton text / gradient stop6.88:1
Pass
-85.4Target met
text-on-accent / accent-activebutton text / gradient stop7.73:1
Pass
-88.4Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.73:1
Pass
-88.4Target met
success-text / success-bgstatus text16.51:1
Pass
-104.3Target met
success-border / success-bgstatus border4.99:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text17.11:1
Pass
-104.8Target met
success-text / surface-raisedstatus text15.85:1
Pass
-103.9Target met
warning-text / warning-bgstatus text11:1
Pass
-75.8Target met
warning-border / warning-bgstatus border4.62:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text11.22:1
Pass
-76.1Target met
warning-text / surface-raisedstatus text10.39:1
Pass
-75.2Target met
danger-text / danger-bgstatus text12.6:1
Pass
-83.6Target met
danger-border / danger-bgstatus border4.43:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text12.75:1
Pass
-84Target met
danger-text / surface-raisedstatus text11.81:1
Pass
-83Target met
info-text / info-bgstatus text14.29:1
Pass
-93.5Target met
info-border / info-bgstatus border4.86:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text14.8:1
Pass
-94Target met
info-text / surface-raisedstatus text13.71:1
Pass
-93.1Target met
code-text / code-bgcode / small16.89:1
Pass
-99.4Target met
code-text / diff-add-bgcode / small15.22:1
Pass
-98.2Target met
code-text / diff-del-bgcode / small15.62:1
Pass
-98.3Target met
syn-keyword / code-bgcode / small12.97:1
Pass
-81.3Target met
syn-keyword / diff-add-bgcode / small11.66:1
Pass
-80.1Target met
syn-keyword / diff-del-bgcode / small11.98:1
Pass
-80.3Target met
syn-string / code-bgcode / small13.48:1
Pass
-83.8Target met
syn-string / diff-add-bgcode / small12.12:1
Pass
-82.6Target met
syn-string / diff-del-bgcode / small12.45:1
Pass
-82.8Target met
syn-number / code-bgcode / small12.97:1
Pass
-81.5Target met
syn-number / diff-add-bgcode / small11.68:1
Pass
-80.3Target met
syn-number / diff-del-bgcode / small12:1
Pass
-80.4Target met
syn-comment / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-comment / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-comment / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
syn-function / code-bgcode / small15.81:1
Pass
-94.7Target met
syn-function / diff-add-bgcode / small14.25:1
Pass
-93.5Target met
syn-function / diff-del-bgcode / small14.62:1
Pass
-93.6Target met
syn-type / code-bgcode / small12.75:1
Pass
-80.5Target met
syn-type / diff-add-bgcode / small11.49:1
Pass
-79.3Target met
syn-type / diff-del-bgcode / small11.79:1
Pass
-79.4Target met
syn-punctuation / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-punctuation / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-punctuation / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
text-on-accent / brandbrand graphic3.71:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link13.38:1
Pass
-81.6Target met
lane-1 / surfacelabelled graph stroke6.96:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke8.38:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke12.08:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke3.64:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke10.53:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke4.86:1
Pass
Not text3:1 graphic / boundary rule

Dark / Amber

Current token-set contrast pairs
Text or UI pairWCAGAPCA Lc
text / bgbody / small17.49:1
Pass
-99.7Target met
text / bg-subtlebody / small16.89:1
Pass
-99.4Target met
text / surfacebody / small15.81:1
Pass
-98.7Target met
text / surface-raisedbody / small14.65:1
Pass
-97.8Target met
text / surface-sunkenbody / small16.89:1
Pass
-99.4Target met
text / surface-translucentbody / small15.89:1
Pass
-98.8Target met
text-secondary / bgbody / small13.09:1
Pass
-80.2Target met
text-secondary / bg-subtlebody / small12.64:1
Pass
-79.9Target met
text-secondary / surfacebody / small11.82:1
Pass
-79.2Target met
text-secondary / surface-raisedbody / small10.95:1
Pass
-78.3Target met
text-secondary / surface-sunkenbody / small12.64:1
Pass
-79.9Target met
text-secondary / surface-translucentbody / small11.88:1
Pass
-79.3Target met
text-muted / bgbody / small12.68:1
Pass
-78.3Target met
text-muted / bg-subtlebody / small12.27:1
Pass
-78Target met
text-muted / surfacebody / small11.45:1
Pass
-77.3Target met
text-muted / surface-raisedbody / small10.6:1
Pass
-76.4Target met
text-muted / surface-sunkenbody / small12.27:1
Pass
-78Target met
text-muted / surface-translucentbody / small11.5:1
Pass
-77.3Target met
text-link / bgbody / small13.4:1
Pass
-81.7Target met
text-link / bg-subtlebody / small12.97:1
Pass
-81.5Target met
text-link / surfacebody / small12.1:1
Pass
-80.7Target met
text-link / surface-raisedbody / small11.21:1
Pass
-79.8Target met
text-link / surface-sunkenbody / small12.97:1
Pass
-81.5Target met
text-link / surface-translucentbody / small12.16:1
Pass
-80.8Target met
text-link-hover / bgbody / small17.77:1
Pass
-100.9Target met
text-link-hover / bg-subtlebody / small17.21:1
Pass
-100.6Target met
text-link-hover / surfacebody / small16.04:1
Pass
-99.9Target met
text-link-hover / surface-raisedbody / small14.86:1
Pass
-99Target met
text-link-hover / surface-sunkenbody / small17.21:1
Pass
-100.6Target met
text-link-hover / surface-translucentbody / small16.12:1
Pass
-100Target met
border-strong / bgcontrol boundary / focus5.12:1
Pass
Not text3:1 graphic / boundary rule
border-strong / bg-subtlecontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surfacecontrol boundary / focus4.62:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-raisedcontrol boundary / focus4.28:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-sunkencontrol boundary / focus4.94:1
Pass
Not text3:1 graphic / boundary rule
border-strong / surface-translucentcontrol boundary / focus4.64:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bgcontrol boundary / focus13.4:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / bg-subtlecontrol boundary / focus12.97:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surfacecontrol boundary / focus12.1:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-raisedcontrol boundary / focus11.21:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-sunkencontrol boundary / focus12.97:1
Pass
Not text3:1 graphic / boundary rule
focus-ring / surface-translucentcontrol boundary / focus12.16:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bgcontrol boundary / focus5.31:1
Pass
Not text3:1 graphic / boundary rule
accent-border / bg-subtlecontrol boundary / focus5.13:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surfacecontrol boundary / focus4.8:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-raisedcontrol boundary / focus4.45:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-sunkencontrol boundary / focus5.13:1
Pass
Not text3:1 graphic / boundary rule
accent-border / surface-translucentcontrol boundary / focus4.82:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / accentbutton text / gradient stop7.12:1
Pass
-88.5Target met
text-on-accent / accent-hoverbutton text / gradient stop6.29:1
Pass
-85.4Target met
text-on-accent / accent-activebutton text / gradient stop7.12:1
Pass
-88.5Target met
text-on-accent / accent-gradient-endbutton text / gradient stop7.12:1
Pass
-88.5Target met
success-text / success-bgstatus text16.51:1
Pass
-104.3Target met
success-border / success-bgstatus border4.99:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / success-solidstatus solid text6.57:1
Pass
-86.2Target met
success-text / surfacestatus text17.11:1
Pass
-104.8Target met
success-text / surface-raisedstatus text15.85:1
Pass
-103.9Target met
warning-text / warning-bgstatus text11:1
Pass
-75.8Target met
warning-border / warning-bgstatus border4.62:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / warning-solidstatus solid text7.29:1
Pass
-88.8Target met
warning-text / surfacestatus text11.22:1
Pass
-76.1Target met
warning-text / surface-raisedstatus text10.39:1
Pass
-75.2Target met
danger-text / danger-bgstatus text12.6:1
Pass
-83.6Target met
danger-border / danger-bgstatus border4.43:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / danger-solidstatus solid text7.71:1
Pass
-88.2Target met
danger-text / surfacestatus text12.75:1
Pass
-84Target met
danger-text / surface-raisedstatus text11.81:1
Pass
-83Target met
info-text / info-bgstatus text14.29:1
Pass
-93.5Target met
info-border / info-bgstatus border4.86:1
Pass
Not text3:1 graphic / boundary rule
text-on-accent / info-solidstatus solid text6.82:1
Pass
-87.2Target met
info-text / surfacestatus text14.8:1
Pass
-94Target met
info-text / surface-raisedstatus text13.71:1
Pass
-93.1Target met
code-text / code-bgcode / small16.89:1
Pass
-99.4Target met
code-text / diff-add-bgcode / small15.22:1
Pass
-98.2Target met
code-text / diff-del-bgcode / small15.62:1
Pass
-98.3Target met
syn-keyword / code-bgcode / small12.97:1
Pass
-81.3Target met
syn-keyword / diff-add-bgcode / small11.66:1
Pass
-80.1Target met
syn-keyword / diff-del-bgcode / small11.98:1
Pass
-80.3Target met
syn-string / code-bgcode / small13.48:1
Pass
-83.8Target met
syn-string / diff-add-bgcode / small12.12:1
Pass
-82.6Target met
syn-string / diff-del-bgcode / small12.45:1
Pass
-82.8Target met
syn-number / code-bgcode / small12.97:1
Pass
-81.5Target met
syn-number / diff-add-bgcode / small11.68:1
Pass
-80.3Target met
syn-number / diff-del-bgcode / small12:1
Pass
-80.4Target met
syn-comment / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-comment / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-comment / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
syn-function / code-bgcode / small15.81:1
Pass
-94.7Target met
syn-function / diff-add-bgcode / small14.25:1
Pass
-93.5Target met
syn-function / diff-del-bgcode / small14.62:1
Pass
-93.6Target met
syn-type / code-bgcode / small12.75:1
Pass
-80.5Target met
syn-type / diff-add-bgcode / small11.49:1
Pass
-79.3Target met
syn-type / diff-del-bgcode / small11.79:1
Pass
-79.4Target met
syn-punctuation / code-bgcode / small12.64:1
Pass
-79.9Target met
syn-punctuation / diff-add-bgcode / small11.39:1
Pass
-78.7Target met
syn-punctuation / diff-del-bgcode / small11.69:1
Pass
-78.9Target met
text-on-accent / brandbrand graphic3.71:1
Pass
Not text3:1 graphic / boundary rule
visited / bgvisited link13.38:1
Pass
-81.6Target met
lane-1 / surfacelabelled graph stroke6.96:1
Pass
Not text3:1 graphic / boundary rule
lane-2 / surfacelabelled graph stroke8.38:1
Pass
Not text3:1 graphic / boundary rule
lane-3 / surfacelabelled graph stroke12.08:1
Pass
Not text3:1 graphic / boundary rule
lane-4 / surfacelabelled graph stroke3.64:1
Pass
Not text3:1 graphic / boundary rule
lane-5 / surfacelabelled graph stroke10.53:1
Pass
Not text3:1 graphic / boundary rule
lane-6 / surfacelabelled graph stroke4.86:1
Pass
Not text3:1 graphic / boundary rule

Colour-vision review

Lane lightness varies independently of hue. Every lane also has a number, name, node shape and line pattern. The full-severity Machado simulations below are a review aid, not a guarantee of individual perception.

1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Lane separation after simulation · all 15 lane pairs per row
Theme / simulationSmallest ΔOKClosest lanes
Light / protanopiaSeverity 1.00.1166Above review threshold2 / 3
Light / deuteranopiaSeverity 1.00.1019Above review threshold2 / 4
Light / tritanopiaSeverity 1.00.1041Above review threshold1 / 5
Dark / protanopiaSeverity 1.00.0687Above review threshold3 / 5
Dark / deuteranopiaSeverity 1.00.0725Above review threshold3 / 5
Dark / tritanopiaSeverity 1.00.0617Above review threshold1 / 2

ΔOK 0.05 is a project review threshold, not a WCAG or medical standard. Node shapes and labels remain the reliable fallback when colours converge.

Light · protanopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Light · deuteranopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Light · tritanopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Dark · protanopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Dark · deuteranopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross
Dark · tritanopia
1 · Teal / circle2 · Sky / diamond3 · Amber / triangle4 · Rose / square5 · Lime / hexagon6 · Violet / cross

Status-colour simulations

Status-text separation under the same full-severity simulations
Theme / simulationSmallest ΔOKClosest statuses
Light / protanopia0.1026Above review thresholdwarning / info
Light / deuteranopia0.0585Above review thresholdsuccess / warning
Light / tritanopia0.1078Above review thresholdwarning / danger
Dark / protanopia0.0522Above review thresholdsuccess / info
Dark / deuteranopia0.0627Above review thresholdwarning / danger
Dark / tritanopia0.0518Above review thresholdwarning / danger

Status identification

SuccessWarningDangerInformation

Success, warning, danger and information always include their name or a descriptive message and a distinct icon. Their colours are supplementary.

Colour adjustments

The OKLCH seeds were the starting points; their approximate hex descriptions were not treated as exact conversions. The table records the final gamut-mapped changes and their purpose.

Previous website paletteInspect migration values
Version 2 semantic colours → current violet theme
Theme / roleBeforeAfter
dark / bgMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#0B0D14#0d0d0f
dark / surfaceMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#141824#19191b
dark / surface-raisedMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#1B2030#202022
dark / textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#ECEDF3#f2f3f5
dark / text-secondaryMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#B4B8C8#d3d4d6
dark / text-mutedMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#8A8FA3#d0d1d3
dark / accentMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#7C5CFF#533db8
dark / text-linkMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#C4B5FD#d3d3ff
dark / focus-ringMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#C4B5FD#d3d3ff
dark / borderMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#232838#545557
dark / border-strongMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#767E98#828385
dark / success-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#6EE7B7#f5fff6
dark / warning-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#FCD34D#ffc299
dark / danger-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#FCA5A5#ffd1cd
light / bgMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#FAFAFC#f9fafb
light / surfaceMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#FFFFFF#f1f2f3
light / surface-raisedMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#F3F4F8#eaebec
light / textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#14161F#111212
light / text-secondaryMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#4A4F63#444546
light / text-mutedMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#6B7085#4c4d4f
light / accentMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#5B4BE6#533db8
light / text-linkMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#5B4BE6#4525a8
light / focus-ringMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#5B4BE6#4525a8
light / borderMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#E6E8F0#a4a4a6
light / border-strongMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#7A8094#777778
light / success-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#116849#005725
light / warning-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#805700#582a00
light / danger-textMigrated to perceptual theme roles; text, controls and focus are tested against WCAG and APCA.#B42332#3a0003
Seed or first-pass value → shipped value
Token / reasonBeforeAfter
light / violet-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#5b44c70.49 0.1932 285#4525a80.4 0.1932 285
light / violet-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#7f6afc0.62 0.21 285#533db80.46 0.1848 285
light / indigo-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#464bcb0.49 0.1932 275#322dac0.4 0.1932 275
light / indigo-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#4d51de0.52 0.21 275#4044bc0.46 0.1848 275
light / teal-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#0070620.49 0.0889007 180#0054490.4 0.072572 180
light / teal-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#00b8a10.7 0.1270009 180#00675a0.46 0.0834578 180
light / sky-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#00465f0.37 0.0737313 230#002d3f0.28 0.0557967 230
light / sky-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#006a8d0.49 0.0976442 230#004f6a0.4 0.0797096 230
light / sky-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#43c0f30.76 0.13 230#0061810.46 0.091666 230
light / amber-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#8256000.49 0.1033709 75#6240000.4 0.0843844 75
light / amber-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f5a91f0.79 0.16 75#774f000.46 0.097042 75
light / rose-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#b4003b0.49 0.1958985 15#89002a0.4 0.1599171 15
light / rose-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f73d620.65 0.22 15#a600350.46 0.1839047 15
light / lime-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#466e000.49 0.1318784 130#3452000.4 0.1076558 130
light / lime-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#8bcb2f0.77 0.19 130#4065000.46 0.1238042 130
light / green-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#004e200.37 0.101897 150#0057250.4 0.1101589 150
light / green-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#0074330.49 0.1349446 150#0057250.4 0.1101589 150
light / green-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#43b9660.7 0.16 150#006b2e0.46 0.1266827 150
light / red-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#7c000f0.37 0.1499982 25#3a00030.22 0.0891881 25
light / red-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#b6001c0.49 0.1986463 25#8a00120.4 0.1621602 25
light / red-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f53c410.64 0.22 25#a800190.46 0.1864843 25
light / orange-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#6330000.37 0.0916129 55#582a000.34 0.0841848 55
light / orange-10Light-theme text/link fill lowered to L=0.40 to reach |APCA Lc| 75 on raised surfaces.#934a000.49 0.1213252 55#6f36000.4 0.0990409 55
light / orange-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#fe8c2c0.75 0.17 55#8743000.46 0.1138971 55
light / teal-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#00b8a10.7 0.1270009 180#0092800.59 0.1070437 180
light / sky-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#43c0f30.76 0.13 230#0036490.31 0.0617749 230
light / amber-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#f5a91f0.79 0.16 75#5b3b000.38 0.0801652 75
light / rose-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#f73d620.65 0.22 15#4200100.24 0.0959503 15
light / lime-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#8bcb2f0.77 0.19 130#4d78000.52 0.1399526 130
light / violet-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#7f6afc0.62 0.21 285#5230c10.45 0.21 285
dark / violet-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#7f6afc0.62 0.21 285#533db80.46 0.1848 285
dark / indigo-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#4d51de0.52 0.21 275#4044bc0.46 0.1848 275
dark / teal-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#00b8a10.7 0.1270009 180#00675a0.46 0.0834578 180
dark / sky-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#a7e1fe0.88 0.0715 230#d4f0ff0.94 0.035919 230
dark / sky-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#43c0f30.76 0.13 230#0061810.46 0.091666 230
dark / amber-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f5a91f0.79 0.16 75#774f000.46 0.097042 75
dark / rose-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f73d620.65 0.22 15#a600350.46 0.1839047 15
dark / lime-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#8bcb2f0.77 0.19 130#4065000.46 0.1238042 130
dark / green-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#aee8b90.88 0.088 150#f5fff60.99 0.0156605 150
dark / green-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#43b9660.7 0.16 150#006b2e0.46 0.1266827 150
dark / red-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#ffc8c30.88 0.0634677 25#ffd1cd0.9 0.0519301 25
dark / red-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#f53c410.64 0.22 25#a800190.46 0.1864843 25
dark / orange-11Status text lightness varies by status; every resulting text pair is checked against WCAG AA and APCA. Icons and words carry the meaning when hues converge.#ffcba90.88 0.0744648 55#ffc2990.86 0.0883014 55
dark / orange-9Solid fills darkened for near-white 14px text and APCA target; hue preserved, chroma gamut-mapped.#fe8c2c0.75 0.17 55#8743000.46 0.1138971 55
dark / teal-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#00b8a10.7 0.1270009 180#00b8a10.7 0.1270009 180
dark / sky-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#43c0f30.76 0.13 230#43c0f30.76 0.13 230
dark / amber-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#f5a91f0.79 0.16 75#ffce8a0.88 0.1013575 75
dark / rose-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#f73d620.65 0.22 15#de1c4e0.58 0.22 15
dark / lime-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#8bcb2f0.77 0.19 130#9adb450.82 0.19 130
dark / violet-laneTheme-specific lane lightness; light values selected from 720 rank permutations to improve full-severity CVD separation, backed by labels, shapes and dash patterns.#7f6afc0.62 0.21 285#8472ff0.64 0.2016966 285

Shared token exports

CSS and DTCG JSON are generated from the same source. Individual sets are directly importable. The combined file qualifies every alias with its theme and accent group.

Implementation notes

  • System follows the device colour scheme. An explicit choice takes priority; Windows forced colours always map to system colours.
  • The theme and accent are applied in the head before CSS paint. Initial rendering has no colour transition. Visitor-initiated changes use 150ms colour transitions unless reduced motion is requested.
  • Only accent roles change with the accent selection. Surfaces, status colours, syntax and graph lanes stay fixed; links and focus derive from accent aliases.
  • Scale inspection swatches are the deliberate exception to the no-primitives-in-components rule: they show the primitive being documented. Product components use semantic roles only.
  • APCA is computed offline during the audit. No calculator or tracking library is shipped to visitors.
  • Performance and full assistive-technology results from the previous audit remain unmeasured; token contrast is not a complete accessibility certification.

Sources: CSS Color 4, DTCG Color 2025.10, APCA-W3, and Machado et al. (2009).