WCAG 2.x contrast report for palettes.css (generated by gen_palettes.py)
Thresholds: text pairs 4.5:1 or better; UI pairs (focus ring, strong rule) 3:1 or better.
Every pair below was computed from the emitted hex values with the WCAG relative-luminance formula.

== secureconfig / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.99:1        16.15:1        13.65:1        14.10:1        14.35:1
text-muted           5.13:1         5.53:1         4.67:1         4.82:1         4.91:1
link                 5.68:1         6.12:1         5.17:1         5.34:1         5.43:1
link-hover           7.72:1         8.32:1         7.03:1         7.26:1         7.39:1
accent               5.05:1         5.45:1         4.60:1         4.75:1         4.84:1
  on-accent on accent                      5.45:1
  text on selection                        11.35:1
  text on glow                             12.20:1
  focus on bg                              3.59:1
  focus on surface-raised                  3.86:1
  focus on surface-sunken                  3.27:1
  rule-strong on bg                        3.10:1
  rule-strong on surface-raised            3.34:1
  rule on bg (decorative, no threshold)    1.40:1

== secureconfig / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.17:1        14.83:1        16.90:1        16.92:1        14.43:1
text-muted           6.80:1         6.24:1         7.11:1         7.12:1         6.07:1
link                 7.15:1         6.56:1         7.47:1         7.48:1         6.38:1
link-hover           9.33:1         8.56:1         9.76:1         9.77:1         8.33:1
accent               6.32:1         5.80:1         6.61:1         6.62:1         5.64:1
  on-accent on accent                      6.61:1
  text on selection                        7.24:1
  text on glow                             10.12:1
  focus on bg                              6.75:1
  focus on surface-raised                  6.19:1
  focus on surface-sunken                  7.05:1
  rule-strong on bg                        3.36:1
  rule-strong on surface-raised            3.08:1
  rule on bg (decorative, no threshold)    1.43:1

== opfiles / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.88:1        16.06:1        13.60:1        14.06:1        14.22:1
text-muted           5.09:1         5.50:1         4.66:1         4.81:1         4.87:1
link                 5.75:1         6.21:1         5.26:1         5.44:1         5.50:1
link-hover           7.75:1         8.36:1         7.08:1         7.32:1         7.40:1
accent               5.09:1         5.49:1         4.65:1         4.81:1         4.86:1
  on-accent on accent                      5.49:1
  text on selection                        11.35:1
  text on glow                             12.10:1
  focus on bg                              3.44:1
  focus on surface-raised                  3.71:1
  focus on surface-sunken                  3.15:1
  rule-strong on bg                        3.09:1
  rule-strong on surface-raised            3.34:1
  rule on bg (decorative, no threshold)    1.39:1

== opfiles / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.17:1        14.79:1        16.86:1        16.95:1        14.36:1
text-muted           6.81:1         6.23:1         7.10:1         7.13:1         6.04:1
link                 7.30:1         6.68:1         7.61:1         7.66:1         6.48:1
link-hover           9.49:1         8.68:1         9.90:1         9.95:1         8.43:1
accent               6.50:1         5.95:1         6.78:1         6.81:1         5.77:1
  on-accent on accent                      6.78:1
  text on selection                        7.17:1
  text on glow                             9.99:1
  focus on bg                              6.95:1
  focus on surface-raised                  6.36:1
  focus on surface-sunken                  7.25:1
  rule-strong on bg                        3.38:1
  rule-strong on surface-raised            3.10:1
  rule on bg (decorative, no threshold)    1.43:1

== auditthis / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.77:1        15.93:1        13.60:1        13.99:1        14.20:1
text-muted           5.06:1         5.46:1         4.66:1         4.80:1         4.87:1
link                 5.79:1         6.25:1         5.33:1         5.49:1         5.57:1
link-hover           7.84:1         8.46:1         7.22:1         7.43:1         7.54:1
accent               5.06:1         5.46:1         4.66:1         4.79:1         4.86:1
  on-accent on accent                      5.46:1
  text on selection                        11.48:1
  text on glow                             12.21:1
  focus on bg                              3.41:1
  focus on surface-raised                  3.68:1
  focus on surface-sunken                  3.14:1
  rule-strong on bg                        3.09:1
  rule-strong on surface-raised            3.33:1
  rule on bg (decorative, no threshold)    1.38:1

== auditthis / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.09:1        14.76:1        16.85:1        16.87:1        14.25:1
text-muted           6.77:1         6.21:1         7.09:1         7.10:1         6.00:1
link                 7.56:1         6.93:1         7.92:1         7.93:1         6.70:1
link-hover           9.75:1         8.94:1        10.21:1        10.22:1         8.63:1
accent               6.74:1         6.18:1         7.06:1         7.07:1         5.97:1
  on-accent on accent                      7.06:1
  text on selection                        6.97:1
  text on glow                             9.71:1
  focus on bg                              7.27:1
  focus on surface-raised                  6.66:1
  focus on surface-sunken                  7.61:1
  rule-strong on bg                        3.34:1
  rule-strong on surface-raised            3.07:1
  rule on bg (decorative, no threshold)    1.44:1

== cleanlanguage / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.89:1        15.97:1        13.59:1        13.97:1        14.40:1
text-muted           5.06:1         5.43:1         4.62:1         4.75:1         4.89:1
link                 5.82:1         6.24:1         5.31:1         5.46:1         5.63:1
link-hover           7.86:1         8.43:1         7.17:1         7.38:1         7.60:1
accent               5.04:1         5.41:1         4.60:1         4.73:1         4.88:1
  on-accent on accent                      5.41:1
  text on selection                        11.68:1
  text on glow                             12.58:1
  focus on bg                              3.45:1
  focus on surface-raised                  3.70:1
  focus on surface-sunken                  3.15:1
  rule-strong on bg                        3.08:1
  rule-strong on surface-raised            3.30:1
  rule on bg (decorative, no threshold)    1.39:1

== cleanlanguage / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.05:1        14.71:1        16.81:1        16.90:1        14.13:1
text-muted           6.75:1         6.19:1         7.07:1         7.11:1         5.95:1
link                 7.83:1         7.18:1         8.20:1         8.25:1         6.90:1
link-hover          10.05:1         9.21:1        10.52:1        10.58:1         8.85:1
accent               7.05:1         6.46:1         7.39:1         7.43:1         6.21:1
  on-accent on accent                      7.39:1
  text on selection                        6.74:1
  text on glow                             9.36:1
  focus on bg                              7.66:1
  focus on surface-raised                  7.02:1
  focus on surface-sunken                  8.02:1
  rule-strong on bg                        3.37:1
  rule-strong on surface-raised            3.09:1
  rule on bg (decorative, no threshold)    1.45:1

== aiqt / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.91:1        16.10:1        13.64:1        14.10:1        14.31:1
text-muted           5.06:1         5.47:1         4.63:1         4.79:1         4.86:1
link                 5.77:1         6.24:1         5.28:1         5.46:1         5.54:1
link-hover           7.80:1         8.43:1         7.14:1         7.38:1         7.49:1
accent               5.05:1         5.46:1         4.62:1         4.78:1         4.85:1
  on-accent on accent                      5.46:1
  text on selection                        11.56:1
  text on glow                             12.32:1
  focus on bg                              3.43:1
  focus on surface-raised                  3.71:1
  focus on surface-sunken                  3.14:1
  rule-strong on bg                        3.09:1
  rule-strong on surface-raised            3.34:1
  rule on bg (decorative, no threshold)    1.38:1

== aiqt / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.06:1        14.74:1        16.82:1        16.90:1        14.31:1
text-muted           6.76:1         6.20:1         7.08:1         7.11:1         6.02:1
link                 7.58:1         6.96:1         7.94:1         7.97:1         6.75:1
link-hover           9.75:1         8.95:1        10.21:1        10.26:1         8.69:1
accent               6.79:1         6.23:1         7.11:1         7.14:1         6.05:1
  on-accent on accent                      7.11:1
  text on selection                        6.96:1
  text on glow                             9.66:1
  focus on bg                              7.31:1
  focus on surface-raised                  6.71:1
  focus on surface-sunken                  7.66:1
  rule-strong on bg                        3.41:1
  rule-strong on surface-raised            3.13:1
  rule on bg (decorative, no threshold)    1.44:1

== grclibrary / light
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                14.89:1        16.07:1        13.59:1        14.06:1        14.16:1
text-muted           5.10:1         5.50:1         4.66:1         4.82:1         4.85:1
link                 5.76:1         6.22:1         5.26:1         5.45:1         5.48:1
link-hover           7.77:1         8.39:1         7.09:1         7.34:1         7.39:1
accent               5.11:1         5.51:1         4.66:1         4.82:1         4.85:1
  on-accent on accent                      5.51:1
  text on selection                        11.25:1
  text on glow                             11.94:1
  focus on bg                              3.58:1
  focus on surface-raised                  3.87:1
  focus on surface-sunken                  3.27:1
  rule-strong on bg                        3.05:1
  rule-strong on surface-raised            3.29:1
  rule on bg (decorative, no threshold)    1.39:1

== grclibrary / dark
fg \ bg                  bg surface-raised surface-sunken        code-bg     callout-bg
text                16.19:1        14.83:1        16.86:1        16.96:1        14.46:1
text-muted           6.81:1         6.24:1         7.10:1         7.14:1         6.09:1
link                 7.27:1         6.67:1         7.58:1         7.62:1         6.50:1
link-hover           9.48:1         8.68:1         9.87:1         9.93:1         8.47:1
accent               6.43:1         5.89:1         6.69:1         6.73:1         5.74:1
  on-accent on accent                      6.69:1
  text on selection                        7.28:1
  text on glow                             10.12:1
  focus on bg                              6.85:1
  focus on surface-raised                  6.27:1
  focus on surface-sunken                  7.13:1
  rule-strong on bg                        3.37:1
  rule-strong on surface-raised            3.09:1
  rule on bg (decorative, no threshold)    1.42:1

== rainbow slices (ink on each slice hue; large text and UI pairs, 3:1)
  light secureconfig   own 5.12:1  join-to-next 3.70:1  (below 4.5, use for large text or labels only)
  light opfiles        own 6.15:1  join-to-next 4.51:1
  light auditthis      own 10.92:1  join-to-next 8.15:1
  light cleanlanguage  own 5.87:1  join-to-next 4.50:1
  light aiqt           own 5.09:1  join-to-next 3.70:1  (below 4.5, use for large text or labels only)
  light grclibrary     own 5.49:1  join-to-next 5.26:1
  dark  secureconfig   own 5.31:1  join-to-next 5.41:1
  dark  opfiles        own 6.89:1  join-to-next 6.06:1
  dark  auditthis      own 11.28:1  join-to-next 8.87:1
  dark  cleanlanguage  own 6.84:1  join-to-next 6.26:1
  dark  aiqt           own 5.56:1  join-to-next 5.47:1
  dark  grclibrary     own 5.42:1  join-to-next 5.41:1

Worst text pair across all sites and modes: 4.60:1
