*, *::before, *::after { box-sizing: border-box; }
* { margin: 0; }
body {
  font-family: var(--m-font);
  font-size: 1rem;
  line-height: 1.5;
  color: var(--m-fg);
  background: var(--m-bg);
  -webkit-font-smoothing: antialiased;
}
:root { color-scheme: light dark; }
@media (prefers-color-scheme: dark) {
  :root:not([data-theme="light"]) { color-scheme: dark; }
}
:root[data-theme="dark"] { color-scheme: dark; }
:root[data-theme="light"] { color-scheme: light; }
img, svg, video { display: block; max-width: 100%; }
input, button, select, textarea { font: inherit; color: inherit; }

h1,h2,h3,h4,h5,h6 { font-family: var(--m-font-head); font-weight: 600; line-height: 1.3; letter-spacing: -.01em; margin: 1.4em 0 .5em; }
h1{font-size:2.15rem}h2{font-size:1.65rem}h3{font-size:1.35rem}h4{font-size:1.15rem}h5{font-size:1rem}
h6 { font-size: 1rem; text-transform: uppercase; letter-spacing: .07em; color: var(--m-fg-3); }
p { margin: .7em 0; }
small { font-size: 1em; color: var(--m-fg-3); }
a { color: var(--m-primary); text-decoration: none; }
a:hover { text-decoration: underline; }
hr { border: 0; border-top: 1px solid var(--m-border); margin: 1.6em 0; }
blockquote {
  border-left: 3px solid var(--m-border-2);
  background: var(--m-surface);
  border-radius: 0 var(--m-r-sm) var(--m-r-sm) 0;
  padding: .8em 1.2em;
  margin: 1em 0;
  color: var(--m-fg-2);
}
ul, ol { padding-left: 1.4em; }
li { margin: .25em 0; }
li::marker { color: var(--m-fg-3); }
kbd {
  font-family: var(--m-mono);
  font-size: 1em;
  padding: .2em .5em;
  border: 1px solid var(--m-border);
  border-bottom-width: 2px;
  border-radius: var(--m-r-sm);
  background: var(--m-surface);
}
.kbd-row { display: inline-flex; align-items: center; gap: .25em; }
mark { padding: .1em .3em; border-radius: 3px; background: rgba(255,199,87,.35); }
::selection { background: var(--m-primary); color: var(--m-on-primary); }
:focus { outline: 2px solid var(--m-primary); outline-offset: 2px; }
@supports selector(:focus-visible) {
  :focus { outline: none; }
  :focus-visible { outline: 2px solid var(--m-primary); outline-offset: 2px; }
}
