@font-face {
  font-family: "Fraunces";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/fraunces-latin-600-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Fraunces";
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url("../fonts/fraunces-latin-800-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Fraunces";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/fraunces-latin-500-italic.woff2") format("woff2");
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("../fonts/manrope-latin-400-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/manrope-latin-500-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url("../fonts/manrope-latin-600-normal.woff2") format("woff2");
}

@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("../fonts/manrope-latin-700-normal.woff2") format("woff2");
}

@font-face {
  font-family: "IBM Plex Mono";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url("../fonts/ibm-plex-mono-latin-500-normal.woff2") format("woff2");
}

:root {
  --paper: #f3ede2;
  --paper-2: #fbf8f1;
  --paper-3: #e8e0d0;
  --ink: #15120e;
  --ink-2: #3b352d;
  --muted: #6e655a;
  --rule: rgba(21, 18, 14, 0.16);
  --rule-soft: rgba(21, 18, 14, 0.09);
  --acc: #2b36f5;
  --acc-dark: #1a22c4;
  --hl: #dcff4a;
  --warm: #ff5b2e;
  --night-text: #e4ddcf;
  --night-muted: #a69e8f;
  --night-rule: rgba(243, 237, 226, 0.16);
  --f-serif: "Fraunces", Georgia, "Times New Roman", serif;
  --f-sans: "Manrope", "Segoe UI", system-ui, -apple-system, sans-serif;
  --f-mono: "IBM Plex Mono", ui-monospace, Consolas, "Courier New", monospace;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  max-width: 100%;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0;
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
  overflow-wrap: break-word;
  background-color: var(--paper);
  background-image: radial-gradient(rgba(21, 18, 14, 0.05) 1px, transparent 1px);
  background-size: 5px 5px;
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

h1,
h2,
h3,
h4 {
  overflow-wrap: break-word;
  word-break: break-word;
}

ul,
ol {
  margin: 0;
  padding: 0;
}

img,
svg {
  display: block;
  max-width: 100%;
}

video,
iframe,
canvas,
input,
select,
textarea {
  max-width: 100%;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  font: inherit;
}

::selection {
  background: var(--hl);
  color: var(--ink);
}

:focus-visible {
  outline: 2px solid var(--acc);
  outline-offset: 3px;
}

[hidden] {
  display: none !important;
}

.lk8s2d,
.lk8s2d body {
  overflow: hidden;
}

.c3xf9a {
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 28px;
}

.h8mw5d {
  position: relative;
  z-index: 40;
  background: var(--paper);
  border-top: 6px solid var(--ink);
  border-bottom: 1px solid var(--ink);
}

.n5pl7e {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  min-height: 84px;
}

.b6rk2v {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}

.i9ds4q svg {
  width: 44px;
  height: 44px;
}

.t1gz8y {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 27px;
  line-height: 1;
  letter-spacing: -0.02em;
}

.a7fe3u {
  margin-left: 1px;
  font-style: italic;
  font-weight: 500;
  color: var(--acc);
}

.w5ez2k {
  display: flex;
  align-items: center;
  gap: 2px;
  list-style: none;
}

.f1nh6o {
  position: relative;
  display: inline-block;
  padding: 8px 11px;
  font-weight: 600;
  font-size: 14.5px;
  white-space: nowrap;
  color: var(--ink-2);
  transition: color 0.2s ease;
}

.f1nh6o::after {
  content: "";
  position: absolute;
  left: 11px;
  right: 11px;
  bottom: 3px;
  height: 2px;
  background: var(--acc);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.2s ease;
}

.f1nh6o:hover {
  color: var(--ink);
}

.f1nh6o:hover::after {
  transform: scaleX(1);
}

.q0ru3l {
  color: var(--ink);
  background: linear-gradient(transparent 58%, var(--hl) 58%, var(--hl) 88%, transparent 88%);
}

.q0ru3l::after {
  display: none;
}

.g4ow1j {
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 5px;
  width: 46px;
  height: 46px;
  padding: 0;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: transparent;
  color: var(--ink);
  cursor: pointer;
}

.s8yk5r {
  display: block;
  width: 20px;
  height: 2px;
  background: currentColor;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.g4ow1j[aria-expanded="true"] {
  background: var(--ink);
  color: var(--paper);
}

.g4ow1j[aria-expanded="true"] .s8yk5r:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.g4ow1j[aria-expanded="true"] .s8yk5r:nth-child(2) {
  opacity: 0;
}

.g4ow1j[aria-expanded="true"] .s8yk5r:nth-child(3) {
  transform: translateY(-7px) rotate(-45deg);
}

.y7dc1b {
  padding: 34px 0 44px;
}

.hm4e8c {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 6px 20px;
  padding: 9px 0;
  border-bottom: 1px solid var(--ink);
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink-2);
}

.hg2w7s {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 330px;
  gap: 56px;
  align-items: end;
  margin-top: 36px;
}

.x3qm7n {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: clamp(38px, 5.4vw, 74px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  color: var(--ink);
}

.p2hy6f {
  font-style: italic;
  font-weight: 500;
  color: var(--acc);
  background: linear-gradient(transparent 64%, var(--hl) 64%, var(--hl) 92%, transparent 92%);
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding: 0 4px;
  margin: 0 -4px;
}

.k1zb9w {
  max-width: 660px;
  margin-top: 22px;
  font-family: var(--f-sans);
  font-weight: 500;
  font-size: 18px;
  line-height: 1.6;
  color: var(--ink-2);
}

.hc8t3v {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 26px;
  margin-top: 28px;
}

.hl6q1n {
  font-weight: 700;
  font-size: 15px;
  border-bottom: 2px solid var(--ink);
  padding-bottom: 2px;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.hl6q1n:hover {
  color: var(--acc);
  border-color: var(--acc);
}

.hs3k8v {
  padding: 20px 22px 8px;
  border: 1px solid var(--ink);
  border-top: 6px solid var(--acc);
  background: var(--paper-2);
}

.hy5n2r {
  display: block;
  margin-bottom: 6px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acc);
}

.ho7c4m {
  list-style: none;
}

.ho7c4m li + li {
  border-top: 1px solid var(--rule);
}

.hk9w1t {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  align-items: baseline;
  padding: 12px 0;
  font-family: var(--f-serif);
  font-weight: 600;
  font-size: 18px;
  line-height: 1.25;
  transition: color 0.2s ease;
}

.hk9w1t span {
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--muted);
}

.hk9w1t:hover {
  color: var(--acc);
}

.pz5r2e {
  padding: 30px 0 40px;
}

.pz5r2e .bc8w3n {
  padding-top: 12px;
  border-top: 1px solid var(--ink);
}

.pt3h8d {
  max-width: 940px;
  font-size: clamp(34px, 4.6vw, 60px);
}

.pz5r2e .k1zb9w {
  max-width: 720px;
}

.bc8w3n {
  margin-bottom: 22px;
}

.bq2v6m {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.br7k1x + .br7k1x::before {
  content: "/";
  margin-right: 8px;
  color: var(--muted);
}

.bs4n9p {
  border-bottom: 1px solid var(--ink);
}

.bs4n9p:hover {
  color: var(--acc);
  border-color: var(--acc);
}

.bt6c2d {
  color: var(--muted);
}

.k7tq2w {
  background: var(--ink);
  color: var(--night-text);
}

.r9vb3m {
  display: flex;
  align-items: center;
  gap: 18px;
  padding-top: 14px;
  padding-bottom: 14px;
}

.z4hn8p {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--hl);
  color: var(--ink);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 15px;
}

.u2cj6x {
  font-size: 14px;
  line-height: 1.55;
}

.u2cj6x strong {
  color: var(--paper);
  font-weight: 700;
}

.v0kp4d {
  color: var(--acc);
  font-weight: 700;
  border-bottom: 1px solid currentColor;
}

.v0kp4d:hover {
  color: var(--acc-dark);
}

.k7tq2w .v0kp4d {
  color: var(--hl);
}

.k7tq2w .v0kp4d:hover {
  color: var(--paper);
}

.ab2k9s {
  padding: 76px 0;
}

.ab2k9s + .ab2k9s {
  padding-top: 0;
}

.qm4v8z {
  padding: 64px 0 76px;
}

.qm4v8z + .ab2k9s {
  padding-top: 0;
}

.hx2n7w {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 400px);
  column-gap: 56px;
  align-items: end;
  margin-bottom: 36px;
  padding-top: 14px;
  border-top: 3px solid var(--ink);
}

.ep6t3c {
  grid-column: 1 / -1;
  margin-bottom: 14px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acc);
}

.ty9k1d {
  grid-row: span 2;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: clamp(30px, 3.6vw, 48px);
  line-height: 1.05;
  letter-spacing: -0.025em;
}

.sb4r8m {
  font-size: 16px;
  line-height: 1.6;
  color: var(--ink-2);
}

.mu7z2q {
  grid-column: 2;
  margin-top: 12px;
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--muted);
}

.mu7z2q::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border-radius: 50%;
  background: var(--acc);
  vertical-align: 1px;
}

.lz3w9f {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: none;
}

.ot5r2k {
  position: relative;
  background: var(--paper-2);
  border: 1px solid var(--ink);
}

.fz8c1n {
  margin-top: 14px;
  border-width: 2px;
  box-shadow: 8px 8px 0 var(--acc);
}

.rb5m0x {
  position: absolute;
  top: -15px;
  left: 26px;
  z-index: 1;
  padding: 5px 12px;
  background: var(--acc);
  color: #fff;
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transform: rotate(-2deg);
}

.rw2h6j {
  display: grid;
  grid-template-columns: 70px 168px minmax(0, 1fr) 236px 104px 206px;
  grid-template-areas: "rank logo name bonus score cta";
  align-items: center;
  gap: 24px;
  padding: 26px 28px;
}

.rk7p4s {
  grid-area: rank;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 54px;
  line-height: 1;
  letter-spacing: -0.04em;
  color: var(--ink);
}

@supports (-webkit-text-stroke: 1px black) {
  .rk7p4s {
    color: transparent;
    -webkit-text-stroke: 1.5px var(--ink);
  }

  .fz8c1n .rk7p4s {
    color: var(--acc);
    -webkit-text-stroke: 0;
  }
}

.lg1v9e {
  grid-area: logo;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80px;
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--rule);
}

.im6d3t {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.nm8q5u {
  grid-area: name;
  min-width: 0;
}

.nh3x7a {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 25px;
  line-height: 1.1;
  letter-spacing: -0.01em;
}

.tg4b2y {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 10px;
}

.tq9e6i {
  padding: 2px 7px;
  border: 1px solid var(--ink);
  font-family: var(--f-mono);
  font-size: 10.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.bn5s1o {
  grid-area: bonus;
  display: flex;
  flex-direction: column;
  gap: 3px;
  padding-left: 22px;
  border-left: 1px solid var(--rule);
}

.bl2k8g {
  font-family: var(--f-mono);
  font-size: 10.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.ba7w3r {
  align-self: flex-start;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 27px;
  line-height: 1.15;
  white-space: nowrap;
  background: linear-gradient(transparent 56%, var(--hl) 56%, var(--hl) 94%, transparent 94%);
}

.bd4j9z {
  font-size: 13.5px;
  line-height: 1.4;
  color: var(--ink-2);
}

.sc6f2l {
  grid-area: score;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.sn1t8h {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 32px;
  line-height: 1;
  white-space: nowrap;
}

.so3y5c {
  margin-left: 2px;
  font-family: var(--f-sans);
  font-weight: 600;
  font-size: 13px;
  color: var(--muted);
}

.st9u4k {
  position: relative;
  display: inline-block;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 2px;
  white-space: nowrap;
}

.st9u4k::before {
  content: "★★★★★";
  color: rgba(21, 18, 14, 0.18);
}

.sf2i7m {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  overflow: hidden;
}

.sf2i7m::before {
  content: "★★★★★";
  color: var(--acc);
}

.ct8a1p {
  grid-area: cta;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
}

.cb3o6v {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 52px;
  padding: 12px 24px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--f-sans);
  font-weight: 700;
  font-size: 15px;
  line-height: 1.2;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.cb3o6v svg {
  flex-shrink: 0;
  transition: transform 0.2s ease;
}

.cb3o6v:hover {
  background: var(--acc);
  border-color: var(--acc);
  color: #fff;
}

.cb3o6v:hover svg {
  transform: translateX(3px);
}

.cn5g9w {
  font-family: var(--f-mono);
  font-size: 11px;
  text-align: center;
  color: var(--muted);
}

.dc7l2e {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 13px 28px 15px;
  border-top: 1px dashed var(--rule);
  background: rgba(21, 18, 14, 0.025);
}

.di4h8x {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 19px;
  height: 19px;
  margin-top: 1px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  font-family: var(--f-serif);
  font-style: italic;
  font-weight: 500;
  font-size: 12px;
  line-height: 1;
}

.dt1n5q {
  font-size: 12px;
  line-height: 1.55;
  color: var(--muted);
}

.av7n3c {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  counter-reset: mf;
}

.vc2t8e {
  padding: 4px 26px 0;
  border-left: 1px solid var(--rule);
}

.vc2t8e:first-child {
  padding-left: 0;
  border-left: 0;
}

.vc2t8e::before {
  counter-increment: mf;
  content: counter(mf, upper-roman) ".";
  display: block;
  margin-bottom: 14px;
  font-family: var(--f-serif);
  font-style: italic;
  font-weight: 500;
  font-size: 40px;
  line-height: 1;
  color: var(--acc);
}

.av7n3c .vi5k1r {
  display: none;
}

.vi5k1r {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--paper-2);
  color: var(--ink);
}

.vt9p4w {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 21px;
  line-height: 1.2;
}

.vx3m6a {
  margin-top: 10px;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-2);
}

.gt5w8q {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.gc3n7r {
  display: flex;
  flex-direction: column;
  padding: 30px 28px 28px;
  border-left: 1px solid var(--ink);
}

.gc3n7r:first-child {
  border-left: 0;
}

.gi8d2m {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  width: 58px;
  height: 58px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--hl);
  color: var(--ink);
}

.gh1v6k {
  margin: 20px 0 10px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 32px;
  line-height: 1;
  letter-spacing: -0.02em;
}

.gx4p9s {
  flex-grow: 1;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-2);
}

.gp7e3b {
  display: block;
  margin-top: 22px;
  padding-top: 14px;
  border-top: 1px solid var(--rule);
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.gl2r5y {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  font-weight: 700;
  font-size: 15px;
  color: var(--acc);
}

.gl2r5y::after {
  content: "→";
  transition: transform 0.2s ease;
}

.gl2r5y:hover::after {
  transform: translateX(4px);
}

.pq3m7d {
  padding: 54px 24px;
  border-top: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
  text-align: center;
}

.pq8w2x p {
  max-width: 920px;
  margin: 0 auto;
  font-family: var(--f-serif);
  font-style: italic;
  font-weight: 500;
  font-size: clamp(28px, 3.8vw, 50px);
  line-height: 1.16;
  letter-spacing: -0.015em;
}

.pc4k9r {
  margin-top: 22px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--muted);
}

.pc4k9r::before {
  content: "— ";
}

.st6k1q {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  list-style: none;
  border-top: 1px solid var(--ink);
}

.si3m8w {
  padding: 24px 26px 0;
  border-left: 1px solid var(--rule);
}

.si3m8w:first-child {
  padding-left: 0;
  border-left: 0;
}

.sn9c4h {
  display: inline-block;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 58px;
  line-height: 1;
  color: var(--acc);
  background: linear-gradient(transparent 70%, var(--hl) 70%);
  padding: 0 4px;
}

.sx2t7e {
  margin: 16px 0 8px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 20px;
  line-height: 1.2;
}

.sy5v1p {
  font-size: 14.5px;
  line-height: 1.65;
  color: var(--ink-2);
}

.bg8r2t {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 56px;
}

.bt4k9n {
  padding: 20px 0 22px;
  border-top: 1px solid var(--rule);
}

.bt4k9n:nth-child(-n + 2) {
  border-top-color: var(--ink);
}

.bk1w6d {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 22px;
  line-height: 1.2;
}

.bq6t1w {
  margin-left: 6px;
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 11.5px;
  color: var(--acc);
  white-space: nowrap;
}

.bd7q3x {
  margin-top: 8px;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-2);
}

.fq7x2c {
  max-width: 920px;
  margin: 0 auto;
  border-top: 1px solid var(--ink);
}

.fi4n8w {
  border-bottom: 1px solid var(--rule);
}

.fs1k5t {
  position: relative;
  display: block;
  padding: 22px 64px 22px 0;
  font-family: var(--f-serif);
  font-weight: 600;
  font-size: 20px;
  line-height: 1.3;
  cursor: pointer;
  list-style: none;
  transition: color 0.2s ease;
}

.fs1k5t::-webkit-details-marker {
  display: none;
}

.fs1k5t::after {
  content: "+";
  position: absolute;
  right: 0;
  top: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  margin-top: -18px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  font-family: var(--f-sans);
  font-weight: 500;
  font-size: 20px;
  line-height: 1;
}

.fs1k5t:hover {
  color: var(--acc);
}

.fi4n8w[open] .fs1k5t::after {
  content: "−";
  background: var(--ink);
  color: var(--paper);
}

.fa9r3m {
  padding: 0 64px 24px 0;
}

.fa9r3m p {
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--ink-2);
}

.fa9r3m a {
  color: var(--acc);
  font-weight: 600;
  border-bottom: 1px solid currentColor;
}

.fm5c8j {
  display: flex;
  justify-content: center;
  margin-top: 34px;
}

.cm3x7v {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 42px 46px;
  background: var(--ink);
  color: var(--night-text);
}

.cm3x7v .sh7d4k {
  color: var(--paper);
}

.cm3x7v .sp2x8v {
  color: var(--night-muted);
}

.cm3x7v .cb3o6v {
  flex-shrink: 0;
  background: var(--hl);
  border-color: var(--hl);
  color: var(--ink);
}

.cm3x7v .cb3o6v:hover {
  background: var(--paper);
  border-color: var(--paper);
}

.sh7d4k {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: clamp(28px, 3.2vw, 42px);
  line-height: 1.08;
  letter-spacing: -0.02em;
}

.sp2x8v {
  margin-top: 14px;
  font-size: 16px;
  line-height: 1.75;
  color: var(--ink-2);
}

.ai5r8t {
  display: grid;
  grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
  gap: 56px;
  align-items: center;
}

.ai5r8t .ep6t3c {
  display: block;
}

.as6w2n {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.ac9e4p {
  padding: 26px 24px;
  border-right: 1px solid var(--ink);
  border-bottom: 1px solid var(--ink);
}

.ac9e4p:nth-child(2n) {
  border-right: 0;
}

.ac9e4p:nth-child(n + 3) {
  border-bottom: 0;
}

.an3h7z {
  display: block;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 50px;
  line-height: 1;
  letter-spacing: -0.03em;
  color: var(--acc);
  white-space: nowrap;
}

.al8q1y {
  display: block;
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--ink-2);
}

.mt4q9z {
  list-style: none;
  border-top: 1px solid var(--ink);
}

.ms8e2c {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) 96px;
  align-items: center;
  gap: 24px;
  padding: 22px 0;
  border-bottom: 1px solid var(--rule);
}

.mn1w7k {
  font-family: var(--f-serif);
  font-style: italic;
  font-weight: 500;
  font-size: 44px;
  line-height: 1;
  color: var(--acc);
}

.mh6r3x {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 21px;
  line-height: 1.2;
}

.mp2b8n {
  margin-top: 6px;
  font-size: 14.5px;
  line-height: 1.65;
  color: var(--ink-2);
}

.mw5j4t {
  justify-self: end;
  padding: 4px 10px;
  background: var(--hl);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 28px;
  line-height: 1.1;
  white-space: nowrap;
}

.ct2r8k {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: 24px;
  align-items: stretch;
}

.ce7m4q {
  padding: 40px 40px 36px;
  background: var(--ink);
  color: var(--night-text);
}

.cek5w1 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: var(--hl);
  color: var(--ink);
}

.cel4t8 {
  display: block;
  margin: 24px 0 8px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--night-muted);
}

.cem9x2 {
  display: inline-block;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: clamp(22px, 3vw, 38px);
  line-height: 1.15;
  color: var(--paper);
  word-break: break-word;
  background: linear-gradient(transparent 84%, var(--hl) 84%);
}

.cem9x2:hover {
  color: var(--hl);
}

.cer3k6 {
  margin-top: 18px;
  font-size: 15px;
  line-height: 1.7;
  color: var(--night-muted);
}

.cea6p2 {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.ce7m4q .cb3o6v {
  background: var(--hl);
  border-color: var(--hl);
  color: var(--ink);
}

.ce7m4q .cb3o6v:hover {
  background: var(--paper);
  border-color: var(--paper);
}

.ce7m4q .cr4k7v {
  border-color: var(--night-rule);
  color: var(--paper);
}

.ce7m4q .cr4k7v:hover {
  border-color: var(--paper);
  background: transparent;
  color: var(--paper);
}

.ci4v9b {
  padding: 34px 32px;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.cih2m5 {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 25px;
  line-height: 1.2;
}

.cil7q3 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin-top: 18px;
  list-style: none;
}

.cil7q3 li {
  position: relative;
  padding-left: 28px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--ink-2);
}

.cil7q3 li::before {
  content: "→";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--acc);
  font-weight: 700;
}

.cg6t1p {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.ctc8n5 {
  display: flex;
  flex-direction: column;
  padding: 28px 24px;
  border-left: 1px solid var(--ink);
}

.ctc8n5:first-child {
  border-left: 0;
}

.ctc8n5 .vt9p4w {
  margin-top: 18px;
}

.cts2w7 {
  margin-top: auto;
  padding-top: 18px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  color: var(--acc);
}

.cn7d3f {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  padding: 24px 26px;
  border: 1px solid var(--ink);
  background: var(--hl);
}

.cn7d3f .vi5k1r {
  background: transparent;
}

.cnt4k8 {
  font-size: 15px;
  line-height: 1.7;
}

.cnt4k8 a {
  font-weight: 700;
  border-bottom: 1px solid currentColor;
}

.lg7q2n {
  padding: 56px 0 84px;
}

.lw3e8r {
  display: grid;
  grid-template-columns: 250px minmax(0, 1fr);
  gap: 48px;
  align-items: start;
}

.la5t1k {
  position: sticky;
  top: 24px;
  padding-top: 14px;
  border-top: 3px solid var(--ink);
}

.lh1r6y {
  display: block;
  margin-bottom: 10px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acc);
}

.lt9m4c {
  list-style: none;
  counter-reset: toc;
}

.lu2p7f {
  display: flex;
  gap: 12px;
  padding: 9px 0;
  border-bottom: 1px solid var(--rule);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.4;
  color: var(--ink-2);
  transition: color 0.2s ease;
}

.lu2p7f::before {
  counter-increment: toc;
  content: counter(toc, decimal-leading-zero);
  flex-shrink: 0;
  font-family: var(--f-mono);
  font-size: 11.5px;
  line-height: 1.75;
  color: var(--acc);
}

.lu2p7f:hover {
  color: var(--acc);
}

.ld6v3h {
  padding: 44px 50px 48px;
  border: 1px solid var(--ink);
  background: var(--paper-2);
  counter-reset: sec;
}

.ld6v3h h2 {
  margin: 40px 0 14px;
  padding-top: 26px;
  border-top: 1px solid var(--rule);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 27px;
  line-height: 1.2;
  letter-spacing: -0.015em;
  scroll-margin-top: 24px;
}

.ld6v3h h2::before {
  counter-increment: sec;
  content: counter(sec, decimal-leading-zero);
  display: block;
  margin-bottom: 8px;
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 12.5px;
  letter-spacing: 0.1em;
  color: var(--acc);
}

.ld6v3h h3 {
  margin: 22px 0 10px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 19px;
  line-height: 1.3;
}

.ld6v3h p {
  margin: 0 0 14px;
  font-size: 15.5px;
  line-height: 1.78;
  color: var(--ink-2);
}

.ld6v3h ul {
  margin: 0 0 16px;
  padding-left: 22px;
}

.ld6v3h li {
  margin-bottom: 8px;
  font-size: 15.5px;
  line-height: 1.7;
  color: var(--ink-2);
}

.ld6v3h li::marker {
  color: var(--acc);
}

.ld6v3h a {
  color: var(--acc);
  font-weight: 600;
  border-bottom: 1px solid currentColor;
}

.ld6v3h strong {
  color: var(--ink);
}

.ln8b5x {
  padding: 18px 22px;
  border: 1px solid var(--ink);
  background: var(--hl);
}

.ld6v3h .ln8b5x p {
  margin: 0;
  font-weight: 600;
  font-size: 15px;
  color: var(--ink);
}

.lx4f7j {
  margin: 8px 0 20px;
  overflow-x: auto;
  border: 1px solid var(--ink);
}

.lx4f7j table {
  width: 100%;
  min-width: 520px;
  border-collapse: collapse;
  font-size: 14px;
}

.lx4f7j th {
  padding: 11px 14px;
  background: var(--ink);
  color: var(--paper);
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
}

.lx4f7j td {
  padding: 11px 14px;
  border-top: 1px solid var(--rule);
  line-height: 1.55;
  vertical-align: top;
  color: var(--ink-2);
}

.qb4k7w + .qb4k7w {
  margin-top: 52px;
}

.qh8s2d {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 6px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 30px;
  line-height: 1.15;
  letter-spacing: -0.02em;
  scroll-margin-top: 24px;
}

.qh8s2d .vi5k1r {
  background: var(--hl);
}

.qb4k7w .fq7x2c {
  max-width: none;
  border-top: 0;
}

.qn5w2r {
  margin-top: 52px;
}

.pf3t8w {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-bottom: 26px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--rule);
}

.pv5n2c {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pb6k2n {
  min-height: 42px;
  padding: 8px 20px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  background: transparent;
  color: var(--ink);
  font-family: var(--f-sans);
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.pb6k2n:hover {
  background: var(--paper-3);
}

.pb6k2n[aria-pressed="true"] {
  background: var(--ink);
  color: var(--paper);
}

.pt7y2h {
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.pg8m4r {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.pc5w1h {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.pe2r8u {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 24px 24px 0;
}

.pe2r8u .lg1v9e {
  flex-shrink: 0;
  width: 140px;
  height: 70px;
}

.ph9w3k {
  flex-grow: 1;
  min-width: 0;
}

.pn7q3s {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 25px;
  line-height: 1.1;
}

.ps4h7c {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}

.pi9r6t {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 20px;
  margin: 20px 24px 0;
  border-top: 1px solid var(--ink);
}

.pj3v5x {
  padding: 12px 0;
  border-bottom: 1px solid var(--rule);
}

.pk8b2m {
  font-family: var(--f-mono);
  font-size: 10.5px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--muted);
}

.pl1n4w {
  margin-top: 4px;
  font-weight: 700;
  font-size: 14.5px;
  line-height: 1.4;
}

.pm6c9y {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  margin-top: auto;
  padding: 20px 24px;
}

.pr2e7k {
  font-weight: 700;
  font-size: 14.5px;
  border-bottom: 2px solid var(--hl);
  transition: color 0.2s ease;
}

.pr2e7k:hover {
  color: var(--acc);
}

.pd4z8q {
  padding: 12px 24px 14px;
  border-top: 1px dashed var(--rule);
  background: rgba(21, 18, 14, 0.025);
  font-size: 11.5px;
  line-height: 1.55;
  color: var(--muted);
}

.rj5s9d {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-bottom: 34px;
}

.rk2m6v {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-weight: 700;
  font-size: 14px;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.rk2m6v span {
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--acc);
}

.rk2m6v:hover {
  background: var(--ink);
  color: var(--paper);
}

.rk2m6v:hover span {
  color: var(--hl);
}

.rw6g1t {
  display: flex;
  flex-direction: column;
  gap: 34px;
}

.ra8w3e {
  border: 1px solid var(--ink);
  background: var(--paper-2);
  scroll-margin-top: 20px;
}

.rh4t1q {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 24px;
  padding: 28px 30px 24px;
  border-bottom: 1px solid var(--rule);
}

.rh4t1q .lg1v9e {
  flex-shrink: 0;
  width: min(170px, 100%);
}

.rg3w5j {
  flex-grow: 1;
  min-width: min(180px, 100%);
}

.rn6p8z {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 32px;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.rs3c7m {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--hl);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 30px;
  line-height: 1;
}

.rs3c7m small {
  margin-top: 4px;
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 11px;
  color: var(--ink-2);
}

.rb9k2x {
  display: grid;
  grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
  gap: 34px;
  padding: 26px 30px 0;
}

.rv1f6n p {
  margin-bottom: 12px;
  font-size: 15.5px;
  line-height: 1.78;
  color: var(--ink-2);
}

.rv1f6n p:first-of-type::first-letter {
  float: left;
  margin: 6px 10px 0 0;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 58px;
  line-height: 0.8;
  color: var(--acc);
}

.rq5e2h {
  margin-bottom: 12px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 19px;
  line-height: 1.2;
}

.rd7h4u {
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-self: start;
  padding: 22px;
  border: 1px solid var(--ink);
  background: var(--paper);
}

.rt1e9p {
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--acc);
}

.ri2q9w {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 6px 10px;
}

.rl5x3a {
  font-weight: 600;
  font-size: 13.5px;
}

.rx8m1b {
  font-family: var(--f-mono);
  font-size: 13px;
}

.ry4n7c {
  grid-column: 1 / -1;
  height: 8px;
  background: rgba(21, 18, 14, 0.1);
}

.rz6t2e {
  display: block;
  height: 100%;
  background: var(--acc);
}

.rp3k8s {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  padding: 26px 30px 0;
}

.ro9w4d,
.rc1v7g {
  padding: 18px 20px;
  border: 1px solid var(--ink);
}

.ro9w4d {
  background: rgba(220, 255, 74, 0.45);
}

.rc1v7g {
  background: rgba(255, 91, 46, 0.1);
}

.ru8j3f {
  display: flex;
  flex-direction: column;
  gap: 8px;
  list-style: none;
}

.ru8j3f li {
  position: relative;
  padding-left: 24px;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ink-2);
}

.ru8j3f li::before {
  position: absolute;
  left: 0;
  top: 0;
  font-weight: 800;
}

.ro9w4d .ru8j3f li::before {
  content: "+";
  color: var(--ink);
}

.rc1v7g .ru8j3f li::before {
  content: "−";
  color: var(--warm);
}

.rf2b6y {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 26px 30px;
}

.rf2b6y .bn5s1o {
  flex-grow: 1;
  max-width: 460px;
  padding: 12px 16px;
  border: 1px dashed var(--ink);
}

.bw3n8t {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.bx9c4m {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.bz7f4c {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(0, 1.15fr);
}

.bh2k7p {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px;
  min-height: 150px;
  padding: 20px 24px;
  background-color: var(--ink);
  background-image: repeating-linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0 2px, transparent 2px 14px);
  color: var(--hl);
  border-bottom: 1px solid var(--ink);
}

.bz7f4c .bh2k7p {
  min-height: 100%;
  border-bottom: 0;
  border-right: 1px solid var(--ink);
}

.bx9c4m:nth-child(2) .bh2k7p {
  background-color: var(--acc);
  color: #fff;
}

.bx9c4m:nth-child(3) .bh2k7p {
  background-color: var(--hl);
  background-image: repeating-linear-gradient(135deg, rgba(21, 18, 14, 0.07) 0 2px, transparent 2px 14px);
  color: var(--ink);
}

.bx9c4m:nth-child(4) .bh2k7p {
  background-color: var(--warm);
  color: var(--ink);
}

.bx9c4m:nth-child(5) .bh2k7p {
  background-color: var(--paper-3);
  background-image: repeating-linear-gradient(135deg, rgba(21, 18, 14, 0.06) 0 2px, transparent 2px 14px);
  color: var(--ink);
}

.bx9c4m:nth-child(6) .bh2k7p {
  background-color: var(--ink);
  color: #fff;
}

.bc7e3w {
  padding: 4px 10px;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.bb5v1s {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  padding: 24px 26px 26px;
}

.bn4q8d {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 23px;
  line-height: 1.2;
  letter-spacing: -0.015em;
}

.bz7f4c .bn4q8d {
  font-size: clamp(26px, 3vw, 38px);
  line-height: 1.1;
}

.be1y6h {
  margin-top: 12px;
  font-size: 15px;
  line-height: 1.7;
  color: var(--ink-2);
}

.bm8t2r {
  margin-top: 14px;
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--muted);
}

.bd3w9k {
  margin-top: auto;
  padding-top: 18px;
}

.bs6p1x {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 15px;
  border-bottom: 2px solid var(--hl);
  cursor: pointer;
  list-style: none;
}

.bs6p1x::-webkit-details-marker {
  display: none;
}

.bs6p1x::after {
  content: "↓";
  color: var(--acc);
  transition: transform 0.2s ease;
}

.bd3w9k[open] .bs6p1x::after {
  transform: rotate(180deg);
}

.bo2h5n {
  margin-top: 18px;
  padding-top: 18px;
  border-top: 1px solid var(--rule);
}

.bo2h5n h4 {
  margin: 18px 0 8px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 18px;
  line-height: 1.3;
}

.bo2h5n h4:first-child {
  margin-top: 0;
}

.bo2h5n p {
  margin-bottom: 12px;
  font-size: 15px;
  line-height: 1.78;
  color: var(--ink-2);
}

.bo2h5n a {
  color: var(--acc);
  font-weight: 600;
  border-bottom: 1px solid currentColor;
}

.fq3k8z {
  padding: 64px 0 0;
  background: var(--ink);
  color: var(--night-text);
}

.fr7m2w {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr);
  border: 1px solid var(--night-rule);
}

.fa4h9p {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  padding: 32px;
}

.fb6c1x {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 66px;
  height: 66px;
  border-radius: 50%;
  background: var(--warm);
  color: var(--ink);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 21px;
}

.fh5q7y {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 30px;
  line-height: 1.1;
  letter-spacing: -0.02em;
  color: var(--paper);
}

.fp9w2k {
  margin-top: 12px;
  font-size: 14.5px;
  line-height: 1.7;
  color: var(--night-muted);
}

.fm3z6s {
  color: var(--paper);
  font-weight: 600;
}

.fk1t5r {
  display: flex;
  flex-direction: column;
  padding: 32px;
  background: var(--hl);
  color: var(--ink);
}

.fl7n4d {
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.fn2y8u {
  margin-top: 6px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 28px;
  line-height: 1.15;
  letter-spacing: -0.015em;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.fn2y8u:hover {
  color: var(--acc);
}

.fo6b3j {
  margin-top: 6px;
  font-size: 13.5px;
  line-height: 1.5;
}

.fs4g9m {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(21, 18, 14, 0.25);
  list-style: none;
}

.ft8d2q {
  font-weight: 600;
  font-size: 14px;
}

.ft8d2q::before {
  content: "→ ";
}

.fl5x9c {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px 24px;
  margin: 36px 0 0;
  padding: 22px 0;
  border-top: 1px solid var(--night-rule);
  border-bottom: 1px solid var(--night-rule);
}

.fu3r7h {
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--night-muted);
}

.fv9k2a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  list-style: none;
}

.fx4m8b {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  padding: 8px 16px;
  background: var(--paper-2);
  transition: background-color 0.2s ease;
}

a.fx4m8b:hover {
  background: var(--hl);
}

.fy7c3n {
  width: auto;
  max-height: 46px;
}

.fz2p5w {
  padding: 8px 12px;
}

.fg1n6t {
  display: grid;
  grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(0, 1fr));
  gap: 40px;
  padding: 44px 0;
}

.fe5j8v .b6rk2v {
  color: var(--paper);
}

.fe5j8v .a7fe3u {
  color: var(--hl);
}

.fi6w1c {
  max-width: 360px;
  margin: 18px 0 20px;
  font-size: 14px;
  line-height: 1.7;
  color: var(--night-muted);
}

.fcr3x7 {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 10px 16px 10px 12px;
  border: 1px solid var(--night-rule);
}

.fcs8k1 {
  color: var(--hl);
}

.fct5q2 {
  display: flex;
  flex-direction: column;
}

.fcu9m4 {
  font-size: 14px;
  color: var(--paper);
}

.fcv2h6 {
  font-family: var(--f-mono);
  font-size: 11px;
  color: var(--night-muted);
}

.ffh4c9 {
  margin-bottom: 16px;
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 11.5px;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--hl);
}

.ffl6v3 {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
}

.ffa1w8,
.ffb7n2 {
  font-size: 14.5px;
  color: var(--night-text);
  transition: color 0.2s ease;
}

.ffb7n2 {
  padding: 0;
  border: 0;
  background: none;
  text-align: left;
  cursor: pointer;
}

.ffa1w8:hover,
.ffb7n2:hover {
  color: var(--hl);
}

.fd8w4v {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid var(--night-rule);
}

.fdc3k6 {
  padding: 28px 28px 28px 0;
}

.fdc3k6 + .fdc3k6 {
  padding-left: 28px;
  border-left: 1px solid var(--night-rule);
}

.fdh7p1 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--f-serif);
  font-weight: 600;
  font-size: 18px;
  line-height: 1.25;
  color: var(--paper);
}

.fdi2x9 {
  flex-shrink: 0;
  color: var(--hl);
}

.fdt5m8 {
  margin-top: 12px;
  font-size: 12.5px;
  line-height: 1.7;
  color: var(--night-muted);
}

.fbt4z1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 24px;
  padding: 20px 0 30px;
  border-top: 1px solid var(--night-rule);
}

.fbc8r3 {
  font-family: var(--f-mono);
  font-size: 12px;
  color: var(--night-muted);
}

.fbm2w7 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  color: var(--night-muted);
}

.fbb5k9 {
  flex-shrink: 0;
  padding: 3px 7px;
  background: var(--warm);
  color: var(--ink);
  font-family: var(--f-mono);
  font-size: 11px;
}

.av3q8k {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  overflow-y: auto;
  background: rgba(21, 18, 14, 0.78);
}

.aw9t4b {
  width: 100%;
  max-width: 480px;
  margin: auto;
  padding: 42px 38px 30px;
  border: 1px solid var(--ink);
  background: var(--paper);
  box-shadow: 10px 10px 0 var(--acc);
  text-align: center;
}

.ab9z0q .aw9t4b {
  box-shadow: 10px 10px 0 var(--warm);
}

.ai7m3c,
.ak2w7d {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 86px;
  height: 86px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--hl);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 30px;
}

.ak2w7d {
  background: var(--warm);
}

.ah4v8r {
  margin-top: 20px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 32px;
  line-height: 1.1;
  letter-spacing: -0.02em;
}

.ad6k1z {
  margin-top: 12px;
  font-size: 15.5px;
  line-height: 1.65;
  color: var(--ink-2);
}

.ab1r7n {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 26px;
}

.ay5c2h,
.an8f4j {
  min-height: 52px;
  padding: 12px 20px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-weight: 700;
  font-size: 15.5px;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.ay5c2h {
  background: var(--ink);
  color: var(--paper);
}

.ay5c2h:hover {
  background: var(--acc);
  border-color: var(--acc);
}

.an8f4j {
  background: transparent;
  color: var(--ink);
}

.an8f4j:hover {
  background: var(--paper-3);
}

.af3s9e {
  margin-top: 18px;
  font-size: 12.5px;
  line-height: 1.55;
  color: var(--muted);
}

.ag7b3x {
  margin-top: 16px;
  font-size: 14.5px;
  line-height: 1.65;
}

.ck4m9t {
  position: fixed;
  left: 20px;
  right: 20px;
  bottom: 20px;
  z-index: 90;
}

.cw7r1y {
  max-width: 980px;
  max-height: calc(100vh - 40px);
  margin: 0 auto;
  padding: 22px 24px;
  overflow-y: auto;
  border: 1px solid var(--ink);
  background: var(--paper-2);
  box-shadow: 8px 8px 0 var(--ink);
}

.cx3n8b {
  display: flex;
  align-items: flex-start;
  gap: 16px;
}

.ci9d2k {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--hl);
  color: #c98a2b;
}

.ch6v1q {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 20px;
  line-height: 1.2;
}

.cp2s5x {
  margin-top: 6px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--ink-2);
}

.co8f3h {
  margin-top: 16px;
  border-top: 1px solid var(--ink);
}

.cl1t6w {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 12px 0;
  border-bottom: 1px solid var(--rule);
  cursor: pointer;
}

.cy4e8i {
  display: flex;
  flex-direction: column;
}

.cb7q2s {
  font-weight: 700;
  font-size: 14.5px;
}

.cd1z6r {
  font-size: 13px;
  color: var(--muted);
}

.cs5j9a {
  position: relative;
  flex-shrink: 0;
  width: 48px;
  height: 28px;
  margin: 0;
  border: 1px solid var(--ink);
  border-radius: 999px;
  background: var(--paper-3);
  -webkit-appearance: none;
  appearance: none;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.cs5j9a::before {
  content: "";
  position: absolute;
  top: 3px;
  left: 3px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--ink);
  transition: transform 0.2s ease, background-color 0.2s ease;
}

.cs5j9a:checked {
  background: var(--acc);
  border-color: var(--acc);
}

.cs5j9a:checked::before {
  background: #fff;
  transform: translateX(20px);
}

.cs5j9a:disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.cq9p4e {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  margin-top: 18px;
}

.cg2w8n {
  margin-right: auto;
  padding: 6px 0;
  border: 0;
  border-bottom: 2px solid var(--ink);
  background: none;
  color: var(--ink);
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
}

.cg2w8n:hover {
  color: var(--acc);
  border-color: var(--acc);
}

.cr4k7v,
.ca6m1b {
  min-height: 46px;
  padding: 10px 22px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-weight: 700;
  font-size: 14.5px;
  cursor: pointer;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.cr4k7v {
  background: transparent;
  color: var(--ink);
}

.cr4k7v:hover {
  background: var(--paper-3);
}

.ca6m1b {
  background: var(--ink);
  color: var(--paper);
}

.ca6m1b:hover {
  background: var(--acc);
  border-color: var(--acc);
}

.ab2k9s + .lg7q2n {
  padding-top: 0;
}

.tm5k2w {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid var(--ink);
  list-style: none;
}

.tc8r1n {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 30px 26px 0;
  border-left: 1px solid var(--rule);
}

.tc8r1n:first-child {
  padding-left: 0;
  border-left: 0;
}

.ta3v7x {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 76px;
  height: 76px;
  border: 1px solid var(--ink);
  border-radius: 50%;
  background: var(--ink);
  color: var(--hl);
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 26px;
  letter-spacing: -0.02em;
}

.tc8r1n:nth-child(2) .ta3v7x {
  background: var(--acc);
  border-color: var(--acc);
  color: #fff;
}

.tc8r1n:nth-child(3) .ta3v7x {
  background: var(--hl);
  color: var(--ink);
}

.tc8r1n:nth-child(4) .ta3v7x {
  background: var(--warm);
  color: var(--ink);
}

.tn6h2q {
  margin-top: 20px;
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 22px;
  line-height: 1.2;
}

.tr1m9e {
  margin-top: 6px;
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--acc);
}

.tb4w8s {
  margin: 14px 0 18px;
  font-size: 15px;
  line-height: 1.65;
  color: var(--ink-2);
}

.tt2j5c {
  margin-top: auto;
  padding: 3px 10px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.fm2k7q {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 38px 38px 34px;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.fp8w3m {
  margin-top: -8px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--muted);
}

.fr4g7k {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.fg1x9d {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}

.fl6b3s {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 10px;
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ink);
}

.fi7m4c {
  width: 100%;
  min-height: 52px;
  padding: 13px 16px;
  border: 1px solid var(--ink);
  border-radius: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--f-sans);
  font-size: 16px;
  line-height: 1.4;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
  -webkit-appearance: none;
  appearance: none;
}

.fi7m4c::placeholder {
  color: #9a9084;
}

.fi7m4c:focus {
  outline: none;
  background: #fff;
  box-shadow: 4px 4px 0 var(--acc);
}

.fi7m4c[aria-invalid="true"] {
  border-color: var(--warm);
  box-shadow: 4px 4px 0 var(--warm);
}

.fs9q2v {
  padding-right: 44px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  background-image: linear-gradient(45deg, transparent 50%, var(--ink) 50%), linear-gradient(135deg, var(--ink) 50%, transparent 50%);
  background-position: calc(100% - 22px) 50%, calc(100% - 16px) 50%;
  background-size: 6px 6px;
  background-repeat: no-repeat;
  cursor: pointer;
}

.fx2h6n {
  min-height: 170px;
  resize: vertical;
}

.fe3v6w {
  font-size: 13.5px;
  font-weight: 600;
  line-height: 1.45;
  color: #b8350f;
}

.fe3v6w::before {
  content: "! ";
  font-family: var(--f-mono);
}

.fc5n3j {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  font-size: 14.5px;
  line-height: 1.55;
  color: var(--ink-2);
}

.fk9r2b {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  margin-top: 1px;
  accent-color: var(--acc);
  cursor: pointer;
}

.fk9r2b[aria-invalid="true"] {
  outline: 2px solid var(--warm);
  outline-offset: 2px;
}

.fc5n3j label {
  cursor: pointer;
}

.fb7d4p {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 20px;
  padding-top: 6px;
}

.fz1q8m {
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.fy4s7t:empty {
  display: none;
}

.fy4s7t {
  padding: 14px 18px;
  border: 1px solid var(--ink);
  font-size: 14.5px;
  line-height: 1.55;
}

.fy3o8r {
  background: var(--hl);
}

.fy9e2k {
  background: #ffe1d6;
  border-color: var(--warm);
}

.cq6w1d {
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
}

.mp4z8h {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 300px;
  padding: 24px 16px 16px;
  border: 1px solid var(--ink);
  background-color: var(--paper-3);
  background-image: linear-gradient(var(--rule) 1px, transparent 1px), linear-gradient(90deg, var(--rule) 1px, transparent 1px);
  background-size: 28px 28px;
}

.mp2v6n {
  flex: 1;
  width: min(70%, 220px);
  height: auto;
  max-height: 220px;
  margin: auto;
}

.mp2v6n path,
.mp2v6n ellipse {
  fill: var(--paper-2);
  stroke: var(--ink);
  stroke-width: 1.4;
  stroke-linejoin: round;
}

.mp9r4k {
  fill: var(--acc);
}

.mp8d1s {
  fill: none;
  stroke: var(--acc);
  stroke-width: 1.4;
  stroke-dasharray: 3 3;
}

.mp7c2e {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 16px;
  border: 1px solid var(--ink);
  background: var(--paper);
}

.mp1k9w {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 18px;
  line-height: 1.2;
}

.mp5t3x {
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--muted);
}

.fv3b8q {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
  align-items: start;
}

.cg2h8x {
  display: none;
  margin-bottom: 10px;
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--acc);
}

.cx6p3t {
  overflow-x: auto;
  border: 1px solid var(--ink);
  background: var(--paper-2);
  -webkit-overflow-scrolling: touch;
}

.cx6p3t:focus-visible {
  outline: 3px solid var(--acc);
  outline-offset: 3px;
}

.cy2m8k {
  width: 100%;
  min-width: 1080px;
  border-collapse: collapse;
  font-size: 14.5px;
}

.cz5h1w {
  padding: 14px 20px;
  border-bottom: 1px solid var(--ink);
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
  color: var(--muted);
}

.cy2m8k thead th {
  padding: 14px 16px;
  border-bottom: 1px solid var(--ink);
  background: var(--ink);
  color: var(--paper);
  font-family: var(--f-mono);
  font-weight: 500;
  font-size: 11.5px;
  letter-spacing: 0.08em;
  text-align: left;
  text-transform: uppercase;
  white-space: nowrap;
}

.cy2m8k tbody th,
.cy2m8k td {
  padding: 16px;
  border-bottom: 1px solid var(--rule);
  text-align: left;
  vertical-align: middle;
}

.cy2m8k tbody tr:last-child th,
.cy2m8k tbody tr:last-child td {
  border-bottom: 0;
}

.cy2m8k tbody tr:first-child {
  background: rgba(220, 255, 74, 0.28);
}

.cy2m8k tbody th {
  position: sticky;
  left: 0;
  z-index: 1;
  background: var(--paper-2);
  font-weight: 700;
}

.cy2m8k tbody tr:first-child th {
  background: #f1f6c9;
}

.cw1d7q {
  display: flex;
  align-items: center;
  gap: 12px;
  white-space: nowrap;
}

.cv8n2s {
  width: 72px;
  height: 26px;
  object-fit: contain;
}

.cu3r6b {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 22px;
}

.cb9e4h {
  display: block;
  font-weight: 700;
  white-space: nowrap;
}

.cs6y2l {
  display: block;
  margin-top: 2px;
  font-size: 13px;
  color: var(--muted);
}

.ck3y7z,
.cn2x5r {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  font-weight: 700;
}

.ck3y7z {
  background: var(--ink);
  color: var(--hl);
}

.cn2x5r {
  border: 1px solid var(--rule);
  color: var(--muted);
}

.ct7k4a {
  min-height: 44px;
  padding: 10px 18px;
  font-size: 14px;
}

.cj8w4v {
  margin-top: 16px;
  font-size: 13px;
  line-height: 1.6;
  color: var(--muted);
}

.rv5k2m {
  display: grid;
  grid-template-columns: 320px minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

.rm8t3c {
  position: sticky;
  top: 24px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 32px 30px;
  background: var(--ink);
  color: var(--night-text);
}

.rm1a6w {
  font-family: var(--f-serif);
  font-weight: 800;
  font-size: 76px;
  line-height: 0.95;
  color: var(--paper);
}

.rm4d9x {
  margin-left: 4px;
  font-size: 26px;
  color: var(--night-muted);
}

.rm5o2v {
  position: relative;
  display: inline-block;
  margin-top: 14px;
  line-height: 0;
}

.rm3e9t,
.rm9k1p {
  display: flex;
  gap: 3px;
  white-space: nowrap;
}

.rm3e9t svg {
  fill: rgba(255, 255, 255, 0.18);
}

.rm9k1p {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
}

.rm9k1p svg {
  flex-shrink: 0;
  fill: var(--hl);
}

.rm7q2b {
  margin-top: 12px;
  font-size: 14px;
  color: var(--night-muted);
}

.rd2f8j {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
  margin: 24px 0 28px;
  padding-top: 22px;
  border-top: 1px solid var(--night-rule);
  list-style: none;
}

.rd2f8j li {
  display: grid;
  grid-template-columns: 74px minmax(0, 1fr) 18px;
  align-items: center;
  gap: 12px;
  font-family: var(--f-mono);
  font-size: 12px;
}

.rd6b1n {
  height: 8px;
  background: rgba(255, 255, 255, 0.12);
}

.rd6b1n span {
  display: block;
  height: 100%;
  background: var(--hl);
}

.rd4c8e {
  text-align: right;
}

.rm8t3c .cb3o6v {
  background: var(--hl);
  border-color: var(--hl);
  color: var(--ink);
}

.rm8t3c .cb3o6v:hover {
  background: var(--paper);
  border-color: var(--paper);
}

.rl3w9e {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.rc6n2t {
  display: flex;
  flex-direction: column;
  padding: 26px 26px 22px;
  border: 1px solid var(--ink);
  background: var(--paper-2);
}

.rc9h4k {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.rr4s8n {
  display: inline-flex;
  gap: 2px;
  line-height: 0;
}

.rr1f6k {
  fill: var(--acc);
}

.rr7e2q {
  fill: rgba(21, 18, 14, 0.15);
}

.rc2o7p {
  padding: 3px 10px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-family: var(--f-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.rc5b8m {
  flex: 1;
  margin-top: 16px;
  font-family: var(--f-serif);
  font-weight: 600;
  font-size: 18px;
  line-height: 1.5;
}

.rc5b8m p::before {
  content: "« ";
}

.rc5b8m p::after {
  content: " »";
}

.rc1x3v {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--rule);
}

.rc8a5d {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--paper-3);
  font-family: var(--f-mono);
  font-size: 13px;
}

.rc1x3v strong {
  display: block;
  font-size: 15px;
}

.rc1x3v strong + span {
  display: block;
  font-size: 13px;
  color: var(--muted);
}

.qs7f2k {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 36px;
}

.qs3w9n {
  position: relative;
}

.qs3w9n svg {
  position: absolute;
  top: 50%;
  left: 16px;
  transform: translateY(-50%);
  color: var(--muted);
  pointer-events: none;
}

.qi5r1t {
  padding-left: 48px;
}

.qc6t8y {
  font-family: var(--f-mono);
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--muted);
}

.qc6t8y:empty {
  display: none;
}

.qe2n5v {
  margin-bottom: 36px;
  padding: 22px 24px;
  border: 1px dashed var(--ink);
  font-size: 15px;
  line-height: 1.6;
}

.co4v8n {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.6fr);
  gap: 22px 48px;
  padding: 36px 38px;
  border: 1px solid var(--ink);
  background: var(--paper-2);
  box-shadow: 8px 8px 0 var(--ink);
}

.co7d2s {
  margin-top: 12px;
  font-size: 15px;
  line-height: 1.6;
  color: var(--muted);
}

.co3k9q {
  grid-row: span 2;
  list-style: none;
}

.co6m1r {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 18px 0;
  border-top: 1px solid var(--rule);
}

.co6m1r:first-child {
  padding-top: 0;
  border-top: 0;
}

.co6m1r .vt9p4w {
  font-size: 19px;
}

.co6m1r .vx3m6a {
  margin-top: 6px;
  font-size: 14.5px;
}

.co2s5x {
  flex-shrink: 0;
  min-width: min(128px, 100%);
  padding: 7px 14px;
  border: 1px solid var(--ink);
  border-radius: 999px;
  font-family: var(--f-mono);
  font-size: 11.5px;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}

.co8a4f {
  background: var(--hl);
}

.co5n7w {
  background: transparent;
  color: var(--muted);
  border-color: var(--rule);
}

.co1u6z {
  border-style: dashed;
  color: var(--muted);
}

.co9w2f {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  align-self: end;
}

@media (max-width: 1240px) {
  .rw2h6j {
    grid-template-columns: 60px 150px minmax(0, 1fr) 210px 96px 190px;
    gap: 20px;
    padding: 24px 22px;
  }

  .rk7p4s {
    font-size: 46px;
  }
}

@media (max-width: 1180px) {
  .g4ow1j {
    display: inline-flex;
  }

  .l3bt0n {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: none;
    background: var(--paper);
    border-bottom: 3px solid var(--ink);
    box-shadow: 0 18px 30px -18px rgba(21, 18, 14, 0.45);
  }

  .l3bt0n.ux4o7r {
    display: block;
  }

  .w5ez2k {
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    width: 100%;
    max-width: 1240px;
    margin: 0 auto;
    padding: 8px 28px 18px;
  }

  .e8jm4s + .e8jm4s {
    border-top: 1px solid var(--rule);
  }

  .f1nh6o {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 14px 0;
    font-family: var(--f-serif);
    font-weight: 600;
    font-size: 20px;
  }

  .f1nh6o::before {
    content: "→";
    order: 2;
    font-family: var(--f-sans);
    font-size: 16px;
    color: var(--muted);
  }

  .f1nh6o::after {
    display: none;
  }

  .q0ru3l {
    background: none;
    color: var(--acc);
  }

  .q0ru3l::before {
    color: var(--acc);
  }

  .rw2h6j {
    grid-template-columns: 58px 150px minmax(0, 1fr) 100px;
    grid-template-areas:
      "rank logo name score"
      "rank bonus bonus cta";
    row-gap: 18px;
  }

  .bn5s1o {
    padding: 16px 0 0;
    border-left: 0;
    border-top: 1px solid var(--rule);
  }

  .ct8a1p {
    align-self: end;
    min-width: min(200px, 100%);
  }
}

@media (max-width: 1024px) {
  .hg2w7s {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .hs3k8v {
    max-width: 520px;
  }

  .av7n3c,
  .st6k1q {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 30px;
  }

  .vc2t8e:nth-child(odd),
  .si3m8w:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }

  .fg1n6t {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .fe5j8v {
    grid-column: 1 / -1;
  }

  .cg6t1p {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .ctc8n5:nth-child(odd) {
    border-left: 0;
  }

  .ctc8n5:nth-child(n + 3) {
    border-top: 1px solid var(--ink);
  }

  .pg8m4r,
  .bw3n8t {
    grid-template-columns: minmax(0, 1fr);
  }

  .bz7f4c {
    grid-template-columns: minmax(0, 1fr);
  }

  .bz7f4c .bh2k7p {
    min-height: 170px;
    border-right: 0;
    border-bottom: 1px solid var(--ink);
  }

  .rb9k2x {
    grid-template-columns: minmax(0, 1fr);
  }

  .ct2r8k,
  .ai5r8t {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 860px) {
  .hs3k8v {
    display: none;
  }

  .hx2n7w {
    grid-template-columns: minmax(0, 1fr);
  }

  .ty9k1d {
    grid-row: auto;
  }

  .sb4r8m {
    margin-top: 14px;
  }

  .mu7z2q {
    grid-column: 1;
  }

  .gt5w8q {
    grid-template-columns: minmax(0, 1fr);
  }

  .gc3n7r {
    border-left: 0;
  }

  .gc3n7r + .gc3n7r {
    border-top: 1px solid var(--ink);
  }

  .bg8r2t {
    grid-template-columns: minmax(0, 1fr);
  }

  .bt4k9n:nth-child(2) {
    border-top-color: var(--rule);
  }

  .lw3e8r {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }

  .la5t1k {
    position: static;
  }

  .ld6v3h {
    padding: 32px 26px 34px;
  }

  .fr7m2w {
    grid-template-columns: minmax(0, 1fr);
  }

  .fd8w4v {
    grid-template-columns: minmax(0, 1fr);
  }

  .fdc3k6,
  .fdc3k6 + .fdc3k6 {
    padding: 22px 0;
    border-left: 0;
  }

  .fdc3k6 + .fdc3k6 {
    border-top: 1px solid var(--night-rule);
  }

  .cm3x7v {
    flex-direction: column;
    align-items: flex-start;
    padding: 34px 30px;
  }

  .ck4m9t {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
}

@media (max-width: 640px) {
  .c3xf9a {
    padding: 0 18px;
  }

  .x3qm7n {
    font-size: clamp(30px, 10vw, 40px);
  }

  .pt3h8d {
    font-size: clamp(28px, 9vw, 36px);
  }

  .n5pl7e {
    min-height: 72px;
  }

  .t1gz8y {
    font-size: 23px;
  }

  .i9ds4q svg {
    width: 38px;
    height: 38px;
  }

  .w5ez2k {
    padding: 4px 18px 14px;
  }

  .y7dc1b {
    padding: 22px 0 34px;
  }

  .hm4e8c span:nth-child(3) {
    display: none;
  }

  .hg2w7s {
    margin-top: 24px;
  }

  .k1zb9w {
    font-size: 16.5px;
  }

  .hc8t3v .cb3o6v {
    width: 100%;
  }

  .r9vb3m {
    align-items: flex-start;
    gap: 14px;
  }

  .z4hn8p {
    width: 40px;
    height: 40px;
    font-size: 13.5px;
  }

  .u2cj6x {
    font-size: 13px;
  }

  .ab2k9s {
    padding: 56px 0;
  }

  .qm4v8z {
    padding: 48px 0 56px;
  }

  .rw2h6j {
    grid-template-columns: 44px minmax(0, 1fr) auto;
    grid-template-areas:
      "rank logo logo"
      "name name score"
      "bonus bonus bonus"
      "cta cta cta";
    gap: 16px;
    padding: 24px 18px 20px;
  }

  .rk7p4s {
    font-size: 38px;
    align-self: center;
  }

  .lg1v9e {
    height: 70px;
  }

  .nh3x7a {
    font-size: 22px;
  }

  .sc6f2l {
    align-items: flex-end;
  }

  .sn1t8h {
    font-size: 28px;
  }

  .ba7w3r {
    font-size: 24px;
  }

  .ct8a1p {
    min-width: 0;
  }

  .rb5m0x {
    left: 18px;
  }

  .dc7l2e {
    padding: 12px 18px 14px;
  }

  .dt1n5q {
    font-size: 11.5px;
  }

  .av7n3c,
  .st6k1q {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }

  .vc2t8e,
  .si3m8w {
    padding: 22px 0;
    border-left: 0;
  }

  .vc2t8e + .vc2t8e,
  .si3m8w + .si3m8w {
    border-top: 1px solid var(--rule);
  }

  .vc2t8e::before {
    font-size: 34px;
  }

  .si3m8w {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr);
    column-gap: 14px;
  }

  .sn9c4h {
    grid-row: span 2;
    align-self: start;
    font-size: 46px;
    text-align: center;
  }

  .sx2t7e {
    margin-top: 2px;
  }

  .gc3n7r {
    padding: 26px 20px;
  }

  .pq3m7d {
    padding: 40px 6px;
  }

  .fs1k5t {
    padding: 18px 52px 18px 0;
    font-size: 18px;
  }

  .fa9r3m {
    padding-right: 0;
  }

  .ms8e2c {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 6px 16px;
  }

  .mn1w7k {
    grid-row: span 2;
    font-size: 36px;
  }

  .mw5j4t {
    grid-column: 2;
    justify-self: start;
    font-size: 22px;
  }

  .an3h7z {
    font-size: 36px;
  }

  .ac9e4p {
    padding: 20px 16px;
  }

  .ce7m4q,
  .ci4v9b {
    padding: 28px 22px;
  }

  .cea6p2 .cb3o6v,
  .cea6p2 .cr4k7v {
    width: 100%;
  }

  .cg6t1p {
    grid-template-columns: minmax(0, 1fr);
  }

  .ctc8n5 {
    border-left: 0;
  }

  .ctc8n5 + .ctc8n5 {
    border-top: 1px solid var(--ink);
  }

  .cn7d3f {
    flex-direction: column;
    padding: 22px 20px;
  }

  .ld6v3h {
    padding: 26px 18px 28px;
  }

  .ld6v3h h2 {
    font-size: 23px;
  }

  .qh8s2d {
    font-size: 25px;
  }

  .pe2r8u {
    flex-wrap: wrap;
    padding: 20px 18px 0;
  }

  .pe2r8u .lg1v9e {
    width: 100%;
  }

  .ps4h7c {
    align-items: flex-end;
  }

  .pi9r6t {
    grid-template-columns: minmax(0, 1fr);
    margin: 18px 18px 0;
  }

  .pm6c9y {
    flex-direction: column-reverse;
    align-items: stretch;
    padding: 18px;
    text-align: center;
  }

  .pr2e7k {
    align-self: center;
  }

  .pd4z8q {
    padding: 12px 18px 14px;
  }

  .rh4t1q,
  .rb9k2x,
  .rp3k8s {
    padding-left: 18px;
    padding-right: 18px;
  }

  .rh4t1q .lg1v9e {
    width: 100%;
  }

  .rn6p8z {
    font-size: 26px;
  }

  .rs3c7m {
    width: 78px;
    height: 78px;
    font-size: 24px;
  }

  .rp3k8s {
    grid-template-columns: minmax(0, 1fr);
  }

  .rf2b6y {
    flex-direction: column;
    align-items: stretch;
    padding: 22px 18px;
  }

  .rf2b6y .bn5s1o {
    max-width: none;
  }

  .bh2k7p,
  .bb5v1s {
    padding-left: 18px;
    padding-right: 18px;
  }

  .fq3k8z {
    padding-top: 44px;
  }

  .fa4h9p,
  .fk1t5r {
    padding: 24px 20px;
  }

  .fa4h9p {
    flex-direction: column;
    gap: 16px;
  }

  .fb6c1x {
    width: 56px;
    height: 56px;
    font-size: 18px;
  }

  .fh5q7y {
    font-size: 25px;
  }

  .fn2y8u {
    font-size: 24px;
  }

  .fx4m8b {
    height: 58px;
    padding: 8px 12px;
  }

  .fy7c3n {
    max-height: 40px;
  }

  .fg1n6t {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 32px 20px;
  }

  .aw9t4b {
    padding: 32px 22px 24px;
    box-shadow: 6px 6px 0 var(--acc);
  }

  .ab9z0q .aw9t4b {
    box-shadow: 6px 6px 0 var(--warm);
  }

  .ah4v8r {
    font-size: 27px;
  }

  .cw7r1y {
    padding: 18px;
    box-shadow: 5px 5px 0 var(--ink);
  }

  .cq9p4e {
    justify-content: stretch;
  }

  .cg2w8n {
    width: 100%;
    margin-right: 0;
    text-align: center;
    border-bottom: 0;
    text-decoration: underline;
  }

  .cr4k7v,
  .ca6m1b {
    flex: 1 1 140px;
  }
}

@media (max-width: 380px) {
  .c3xf9a {
    padding: 0 14px;
  }

  .t1gz8y {
    font-size: 20px;
  }

  .b6rk2v {
    gap: 8px;
  }

  .i9ds4q svg {
    width: 34px;
    height: 34px;
  }

  .fg1n6t {
    grid-template-columns: minmax(0, 1fr);
  }

  .ba7w3r {
    font-size: 21px;
  }

  .x3qm7n {
    font-size: clamp(28px, 9.6vw, 36px);
  }
}

@media (max-width: 1180px) {
  .rv5k2m {
    grid-template-columns: minmax(0, 1fr);
  }

  .rm8t3c {
    position: static;
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    column-gap: 36px;
    align-items: center;
  }

  .rm1a6w,
  .rm5o2v,
  .rm7q2b {
    grid-column: 1;
  }

  .rd2f8j {
    grid-column: 2;
    grid-row: 1 / span 4;
    margin: 0;
    padding: 0 0 0 36px;
    border-top: 0;
    border-left: 1px solid var(--night-rule);
  }

  .rm8t3c .cb3o6v {
    grid-column: 1;
    margin-top: 20px;
  }

  .co4v8n {
    grid-template-columns: minmax(0, 1fr);
  }

  .co3k9q {
    grid-row: auto;
  }
}

@media (max-width: 1024px) {
  .tm5k2w {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 34px;
  }

  .tc8r1n:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }

  .fv3b8q {
    grid-template-columns: minmax(0, 1fr);
  }

  .mp4z8h {
    min-height: 340px;
  }
}

@media (max-width: 860px) {
  .rl3w9e {
    grid-template-columns: minmax(0, 1fr);
  }

  .cg2h8x {
    display: block;
  }
}

@media (max-width: 640px) {
  .tm5k2w {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 0;
  }

  .tc8r1n,
  .tc8r1n:nth-child(odd) {
    padding: 26px 0;
    border-left: 0;
    border-top: 1px solid var(--rule);
  }

  .tc8r1n:first-child {
    border-top: 0;
  }

  .fm2k7q {
    padding: 26px 20px 24px;
  }

  .fr4g7k {
    grid-template-columns: minmax(0, 1fr);
  }

  .fb7d4p .cb3o6v {
    width: 100%;
  }

  .mp4z8h {
    min-height: 300px;
  }

  .rm8t3c {
    display: flex;
    padding: 28px 22px;
  }

  .rd2f8j {
    margin: 22px 0 24px;
    padding: 20px 0 0;
    border-left: 0;
    border-top: 1px solid var(--night-rule);
  }

  .rm8t3c .cb3o6v {
    width: 100%;
    margin-top: 0;
  }

  .rc6n2t {
    padding: 22px 20px 18px;
  }

  .rc5b8m {
    font-size: 17px;
  }

  .co4v8n {
    padding: 26px 20px;
    box-shadow: 5px 5px 0 var(--ink);
  }

  .co6m1r {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }

  .co9w2f .cb3o6v {
    width: 100%;
  }

  .bq6t1w {
    display: block;
    margin: 4px 0 0;
  }

  .fv9k2a {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    gap: 10px;
  }

  .fx4m8b {
    width: 100%;
  }

  .ck4m9t {
    left: 10px;
    right: 10px;
    bottom: 10px;
  }

  .cw7r1y {
    padding: 16px 16px 14px;
  }

  .ci9d2k {
    display: none;
  }

  .ch6v1q {
    font-size: 18px;
  }

  .cp2s5x {
    font-size: 13.5px;
    line-height: 1.5;
  }

  .co8f3h {
    margin-top: 12px;
  }

  .cl1t6w {
    padding: 10px 0;
  }

  .cq9p4e {
    margin-top: 12px;
    gap: 8px;
  }

  .cg2w8n {
    order: 3;
    padding: 2px 0;
  }

  .cr4k7v,
  .ca6m1b {
    min-height: 44px;
    padding: 8px 14px;
    white-space: nowrap;
  }
}

@media (max-height: 720px) {
  .aw9t4b {
    padding: 24px 20px 20px;
  }

  .ai7m3c,
  .ak2w7d {
    width: 60px;
    height: 60px;
    font-size: 22px;
  }

  .ak2w7d svg {
    width: 28px;
    height: 28px;
  }

  .ah4v8r {
    margin-top: 12px;
    font-size: 24px;
  }

  .ad6k1z {
    margin-top: 8px;
    font-size: 14.5px;
    line-height: 1.55;
  }

  .ab1r7n {
    margin-top: 18px;
  }

  .ay5c2h,
  .an8f4j {
    min-height: 48px;
    padding: 10px 16px;
    font-size: 15px;
  }

  .af3s9e {
    margin-top: 12px;
    font-size: 12px;
  }

  .cy2m8k {
    font-size: 14px;
  }

  .cy2m8k tbody th,
  .cy2m8k td {
    padding: 13px 12px;
  }
}
