@font-face {
  font-family: 'Cascadia Code';
  src: url('https://f.n1kt.ru/fonts/CascadiaCode-Regular.woff2') format('woff2');
  font-display: swap;
}

:root {
  --bg: #fff;
  --tx: #000;
  --br: #000;
  --accent: #559d8d;
  --link: #007bff;
  --bg-r: 255;
  --bg-g: 255;
  --bg-b: 255;
}

[data-theme='dark'] {
  --bg: #0b0b0b;
  --tx: #fff;
  --br: #fff;
  --link: #4da3ff;
  --bg-r: 11;
  --bg-g: 11;
  --bg-b: 11;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
    --bg: #0b0b0b;
    --tx: #fff;
    --br: #fff;
    --link: #4da3ff;
    --bg-r: 11;
    --bg-g: 11;
    --bg-b: 11;
  }
}

* {
  box-sizing: border-box;
}

body {
  font-family: 'Cascadia Code', monospace;
  background: var(--bg);
  color: var(--tx);
  max-width: 700px;
  margin: 0 auto;
  padding: clamp(16px, 5vw, 32px);
  line-height: 1.5;
  transition: background .2s, color .2s;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1, h2, h3 {
  margin: .4em 0 .1em;
  font-weight: 600;
}

h1 { font-size: 2.2em; margin-top: 0; }
h2 { font-size: 1.8em; }
h3 { font-size: 1.4em; }

a {
  color: var(--link);
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

img {
  max-width: 100%;
  height: auto;
}

p {
  margin: .5em 0;
}

pre, code {
  font-family: 'Cascadia Code', monospace;
  font-size: .9em;
}

pre {
  border: 1px solid var(--br);
  border-radius: 16px;
  padding: 16px;
  margin: 1em 0;
  overflow-x: auto;
}
