/* hz-font.css (2026-11-08) - founder preview of the next body/UI face: Public Sans (OFL-1.1, variable, self-hosted).
   Loaded by includes/hz-chrome.php ONLY when tevosFontNextOn() is true. Everything is scoped to html[data-rd][data-font-next],
   so nothing here applies unless the opt-in attribute is set. Flag, switch and rollback: /root/FONT-DECISION.md */
@font-face{font-family:"Public Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts-next/public-sans-latin-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts-next/public-sans-rupee-var.woff2) format("woff2");unicode-range:U+20B9}
@font-face{font-family:"Public Sans";font-style:normal;font-weight:100 900;font-display:swap;src:url(/assets/fonts-next/public-sans-latin-ext-var.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20B8,U+20BA-20BF,U+2C60-2C7F,U+A720-A7FF}
/* metric-matched fallback, measured: Arial -> Public Sans, frequency-weighted advance width (same method reproduces the shipped Inter fallback 107.4%) */
@font-face{font-family:"Public Sans Fallback";src:local("Arial"),local("Liberation Sans"),local("Arimo");size-adjust:103.1%;ascent-override:92.1%;descent-override:21.8%;line-gap-override:0%}

/* THE token. One line decides the body/UI face for every surface that reads --hz-sans (body, --font, --ff-body, --tvx2-sans, cards, tables, nav). */
html[data-rd][data-font-next]{--font-body:"Public Sans","Public Sans Fallback",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--hz-sans:var(--font-body)}

/* tabular-number strategy: UI face keeps proportional digits in prose, switches to tabular + lining wherever figures align */
html[data-rd][data-font-next] :is(table,th,td,time,.num,[data-num],.tile__v,.sc-delta,.sc-percentile){font-variant-numeric:tabular-nums lining-nums}
/* light-on-dark compensation (typeset.md): a touch of tracking at body size, none on display/serif */
html[data-rd][data-font-next] body{letter-spacing:.003em}
