/* ==========================================================================
   Design tokens & layout
   ========================================================================== */
.wr7 { padding: 0 1.25rem 0 1.25rem; margin: 0 auto 0 auto; max-width: 77.625rem }
.hd7 { position: sticky }
.hd7 { border-bottom: 0.063rem solid var(--k-line); z-index: 20; top: 0; background: linear-gradient(var(--k-bg), var(--k-card)); backdrop-filter: blur(0.563rem) }
.hr21 { justify-content: space-between; display: flex; min-height: 3.75rem; align-items: center }
.hr21 { gap: 1.188rem; flex-wrap: wrap }
.brd4 { font-weight: bold; font-family: 'Inconsolata', monospace }
.brd4 { font-size: 1.1rem; display: inline-flex; gap: 0.625rem; color: var(--k-fg); align-items: center; text-decoration-line: none; letter-spacing: 0.02em }
.brd4 svg { width: 1.625rem; height: 1.625rem }
.nav7 { gap: 0.25rem; display: flex }
.nav7 a { padding: 0.438rem 0.813rem 0.438rem 0.813rem; text-decoration-line: none; color: var(--k-muted) }
.nav7 a { border-radius: 0.125rem; font-family: 'Inconsolata', monospace; font-size: .9em }
.nav7 a:hover { color: var(--k-fg); background-color: var(--k-soft) }
.hr4 { border-bottom: 0.063rem solid var(--k-line); padding: 4.5rem 0 2.938rem 0; background-color: var(--k-bg) }
.hr4 h1 { max-width: 51.25rem; margin: 0.375rem 0 0.875rem 0; font-size: 2.9rem }
.hr4 p { max-width: 42.5rem; font-size: 1.15em; color: var(--k-muted) }
.eb0 { font-family: 'Inconsolata', monospace }
.ct7 { padding: 2.375rem 0 4.625rem 0 }
.ph6 h1 { font-size: 2.4rem; max-width: 56.25rem }
.tg4 { color: var(--k-muted); font-size: 1.1em; margin-bottom: 0.938rem }
.im3 { margin: 0.438rem 0 2.063rem 0 }
.im3 img { width: 100% }
.im3 img { box-shadow: 0 0 0 0.063rem var(--k-line), 0 1.25rem 3.75rem rgba(0,0,0,.45); border: 0.063rem solid var(--k-line); border-radius: 0.125rem }
.cl2 { grid-template-columns: minmax(0,1fr) 16.25rem; display: grid }
.cl2 { align-items: start; gap: 3.25rem }
.as2 { position: sticky; top: 5rem }
.ol24 strong,.ol24 summary { font-family: 'Inconsolata', monospace; text-transform: uppercase }
.ol24 strong,.ol24 summary { color: var(--k-accent); letter-spacing: 0.08em; font-size: .76em }
.ol24 ul,.ol24 ol { margin: 0.625rem 0 0 0; border-left: 0.063rem solid var(--k-line); padding: 0; list-style-type: none }
.ol24 a { padding: 0.313rem 0.875rem 0.313rem 0.875rem; display: block; color: var(--k-muted); text-decoration: none; font-size: .9em }
.ol24 a { border-left: 0.125rem solid transparent; margin-left: -1px }
.ar5>.ol24 { margin: 0 0 1.563rem 0 }
.ar5>.ol24 { padding: 0.875rem 1rem 0.875rem; background-color: var(--k-card); outline: 0.063rem solid rgb(38 35 41); border-radius: 0.125rem; outline-offset: -1px }
.ar5>.ol24 a { padding: 0; border: 0; display: inline }
.ar5>.ol24 a { margin: 0; color: var(--k-fg) }
.ar5>.ol24 ul { padding-left: 1.32em; border: 0; list-style: decimal }
.ar5>.ol24 ol { list-style: decimal; border: 0; padding-left: 1.32em }
.ol24 a:hover { border-color: var(--k-primary); color: var(--k-primary) }
.gr6 .it2 { color: inherit; background-color: var(--k-card) }
.gr6 .it2 { outline: 0.063rem solid rgb(38 35 41); transition: border-color .15s }
.gr6 .it2 { outline-offset: -1px; text-decoration: none }
.gr6 .it2:hover { border-color: var(--k-primary) }
[data-cmp="tx3"] pre,[data-cmp="tx3"] code { font-family: 'Inconsolata', monospace }
.fo3 { color: var(--k-muted); font-size: .9em; padding: 2.438rem 0 0 0; border-top: 0.063rem solid var(--k-line) }
.fr2 { flex-wrap: wrap; justify-content: space-between; gap: 1.313rem; padding-bottom: 1.625rem; display: flex }
.fr2 nav a { margin-left: 1.063rem; text-decoration: none; color: var(--k-muted) }
.fl7 { padding: 0.875rem 1.5rem 0.875rem 1.5rem; border-top: 0.063rem solid var(--k-line) }
.fl7 { font-size: .8em; font-family: 'Inconsolata', monospace }
.nav7 ul { display: contents; margin: 0 }
.nav7 li { display: contents; margin: 0 }
.nav7 ul { padding: 0; list-style-type: none }
.nav7 li { list-style-type: none; padding: 0 }
.nvr5 { padding: 0.25rem 0 0.25rem 0; border-top: 0.063rem solid var(--k-line) }
.nt8[open]~.nvr5 .nav7 { display: flex }
.cl2.cls0 { grid-template-columns: 16.25rem minmax(0,1fr) }
.tcr6 { font-size: .92em; line-height: 1.9 }
.tcr6 strong { margin-right: 0.313rem }
.ol24 ol li > a { min-height: 0; display: inline }
.ol24 ul li > a { min-height: 0; display: inline }
.tc-3 ol li > a { display: inline; min-height: 0 }
.tc-3 ul li > a { display: inline; min-height: 0 }
.ol24 ol li > a { padding-bottom: 0; padding-top: 0; vertical-align: baseline }
.ol24 ul li > a { padding-bottom: 0; vertical-align: baseline; padding-top: 0 }
.tc-3 ol li > a { vertical-align: baseline; padding-bottom: 0; padding-top: 0 }
.tc-3 ul li > a { padding-top: 0; vertical-align: baseline; padding-bottom: 0 }
.fwr1 { max-width: 77.625rem; margin: 0 auto 0 auto; padding: 0 1.25rem 0 }
.spn1 { align-items: center; width: fit-content; background-color: var(--k-soft); justify-content: center; margin: 0 auto 0; display: flex; padding: 0.5rem; box-sizing: border-box; border: 0.063rem solid var(--k-line); max-width: 100% }
.spn1 { min-width: 0; overflow: visible }
.spn3m { flex-direction: column; display: flex; justify-content: center; align-items: center }
.spn3m { gap: 0.25rem; width: 100%; box-sizing: border-box; max-width: 100%; min-width: 0 }
.spn3m.spn5 { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); display: grid; gap: 0.5rem; align-items: center }
.spn3m.spn5 { min-width: 0; width: 100% }
.spn3u { display: block; max-width: 100%; width: min(29.25rem, 100%); min-width: 0 }
.spn3u { overflow: visible; box-sizing: border-box }
.spn3 { object-position: center; display: block; width: min(29.25rem, 100%); height: auto }
.spn3 { object-fit: contain; box-sizing: border-box }
.spn3 { max-width: 100%; min-width: 0 }
.spn0 { font-size: .72rem; line-height: 1.2; color: inherit; opacity: .75 }
.spn5 .spn0 { grid-column: 1; white-space: nowrap; justify-self: end }
.spn5 .spn3u { grid-column: 2; justify-self: center }
.ttp3 { right: 1rem; background-color: var(--k-primary); height: 2.625rem; position: fixed; color: #111111; bottom: 1rem; border-radius: 0.125rem; width: 2.625rem; display: grid }
.ttp3 { text-decoration: none; box-shadow: 0 0.375rem 1.25rem rgb(242 241 243 / 0.2); place-items: center; z-index: 50 }
.ttp3:hover { color: #111111; background-color: var(--k-primary) }
.tbl5 { margin: 1.24em 0 1.24em; overflow-x: auto }
.tbl5 table { display: table; min-width: 35rem; margin: 0 }
.cls5 { grid-template-columns: repeat(2,1fr); display: grid; gap: 1.563rem }
.cls1 { grid-template-columns: repeat(3,1fr); display: grid; gap: 1.625rem }
.spc5-1 { margin-top: 0.25rem }
.spc5-2 { margin-top: 0.563rem }
.spc5-3 { margin-top: 0.938rem }
.spc5-4 { margin-top: 1.625rem }
.spc5-5 { margin-top: 1.813rem }
::selection { text-shadow: none; color: #111111; background-color: var(--k-primary) }
.drp2::first-letter { color: var(--k-accent) }
.drp2::first-letter { padding: 0.313rem 0.5rem 0 0; font-weight: bold; float: left }
.drp2::first-letter { font-family: 'Inconsolata', monospace; line-height: .8; font-size: 3.2em }
kbd { padding: 0.125rem 0.375rem 0.125rem 0.375rem; font: inherit; background-color: var(--k-card); border: 0.063rem solid var(--k-line); font-size: .85em; border-radius: 0.25rem; border-bottom-width: 0.125rem }
mark { border-radius: 0.125rem; padding: 0 0.188rem 0 }
mark { background-color: rgb(224 99 92 / 0.25); color: inherit }
.tst0 { background-color: var(--k-fg); transform: translateX(-50%); padding: 0.75rem 1.063rem 0.75rem 1.063rem; bottom: 1.5rem; left: 50%; position: fixed; color: var(--k-bg) }
.tst0 { box-shadow: 0 0.625rem 1.875rem rgb(242 241 243 / 0.25); z-index: 90; border-radius: 0.5rem; font-size: .92em }
.tst0[hidden] { display: none }
.lrt2 { margin-bottom: 1.125rem; padding: 1rem 1.188rem 1rem 1.188rem; margin-top: 1.125rem }
.lrt2 { border: 0.063rem solid var(--k-line); background-color: var(--k-card); border-radius: 0.125rem }
.lrt2.lrt6 { border-color: rgb(153 101 236 / 0.35); background-color: rgb(153 101 236 / 0.08) }
.lrt2.lrt4 { border-color: rgb(218 142 11 / 0.35); background-color: rgb(218 142 11 / 0.08) }
.lrt2.lrt4c { background-color: rgb(39 155 87 / 0.08); border-color: rgb(39 155 87 / 0.35) }
.lrt2.lrt2l { border-color: rgb(208 37 51 / 0.35); background-color: rgb(208 37 51 / 0.08) }
.lrt2 p:last-child { margin: 0 }
.tp8 { position: relative; cursor: help; border-bottom: 0.063rem dotted var(--k-muted) }
.tp8::after { position: absolute; left: 50%; content: attr(data-tip); bottom: 125% }
.tp8::after { white-space: nowrap; background-color: var(--k-fg); font-size: .8em; opacity: 0; transition: opacity .15s; border-radius: 0.375rem; padding: 0.313rem 0.563rem 0.313rem; color: var(--k-bg); transform: translateX(-50%); pointer-events: none }
.tp8:hover::after { opacity: 1 }
dialog { max-width: min(35rem,92vw); background-color: var(--k-card) }
dialog { border: 0; padding: 1.75rem; border-radius: 0.125rem }
dialog { box-shadow: 0 1.875rem 5rem rgb(242 241 243 / 0.3); color: var(--k-fg) }
dialog::backdrop { background-color: rgb(0 0 0 / .55) }
