/* Shared first-paint chrome for the website and /docs. */
@font-face{font-family:"STRK20 Shell Mono";src:url('/fonts/GTAmericaMono-Regular.woff2') format('woff2');font-display:swap}
@font-face{font-family:"STRK20 Shell Body";src:url('/fonts/NeueMontreal-Regular.otf') format('opentype');font-display:swap}
:root{--promo-h:40px;--site-nav-h:76px;--site-header-h:calc(var(--promo-h) + var(--site-nav-h));--site-gut:clamp(20px,5vw,72px)}
body{padding-top:var(--site-header-h)!important}
.site-chrome{position:fixed;inset:0 auto auto 0;width:100vw;z-index:100;height:var(--site-header-h);background:#0d0d0d;color:#fafafa;view-transition-name:site-header}
.site-chrome .strk-promo{position:relative;inset:auto;display:flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--promo-h);min-height:var(--promo-h);padding:6px 24px;overflow:hidden;isolation:isolate;text-align:center;color:#fff;text-decoration:none;background:linear-gradient(180deg,#ffffff21,transparent 46%),linear-gradient(180deg,#c53400,#a02a00);border:0;border-bottom:1px solid #0004;box-shadow:inset 0 1px 0 #ffffff29;font:11px/1.35 "STRK20 Shell Body",sans-serif;letter-spacing:.01em}
.site-chrome .strk-promo::before{display:none}
.site-chrome .strk-promo .u{text-decoration:underline;text-underline-offset:2px;font-weight:700;letter-spacing:.04em}
.site-chrome .strk-promo-msg{position:relative;z-index:1;display:inline-block;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s ease}
.site-chrome .strk-promo-msg.is-out{transform:translateX(14px);opacity:0}
.site-chrome .strk-promo-msg.is-in{transform:translateX(-14px);opacity:0;transition:none}
.site-nav{position:relative;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;height:var(--site-nav-h);padding:0 var(--site-gut);background:#0d0d0d;border-bottom:1px solid #262626;color:#fafafa}
.site-nav *{box-sizing:border-box}
.site-brand{position:relative;flex:none}
.site-brand-toggle{display:flex;align-items:center;width:96px;height:42px;padding:0;border:0;background:transparent;cursor:pointer}
.site-brand-toggle img{display:block;width:90.4px;height:22px;object-fit:contain}
.site-links{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:clamp(18px,2.2vw,38px)}
.site-links>a,.site-links>a:visited{display:flex;align-items:center;justify-content:center;flex:none;height:42px;gap:9px;padding:0;color:#fafafa;text-decoration:none;font:13px/1.6 "STRK20 Shell Mono",monospace;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;transition:color .15s,background .15s}
.site-links>a:hover,.site-links>a[aria-current="page"]{color:#ff956e}
.site-links>a:nth-child(1){width:40px}.site-links>a:nth-child(2){width:32px}.site-links>a:nth-child(3){width:48px}.site-links>a:nth-child(4){width:76px;background:#c53400;color:#fff;border-radius:2px}.site-links>a:nth-child(5){width:40px}.site-links>a:nth-child(6){width:92px}.site-links>a:nth-child(7){width:92px}.site-links>a:nth-child(8){width:110px}
.site-links>a:nth-child(4):hover{background:#a02a00;color:#fff}
.site-hack-dot{width:6px;height:6px;background:#c53400;border-radius:50%;flex:none}
.site-menu-toggle{display:none;align-items:center;justify-content:center;width:42px;height:42px;padding:0;background:transparent;border:1px solid #444;border-radius:6px;color:#fafafa;cursor:pointer}
.site-menu-toggle svg{width:20px;height:20px}
.site-brand-menu{position:absolute;top:100%;left:0;min-width:216px;padding:6px;background:#141414;border:1px solid #262626;border-radius:6px;box-shadow:0 18px 40px #0008;font:13px/1.5 "STRK20 Shell Body",sans-serif}
.site-brand-menu[hidden]{display:none}
.site-brand-menu a,.site-brand-menu a:visited{display:block;padding:10px 12px;color:#fafafa;text-decoration:none;border-radius:3px}
.site-brand-menu a:hover{background:#c5340024}
.site-chrome :focus-visible{outline:2px solid #ff956e;outline-offset:3px}
#root{view-transition-name:site-content}
@view-transition{navigation:auto}
::view-transition-old(root),::view-transition-new(root){animation:none}
::view-transition-group(site-header){animation:none}
::view-transition-old(site-header){animation:none;opacity:0}
::view-transition-new(site-header){animation:none}
::view-transition-old(site-content){animation:site-content-out .12s ease both}
::view-transition-new(site-content){animation:site-content-in .22s ease both}
@keyframes site-content-out{to{opacity:0}}
@keyframes site-content-in{from{opacity:0}to{opacity:1}}
html.site-leaving #root{opacity:0;transition:opacity .12s ease}
html.site-arriving #root.site-ready{animation:site-content-in .22s ease both}
@media(max-width:1100px){.site-menu-toggle{display:flex}.site-links{display:none;position:absolute;left:var(--site-gut);right:var(--site-gut);top:calc(100% + 8px);transform:none;padding:10px;background:#111;border:1px solid #333;border-radius:7px;max-height:calc(100dvh - var(--site-header-h) - 24px);overflow-y:auto;box-shadow:0 16px 40px #0008}.site-links.is-open{display:flex;flex-direction:column;align-items:stretch;gap:2px}.site-links>a:nth-child(n){width:100%;justify-content:flex-start;padding:0 12px}}
@media(max-width:640px){:root{--promo-h:64px}.site-chrome .strk-promo{padding:6px 12px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.site-chrome *{transition:none!important;animation:none!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}html.site-leaving #root{opacity:1;transition:none}html.site-arriving #root.site-ready{animation:none}}
