solid dark border = canon anchor (unchanged)dotted gray border = interpolated (new)dashed red border = shipped slot-95 value (neon/electric extrapolation)dashed gray border = fade-to-white alternative (not shipped, comparison only)solid blue border = ha-lcars's generic &base formula (reference only — see note below)
Var name shown is the --lcards-<family>-<suffix> suffix actually referenced by the theme YAML
(e.g. -darkest for the canon anchors, -10/-50/-60/-95 for the new computed stops).
About the blue-bordered row: this is not vanilla Home Assistant and not any currently-running theme.
It's ha-lcars's own generic fallback mechanism (the &base block in ha-lcars/src/preamble.yaml,
shared by every non-LCARdS theme in that repo) — color-mix(in oklch, seed N%, black/white) at fixed
percentages, seeded from our own family's -40/base canon color. It answers: "if we'd only defined the
base color and let ha-lcars generate the rest automatically like every other theme does, what would we have gotten?"
— useful as a neutral baseline to see how far our hand-picked canon anchors diverge from an automatic ramp.
Orange
LCARdS (canon anchors + computed stops)
05
-darkest
#d91604
anchor
10
-10
#e01808
interpolated
20
-dark
#ef1d10
anchor
30
-medium-dark
#e7442a
anchor
40
(bare key)
#ff6753
anchor
50
-50
#ff715d
interpolated
60
-60
#ff7b66
interpolated
70
-medium-light
#ff8470
anchor
80
-light
#ff977b
anchor
90
-lightest
#ffb399
anchor
95
-95
#ffceb3
extrapolated
ha-lcars generic &base formula, seeded from this family's -40 (reference only, not shipped)
05
#030000
ha-default
10
#1b0503
ha-default
20
#521c15
ha-default
30
#95392d
ha-default
40
#ff6753
ha-default
50
#ff7c69
ha-default
60
#ff9988
ha-default
70
#ffb7aa
ha-default
80
#ffd4cc
ha-default
90
#ffeae5
ha-default
95
#fff4f1
ha-default
Slot 95 — shipped (neon/electric) vs. fade-to-white alternative (not shipped)
95
-95
#ffceb3
extrapolated
95
-95
#ffd9cc
not-shipped
Gray
LCARdS (canon anchors + computed stops)
05
-darkest
#1e2229
anchor
10
-10
#232933
interpolated
20
-dark
#2f3749
anchor
30
-medium-dark
#52596e
anchor
40
(bare key)
#6d748c
anchor
50
-50
#7d849b
interpolated
60
-60
#8d94aa
interpolated
70
-medium-light
#9ea5ba
anchor
80
-light
#d2d5df
anchor
90
-lightest
#f3f4f7
anchor
95
-95
#f8f9fc
extrapolated
ha-lcars generic &base formula, seeded from this family's -40 (reference only, not shipped)
05
#010101
ha-default
10
#050609
ha-default
20
#1e2129
ha-default
30
#3d414f
ha-default
40
#6d748c
ha-default
50
#7d8499
ha-default
60
#969cad
ha-default
70
#b3b7c4
ha-default
80
#d1d3db
ha-default
90
#e8e9ed
ha-default
95
#f3f3f5
ha-default
Slot 95 — shipped (neon/electric) vs. fade-to-white alternative (not shipped)
95
-95
#f8f9fc
extrapolated
95
-95
#f9f9fb
not-shipped
Blue
LCARdS (canon anchors + computed stops)
05
-darkest
#002241
anchor
10
-10
#082b48
interpolated
20
-dark
#1c3c55
anchor
30
-medium-dark
#2a7193
anchor
40
(bare key)
#37a6d1
anchor
50
-50
#48b2db
interpolated
60
-60
#58bee6
interpolated
70
-medium-light
#67caf0
anchor
80
-light
#93e1ff
anchor
90
-lightest
#00eeee
anchor
95
-95
#44ffff
extrapolated
ha-lcars generic &base formula, seeded from this family's -40 (reference only, not shipped)
05
#000102
ha-default
10
#010d14
ha-default
20
#0b3242
ha-default
30
#1c5f79
ha-default
40
#37a6d1
ha-default
50
#57b1d7
ha-default
60
#7ec1e0
ha-default
70
#a4d3e9
ha-default
80
#c9e5f2
ha-default
90
#e4f2f9
ha-default
95
#f1f8fc
ha-default
Slot 95 — shipped (neon/electric) vs. fade-to-white alternative (not shipped)
95
-95
#44ffff
extrapolated
95
-95
#adf8f7
not-shipped
Green
LCARdS (canon anchors + computed stops)
05
-darkest
#0c2a15
anchor
10
-10
#0b2e16
interpolated
20
-dark
#083717
anchor
30
-medium-dark
#095320
anchor
40
(bare key)
#266239
anchor
50
-50
#306d43
interpolated
60
-60
#3b784e
interpolated
70
-medium-light
#458359
anchor
80
-light
#80bb93
anchor
90
-lightest
#b8e0c1
anchor
95
-95
#cdf6d6
extrapolated
ha-lcars generic &base formula, seeded from this family's -40 (reference only, not shipped)
05
#000000
ha-default
10
#010401
ha-default
20
#051a0b
ha-default
30
#12361d
ha-default
40
#266239
ha-default
50
#41744f
ha-default
60
#678f70
ha-default
70
#91ae97
ha-default
80
#bccec0
ha-default
90
#dde6df
ha-default
95
#edf2ee
ha-default
Slot 95 — shipped (neon/electric) vs. fade-to-white alternative (not shipped)
95
-95
#cdf6d6
extrapolated
95
-95
#dcf0e0
not-shipped
Yellow
LCARdS (canon anchors + computed stops)
05
-darkest
#70602c
anchor
10
-10
#847131
interpolated
20
-dark
#ac943b
anchor
30
-medium-dark
#d2bf50
anchor
40
(bare key)
#f9ef97
anchor
50
-50
#fbf3a8
interpolated
60
-60
#fdf6b9
interpolated
70
-medium-light
#fffac9
anchor
80
-light
#e7e6de
anchor
90
-lightest
#f5f5dc
anchor
95
-95
#fbfbe2
extrapolated
ha-lcars generic &base formula, seeded from this family's -40 (reference only, not shipped)
05
#030301
ha-default
10
#1a180b
ha-default
20
#504d2d
ha-default
30
#918b56
ha-default
40
#f9ef97
ha-default
50
#faf1a5
ha-default
60
#fbf4b8
ha-default
70
#fcf8cd
ha-default
80
#fdfbe2
ha-default
90
#fefdf0
ha-default
95
#fefef7
ha-default
Slot 95 — shipped (neon/electric) vs. fade-to-white alternative (not shipped)
95
-95
#fbfbe2
extrapolated
95
-95
#fafaee
not-shipped
HA Component Mockups
Hand-built approximations of <wa-button variant="brand/danger/warning/success"> styling — solid
("loud" fill + on-loud text) and outlined ("normal" tier) — using the actual resolved colors from both profiles'
generated ha-color-fill-*/ha-color-on-* tokens. A yellow "corrected" badge means Phase-2
contrast validation overrode HA's mechanical tone-index default (typically white text) with black or white,
whichever actually passes against that background.