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.45:1        15.26:1        17.03:1        17.05:1        14.86:1
text-muted           6.85:1         6.36:1         7.10:1         7.11:1         6.19:1
link                 7.28:1         6.76:1         7.54:1         7.55:1         6.58:1
link-hover           9.51:1         8.83:1         9.85:1         9.86:1         8.59:1
accent               6.44:1         5.98:1         6.67:1         6.68:1         5.82:1
  on-accent on accent                      6.67:1
  text on selection                        7.23:1
  text on glow                             10.10:1
  focus on bg                              6.87:1
  focus on surface-raised                  6.38:1
  focus on surface-sunken                  7.12:1
  rule-strong on bg                        3.32:1
  rule-strong on surface-raised            3.08:1
  rule on bg (decorative, no threshold)    1.38: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                14.51:1        12.67:1        15.78:1        15.89:1        12.12:1
text-muted           6.07:1         5.30:1         6.60:1         6.65:1         5.07:1
link                 6.54:1         5.71:1         7.12:1         7.16:1         5.47:1
link-hover           8.51:1         7.42:1         9.25:1         9.31:1         7.10:1
accent               5.82:1         5.08:1         6.33:1         6.38:1         4.86:1
  on-accent on accent                      6.33:1
  text on selection                        7.18:1
  text on glow                             10.00:1
  focus on bg                              6.23:1
  focus on surface-raised                  5.44:1
  focus on surface-sunken                  6.77:1
  rule-strong on bg                        3.51:1
  rule-strong on surface-raised            3.07:1
  rule on bg (decorative, no threshold)    1.62: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                14.44:1        12.60:1        15.81:1        15.92:1        12.07:1
text-muted           6.08:1         5.30:1         6.65:1         6.70:1         5.08:1
link                 6.76:1         5.90:1         7.40:1         7.45:1         5.65:1
link-hover           8.71:1         7.60:1         9.54:1         9.60:1         7.28:1
accent               6.03:1         5.26:1         6.60:1         6.64:1         5.04:1
  on-accent on accent                      6.60:1
  text on selection                        6.99:1
  text on glow                             9.75:1
  focus on bg                              6.50:1
  focus on surface-raised                  5.67:1
  focus on surface-sunken                  7.11:1
  rule-strong on bg                        3.51:1
  rule-strong on surface-raised            3.06:1
  rule on bg (decorative, no threshold)    1.60: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                14.48:1        12.64:1        15.81:1        15.91:1        11.91:1
text-muted           6.08:1         5.31:1         6.64:1         6.68:1         5.00:1
link                 7.04:1         6.15:1         7.69:1         7.74:1         5.79:1
link-hover           9.03:1         7.89:1         9.86:1         9.93:1         7.43:1
accent               6.34:1         5.54:1         6.92:1         6.97:1         5.22:1
  on-accent on accent                      6.92:1
  text on selection                        6.77:1
  text on glow                             9.39:1
  focus on bg                              6.89:1
  focus on surface-raised                  6.01:1
  focus on surface-sunken                  7.52:1
  rule-strong on bg                        3.56:1
  rule-strong on surface-raised            3.11:1
  rule on bg (decorative, no threshold)    1.61: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                14.39:1        12.67:1        15.71:1        15.91:1        12.02:1
text-muted           6.05:1         5.33:1         6.61:1         6.69:1         5.05:1
link                 6.79:1         5.98:1         7.41:1         7.50:1         5.67:1
link-hover           8.73:1         7.69:1         9.54:1         9.65:1         7.29:1
accent               6.08:1         5.35:1         6.64:1         6.72:1         5.08:1
  on-accent on accent                      6.64:1
  text on selection                        6.96:1
  text on glow                             9.66:1
  focus on bg                              6.55:1
  focus on surface-raised                  5.77:1
  focus on surface-sunken                  7.15:1
  rule-strong on bg                        3.51:1
  rule-strong on surface-raised            3.09:1
  rule on bg (decorative, no threshold)    1.60: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                14.52:1        12.69:1        15.79:1        15.91:1        12.21:1
text-muted           6.07:1         5.31:1         6.61:1         6.65:1         5.11:1
link                 6.51:1         5.69:1         7.08:1         7.13:1         5.48:1
link-hover           8.48:1         7.42:1         9.23:1         9.29:1         7.13:1
accent               5.75:1         5.03:1         6.26:1         6.30:1         4.84:1
  on-accent on accent                      6.26:1
  text on selection                        7.29:1
  text on glow                             10.14:1
  focus on bg                              6.13:1
  focus on surface-raised                  5.36:1
  focus on surface-sunken                  6.67:1
  rule-strong on bg                        3.53:1
  rule-strong on surface-raised            3.08:1
  rule on bg (decorative, no threshold)    1.62: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
