
:root{--jf-bg:#fff;--jf-ink:#111;--jf-hair:#111;color-scheme:light}
html[data-theme="dark"]{--jf-bg:#111;--jf-ink:#f2f2f0;--jf-hair:#f2f2f0;color-scheme:dark;background:#fff;filter:invert(1) hue-rotate(180deg)}
html[data-theme="dark"] img:not([src*="asterisk"]):not([src*="qmark"]),html[data-theme="dark"] video,html[data-theme="dark"] canvas,html[data-theme="dark"] iframe,html[data-theme="dark"] picture,
html[data-theme="dark"] .mk,html[data-theme="dark"] .cvsec .section-head::after,html[data-theme="dark"] [style*="background-image"]{filter:invert(1) hue-rotate(180deg)}
html[data-theme="dark"] .cvsec .section-head::before{filter:none}
.jf-theme{position:fixed;right:max(10px,env(safe-area-inset-right));bottom:max(10px,env(safe-area-inset-bottom));z-index:2147482000;
  display:inline-flex;align-items:center;gap:6px;font:400 10px/1 "Space Mono",ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;
  color:#111;background:#fff;border:1px solid #111;padding:7px 9px 6px;cursor:pointer;border-radius:0}
.jf-theme::before{content:"";width:11px;height:11px;background:url(/assets/img/asterisk-cutout-512.png) center/contain no-repeat}
.jf-theme:hover,.jf-theme:focus-visible{background:#111;color:#fff;outline:none}
.jf-theme:hover::before,.jf-theme:focus-visible::before{filter:invert(1)}
@media print{.jf-theme{display:none}}

/* 2026-10-23 JF: cards identical to light mode in dark */
html[data-theme="dark"] .card{filter:invert(1) hue-rotate(180deg)}html[data-theme="dark"] .card img,html[data-theme="dark"] .card video,html[data-theme="dark"] .card canvas,html[data-theme="dark"] .card iframe,html[data-theme="dark"] .card picture,html[data-theme="dark"] .card .mk,html[data-theme="dark"] .card [style*="background-image"]{filter:none!important}
