/* reset.css — element defaults and the global transition rule */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
/* Optical sizing and the two smoothing hints are what make SF/Inter look like
   the system does rather than like a webfont: without them the same stack
   renders visibly heavier here than it does in a native window. */
body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);font-size:14px;line-height:1.5;letter-spacing:-.006em;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
button,input,textarea{font-family:inherit;font-size:inherit;color:inherit;letter-spacing:inherit}
::placeholder{color:var(--muted-2)}
/* An author `display` rule outranks the browser's own [hidden] rule, so it has
   to be restated for `element.hidden = true` to actually hide anything. */
[hidden]{display:none!important}
a{color:var(--accent);text-decoration:none}
a:hover{color:var(--accent-dark);text-decoration:underline}
/* Anything countable is set in tabular figures, so a column of ids, counts and
   page numbers does not jitter by a fraction of a character per row. */
.num,.code,.pg-num,.updated,.count,.pg-range{font-variant-numeric:tabular-nums}
button,a,input,textarea,.row,.nav-item{transition:background-color var(--t),color var(--t),border-color var(--t),box-shadow var(--t),transform var(--t-fast),opacity var(--t)}

/* Theme switching: fade the large surfaces instead of snapping between
   palettes. Kept off .row and .nav-item, which already own a transition that
   includes transform. */
body,.sidebar,.topbar,.card,.thead,.popover,.composer,.comment{transition:background-color var(--t),border-color var(--t),color var(--t)}
