/* Palette 2026: Giving Violet (andrewhillman-org). Source: /workspace/site-assets/palettes/andrewhillman-org.css. Role tokens consumed by the site CSS. */
:root{color-scheme:light dark;--pal-primary:#5B2A8C;--pal-secondary:#3F4A1C;--pal-accent:#9B2C4E;--pal-background:#F8F4FB;--pal-surface:#FFFFFF;--pal-text:#1A1024;--pal-muted:#5A4E63;--pal-on-primary:#FFFFFF;--pal-on-secondary:#FFFFFF;--pal-on-accent:#FFFFFF;}
@media (prefers-color-scheme: dark){:root{--pal-primary:#D4B4F0;--pal-secondary:#D4E0A8;--pal-accent:#F0B4C6;--pal-background:#140E1A;--pal-surface:#1E1626;--pal-text:#F6F0FA;--pal-muted:#C6B8D0;--pal-on-primary:#0A0A0A;--pal-on-secondary:#0A0A0A;--pal-on-accent:#0A0A0A;}}
html[data-theme="dark"],body[data-theme="dark"]{--pal-primary:#D4B4F0;--pal-secondary:#D4E0A8;--pal-accent:#F0B4C6;--pal-background:#140E1A;--pal-surface:#1E1626;--pal-text:#F6F0FA;--pal-muted:#C6B8D0;--pal-on-primary:#0A0A0A;--pal-on-secondary:#0A0A0A;--pal-on-accent:#0A0A0A;}
html{background-color:var(--pal-background);color:var(--pal-text)}

/* contrast-2026-11-14 (Andy 8:30 AM CT: all text readable on all sites). Tone-only fixes within Giving Violet. */
/* Hover must not fade text below AA (page-level a:hover{opacity:.7/.8} on index pages). */
html body a:hover{opacity:1!important}
/* Dark mode: the white focus halo vanished on light panels (footer grid, press, proof); a near-black halo keeps the palette ring visible on every panel. */
@media (prefers-color-scheme: dark){html:root:root body :focus-visible{box-shadow:0 0 0 2px var(--pal-on-primary)!important}}
/* Light mode: the olive focus ring read 1.0-1.9:1 on the violet/plum panels; a white halo (dark halo in dark mode, above) keeps it visible on every panel. */
html:root:root body :focus-visible{box-shadow:0 0 0 2px var(--pal-on-primary)!important}
/* Social chips: color-mix(secondary 30%, on-primary) read 1.7-1.9:1; use the site's own secondary. */
html body #social-cluster-bar .chip:is([aria-label="YouTube"],[aria-label="Substack"],[aria-label="ORCID"]),html body .chip:is([aria-label="YouTube"],[aria-label="Substack"],[aria-label="ORCID"]){color:var(--pal-secondary)!important}
/* contrast-2026-11-14 round 2 (after ui21): hero CTA and engage buttons sat their ink focus ring on the brand-filled button (1.5 to 2:1). Ring uses the on-colour of the fill. */
html:root body:not(#cx-a):not(#cx-b):not(#cx-c) :is(a.dr-cta,#engage a.btn):focus-visible{outline-color:var(--pal-on-primary)!important}
