/* UNDRSCR_ base. Minimal element defaults so any surface linking styles.css starts on-brand. */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--surface-page);color:var(--text-primary);font-family:var(--font-body);font-size:var(--ui-body);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:var(--leading-display);letter-spacing:var(--tracking-display);margin:0}
p{margin:0}
a{color:var(--text-primary);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;transition:opacity var(--duration-base) var(--ease-standard)}
a:hover{color:var(--text-primary);opacity:var(--hover-opacity)}
a:active{opacity:var(--press-opacity)}
hr{border:0;border-top:var(--border-width-hairline) solid var(--rule);margin:var(--space-6) 0}
code,kbd,samp{font-family:var(--font-mono)}
::selection{background:var(--ink);color:var(--white)}
[data-theme="ink"]{background:var(--surface-ink);color:var(--text-on-ink)}
[data-theme="ink"] a{color:var(--text-on-ink)}
[data-theme="ink"] hr{border-top-color:var(--border-on-ink)}
