/* The tuka.events design system (DESIGN.md, design-system/tokens.css), copied by hand like the
   hub's: this site reads nothing outside vendors/. */
@font-face { font-family: "Golos Text"; font-weight: 400 700; font-display: swap; src: url(/font/golos-text-cyrillic.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: "Golos Text"; font-weight: 400 700; font-display: swap; src: url(/font/golos-text-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
@font-face { font-family: Oswald; font-weight: 600; font-display: swap; src: url(/font/oswald-cyrillic.woff2) format("woff2"); unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116; }
@font-face { font-family: Oswald; font-weight: 600; font-display: swap; src: url(/font/oswald-latin.woff2) format("woff2"); unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; }
:root {
  --background: #FFFFFF; --foreground: #1A1613; --muted: #F4F2EF; --muted-foreground: #645C54;
  --border: #E4E0DA; --primary-ink: #96650A; --ring: #A8710F; --gold: #D99A1E;
  --card: #FFFFFF; --shadow-sheet: 0 1px 0 rgb(16 49 58 / .10), 0 6px 12px -6px rgb(16 49 58 / .20);
}
@media (prefers-color-scheme: dark) {
  :root {
    --background: #0C0B0A; --foreground: #F7F3EC; --muted: #1A1713; --muted-foreground: #A79E92;
    --border: #2C2823; --primary-ink: #EDA92A; --ring: #EDA92A; --gold: #EDA92A;
    --card: #1A1713; --shadow-sheet: 0 1px 0 rgb(0 0 0 / .55), 0 6px 12px -6px rgb(0 0 0 / .6), inset 0 1px 0 rgb(255 255 255 / .05);
  }
}
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; background: var(--background); color: var(--foreground); font: 400 1rem/1.6 "Golos Text", system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--primary-ink); }
:focus-visible { outline: 2px solid var(--ring); outline-offset: 2px; }
/* Oswald 600, uppercase, and never tighter than 1.25: Й and Ё need it to clear the line above. */
h1, h2 { margin: 0; font-family: Oswald, Haettenschweiler, sans-serif; font-weight: 600; line-height: 1.25; text-transform: uppercase; text-wrap: balance; }
h1 { font-size: clamp(2.25rem, 6vw, 3.5rem); }
h2 { font-size: clamp(1.5rem, 3.5vw, 2rem); margin-bottom: .75rem; }
h3 { margin: 0 0 .25rem; font-size: 1.0625rem; line-height: 1.35; }
p { margin: 0 0 .75rem; text-wrap: pretty; }
ul { margin: 0 0 .75rem; padding-left: 1.25rem; }
li { margin-bottom: .25rem; }
.shell { max-width: 56rem; margin-inline: auto; padding-inline: 1rem; }

header { border-bottom: 1px solid var(--border); }
header .shell { min-height: 4rem; display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.logo img { display: block; height: 3rem; width: auto; }
.langs { display: flex; gap: .25rem; }
.langs a { display: flex; align-items: center; min-height: 2.75rem; padding-inline: .625rem; border-radius: .375rem; color: var(--muted-foreground); font-size: .875rem; font-weight: 600; text-decoration: none; }
.langs a:hover { background: var(--muted); color: var(--foreground); }
.langs a[aria-current] { color: var(--primary-ink); }

main { padding-block: 2.5rem 4rem; }
section { margin-top: 3rem; }
.lead { margin-top: .75rem; max-width: 42rem; font-size: 1.125rem; color: var(--muted-foreground); }
.ways { display: grid; grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr)); gap: 1rem; }
.way { padding: 1rem; border-radius: .5rem; background: var(--card); box-shadow: var(--shadow-sheet), 0 0 0 1px var(--border); }
.way p { margin: 0; font-size: .9375rem; color: var(--muted-foreground); }
.note { padding: 1rem; border-radius: .5rem; background: var(--muted); }
.note p:last-child { margin: 0; }
code { font: .875em/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; overflow-wrap: anywhere; }
pre { margin: 0 0 .75rem; padding: .875rem 1rem; overflow-x: auto; border-radius: .5rem; background: var(--muted); }
pre code { overflow-wrap: normal; }
.table { overflow-x: auto; margin-bottom: .75rem; }
table { width: 100%; border-collapse: collapse; font-size: .9375rem; }
th, td { padding: .5rem .75rem .5rem 0; border-bottom: 1px solid var(--border); text-align: left; vertical-align: top; }
th { font-weight: 600; }
footer { border-top: 1px solid var(--border); padding-block: 1.5rem; font-size: .875rem; color: var(--muted-foreground); }
