/*! Street Gears. Fonts: Barlow and Barlow Condensed (The Barlow Project Authors), SIL Open Font License 1.1, see fonts/OFL.txt */
@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/barlow-400.b0a8ad37ac.woff2") format("woff2")}@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/barlow-600.4b52ddd483.woff2") format("woff2")}@font-face{font-family:"Barlow Condensed";font-style:italic;font-weight:700;font-display:swap;src:url("fonts/barlow-condensed-700-italic.3e91132781.woff2") format("woff2")}:root{color-scheme:dark;--bg:#070b1a;--bg-glow:#13245a;--ink:#edf3ff;--muted:#a3b1cf;--faint:#7d8bab;--line:rgb(150 190 255 / 14%);--cyan:#40dcff;--cyan-deep:#2a9dff;--boost:#ffb547;--navy:#06102a;--display:"Barlow Condensed","Arial Narrow",system-ui,sans-serif;--text:"Barlow",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--ease-out:cubic-bezier(0.22,1,0.36,1)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100svh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font:400 1rem/1.55 var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;cursor:pointer}a:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:3px}::selection{background:rgb(64 220 255 / 35%);color:#fff}.backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(60% 55% at 50% 42%,var(--bg-glow) 0%,rgb(19 36 90 / 0%) 70%),radial-gradient(120% 90% at 50% 120%,#0b1640 0%,transparent 60%),var(--bg)}.city{position:absolute;left:50%;top:45%;width:min(1240px,160vw);max-width:none;height:auto;opacity:0.3;transform:translate(-50%,-50%);-webkit-mask-image:radial-gradient(closest-side,#000 50%,transparent 100%);mask-image:radial-gradient(closest-side,#000 50%,transparent 100%);animation:city-drift 38s ease-in-out infinite alternate}.speed{position:absolute;inset:0;width:100%;height:100%;max-width:none}.speed polygon{fill:#03060f;stroke:rgb(150 230 255 / 50%);stroke-width:2.4;stroke-linejoin:round;vector-effect:non-scaling-stroke;transform-box:view-box;transform-origin:50% 50%;animation:shard-in 1.1s var(--ease-out) both}.speed polygon:nth-child(2n){animation-delay:0.08s}.speed polygon:nth-child(3n){animation-delay:0.16s}.backdrop::after{content:"";position:absolute;inset:0;background:radial-gradient(130% 100% at 50% 45%,transparent 55%,rgb(3 5 14 / 70%) 100%)}.hero{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:clamp(40px,9vh,96px) 16px 32px;text-align:center}.logo{margin:0;width:clamp(260px,50vw,620px);animation:logo-in 0.9s var(--ease-out) both}.logo img{width:100%;height:auto;filter:drop-shadow(0 0 26px rgb(64 220 255 / 30%)) drop-shadow(0 14px 28px rgb(0 0 0 / 55%))}.download{position:relative;margin-top:clamp(30px,6vh,52px);display:flex;flex-direction:column;align-items:center;animation:rise-in 0.8s 0.25s var(--ease-out) both}.download::before{content:"";position:absolute;z-index:-1;left:50%;top:55%;width:min(760px,100vw);height:300px;transform:translate(-50%,-50%);background:radial-gradient(closest-side,rgb(7 11 26 / 78%),rgb(7 11 26 / 0%));pointer-events:none}.dl{position:relative;isolation:isolate;display:inline-flex;align-items:center;gap:0.55em;padding:0.62em 1.9em 0.66em 1.7em;color:var(--navy);font:italic 700 clamp(1.55rem,1.1rem + 1.5vw,2.05rem) / 1 var(--display);letter-spacing:0.045em;text-transform:uppercase;text-decoration:none;transition:transform 0.2s var(--ease-out)}.dl::before,.dl::after{content:"";position:absolute;inset:0;z-index:-1;border-radius:6px;transform:skewX(-14deg)}.dl::before{background:linear-gradient(100deg,#8ef3ff 0%,var(--cyan) 42%,var(--cyan-deep) 100%);box-shadow:inset 0 0 0 1px rgb(255 255 255 / 55%),inset 0 -3px 0 rgb(6 16 42 / 22%),0 16px 44px -14px rgb(64 220 255 / 75%),0 0 70px -18px rgb(64 220 255 / 55%);transition:filter 0.2s,box-shadow 0.2s}.dl::after{background:linear-gradient(100deg,transparent 35%,rgb(255 255 255 / 65%) 50%,transparent 65%) no-repeat;background-size:260% 100%;background-position:130% 0;transition:background-position 0.7s var(--ease-out)}.dl:hover{transform:translateY(-2px)}.dl:hover::before{filter:brightness(1.08) saturate(1.1);box-shadow:inset 0 0 0 1px rgb(255 255 255 / 70%),inset 0 -3px 0 rgb(6 16 42 / 22%),0 20px 50px -14px rgb(64 220 255 / 90%),0 0 90px -16px rgb(64 220 255 / 70%)}.dl:hover::after{background-position:-30% 0}.dl:active{transform:translateY(1px)}.dl:focus-visible{outline:none}.dl:focus-visible::before{outline:2px solid #fff;outline-offset:4px}.dl svg{width:0.82em;height:0.82em;flex:none;margin-top:-0.04em}.meta{margin:16px 0 0;color:var(--muted);font-size:0.9rem;letter-spacing:0.02em;font-variant-numeric:tabular-nums}.meta .sep{margin:0 0.45em;color:rgb(64 220 255 / 55%)}.hint{margin:6px 0 0;max-width:34em;text-wrap:balance;color:var(--faint);font-size:0.9rem}.hint b{color:var(--ink);font-weight:600}.links{margin-top:26px;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:8px 22px;font-size:0.9rem}.links a,.links summary{color:var(--ink);text-decoration:underline;text-decoration-color:rgb(64 220 255 / 45%);text-decoration-thickness:1px;text-underline-offset:4px;transition:color 0.15s,text-decoration-color 0.15s}.links a:hover,.links summary:hover{color:var(--cyan);text-decoration-color:var(--cyan)}.help{max-width:100%}.help summary{cursor:pointer;list-style:none}.help summary::-webkit-details-marker{display:none}.help p{margin:8px auto 0;max-width:26em;color:var(--muted)}.help[open]{flex-basis:100%;order:2}.site-footer{position:relative;z-index:1;padding:18px 16px 22px;color:var(--faint);font-size:0.8rem;text-align:center}.site-footer p{margin:0;display:flex;flex-wrap:wrap;justify-content:center;row-gap:4px}.site-footer p>*{white-space:nowrap}.site-footer p>* + *::before{content:"·";display:inline-block;margin:0 0.6em;opacity:0.6}.site-footer a{text-decoration:none;transition:color 0.15s}.site-footer a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.page .backdrop{background:radial-gradient(80% 50% at 50% -10%,var(--bg-glow) 0%,transparent 70%),var(--bg)}.topbar{position:relative;z-index:1;width:100%;max-width:820px;margin:0 auto;padding:18px 16px 0;display:flex;align-items:center;justify-content:space-between;gap:16px}.topbar .home-link{display:block;width:150px;border-radius:4px}.topbar .home-link img{width:100%;height:auto;transition:filter 0.2s}.topbar .home-link:hover img{filter:drop-shadow(0 0 12px rgb(64 220 255 / 45%))}.dl-small{font-size:1.05rem;padding:0.55em 1.25em 0.58em 1.1em}.content{position:relative;z-index:1;flex:1;width:100%;max-width:820px;margin:0 auto;padding:28px 16px 48px}.content h1{margin:0.4em 0 0.7em;font:italic 700 clamp(2rem,1.4rem + 2.5vw,2.8rem) / 1.05 var(--display);letter-spacing:0.02em;text-transform:uppercase}.content h2{margin:2em 0 0.5em;font:italic 700 1.35rem/1.2 var(--display);letter-spacing:0.03em;text-transform:uppercase;color:var(--cyan)}.content p,.content li{color:#d3dcef}.content a{color:var(--ink);text-decoration-color:rgb(64 220 255 / 55%);text-underline-offset:3px}.content a:hover{color:var(--cyan)}.content code{padding:0.05em 0.35em;border-radius:4px;background:rgb(150 190 255 / 12%);color:var(--ink);font:0.9em/1 ui-monospace,"Cascadia Mono",Consolas,monospace}.release{margin:0 0 12px;border:1px solid var(--line);border-radius:10px;background:rgb(10 18 44 / 72%);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.release>summary{display:flex;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;list-style:none;border-radius:10px}.release>summary::-webkit-details-marker{display:none}.release>summary::after{content:"";margin-left:auto;width:9px;height:9px;flex:none;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:translateY(-3px) rotate(45deg);transition:transform 0.2s var(--ease-out)}.release[open]>summary::after{transform:translateY(2px) rotate(225deg)}.release>summary:hover .ver{color:var(--cyan)}.ver{font:italic 700 1.3rem/1.1 var(--display);letter-spacing:0.03em;text-transform:uppercase;transition:color 0.15s}.tag{padding:3px 8px 2px;border-radius:99px;background:rgb(255 181 71 / 14%);color:var(--boost);font-size:0.72rem;font-weight:600;letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap}.release-body{padding:0 18px 10px;border-top:1px solid var(--line)}.release-body h3{margin:18px 0 6px;color:var(--cyan);font-size:0.78rem;font-weight:600;letter-spacing:0.12em;text-transform:uppercase}.release-body ul{margin:0 0 8px;padding:0;list-style:none}.release-body ul:first-child{margin-top:14px}.release-body li{position:relative;padding:5px 0 5px 18px;font-size:0.97rem}.release-body li::before{content:"";position:absolute;left:2px;top:0.95em;width:7px;height:2px;background:rgb(64 220 255 / 70%);transform:skewY(-20deg)}.legal dl{margin:0}.legal dt{margin-top:10px;color:var(--faint);font-size:0.8rem;letter-spacing:0.08em;text-transform:uppercase}.legal dd{margin:2px 0 0;color:#d3dcef}.todo{padding:0 0.3em;border-radius:3px;background:rgb(255 181 71 / 22%);color:var(--boost);font-weight:600}.nojs{margin:14px 0 0;max-width:30em;color:var(--boost);font-size:0.9rem}html.dlg-open{overflow:hidden}.dlg{width:min(440px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 32px);max-height:calc(100svh - 32px);margin:auto;padding:26px 26px 24px;overflow:auto;border:1px solid rgb(64 220 255 / 26%);border-radius:14px;background:radial-gradient(120% 70% at 50% -20%,rgb(64 220 255 / 13%) 0%,transparent 60%),linear-gradient(180deg,#0e1b47 0%,#081130 100%);color:var(--ink);box-shadow:0 30px 80px -24px rgb(0 0 0 / 85%),0 0 70px -24px rgb(64 220 255 / 45%)}.dlg[open]{animation:dlg-in 0.3s var(--ease-out) both}.dlg::backdrop{background:rgb(3 6 16 / 74%);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dlg h2{margin:0 44px 0 0;font:italic 700 1.75rem/1.05 var(--display);letter-spacing:0.03em;text-transform:uppercase}.dlg-text{margin:10px 0 0;color:var(--muted);font-size:0.95rem}.dlg-text b{color:var(--ink);font-weight:600}.dlg-text a{color:var(--ink);text-decoration-color:rgb(64 220 255 / 60%);text-underline-offset:3px}.dlg-text a:hover{color:var(--cyan)}.dlg-label{display:block;margin-top:20px;color:var(--cyan);font-size:0.75rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase}.dlg-input{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid rgb(150 190 255 / 24%);border-radius:8px;background:rgb(3 8 24 / 72%);color:var(--ink);font:600 1.3rem/1.2 ui-monospace,"Cascadia Mono",Consolas,monospace;letter-spacing:0.14em;text-transform:uppercase;transition:border-color 0.15s,box-shadow 0.15s}.dlg-input::placeholder{color:rgb(163 177 207 / 38%)}.dlg-input:hover{border-color:rgb(64 220 255 / 45%)}.dlg-input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 3px rgb(64 220 255 / 22%)}.dlg-input[aria-invalid="true"]{border-color:#ff6f86;box-shadow:0 0 0 3px rgb(255 111 134 / 18%)}.dlg-error{min-height:1.45em;margin:8px 0 0;color:#ff8a9c;font-size:0.9rem;font-weight:600}.dlg-actions{display:flex;justify-content:flex-end;margin-top:8px;padding-right:6px}button.dl{border:0;background:none;cursor:pointer}button.dl:disabled{cursor:progress;opacity:0.75;transform:none}.dlg .dl-small{font-size:1.15rem;padding:0.6em 1.6em 0.62em 1.5em}.dlg-close{position:absolute;top:14px;right:14px;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;transition:background-color 0.15s,color 0.15s}.dlg-close svg{width:20px;height:20px}.dlg-close:hover{background:rgb(150 190 255 / 12%);color:var(--ink)}.dlg-close:focus-visible,.dlg-text a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.toasts{position:fixed;z-index:50;top:16px;left:50%;width:min(420px,calc(100vw - 32px));transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{position:relative;display:flex;align-items:flex-start;gap:12px;padding:14px 10px 14px 18px;overflow:hidden;border:1px solid rgb(64 220 255 / 30%);border-radius:12px;background:linear-gradient(180deg,rgb(16 30 76 / 96%),rgb(8 17 48 / 96%));box-shadow:0 18px 50px -18px rgb(0 0 0 / 85%),0 0 44px -18px rgb(64 220 255 / 50%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;animation:toast-in 0.35s var(--ease-out) both}.toast::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,#8ef3ff,var(--cyan-deep))}.toast-warn{border-color:rgb(255 181 71 / 36%);box-shadow:0 18px 50px -18px rgb(0 0 0 / 85%),0 0 44px -18px rgb(255 181 71 / 40%)}.toast-warn::before{background:var(--boost)}.toast-icon{flex:none;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgb(64 220 255 / 14%);color:var(--cyan)}.toast-warn .toast-icon{background:rgb(255 181 71 / 14%);color:var(--boost)}.toast-icon svg,.toast-close svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round}.toast-icon svg{width:18px;height:18px;stroke-width:2.4}.toast-body{flex:1;min-width:0;padding-top:5px}.toast-title{margin:0;color:var(--ink);font:italic 700 1.12rem/1.15 var(--display);letter-spacing:0.03em;text-transform:uppercase}.toast-text{margin:5px 0 0;color:var(--muted);font-size:0.9rem}.toast-text a{color:var(--ink);text-decoration-color:rgb(64 220 255 / 60%);text-underline-offset:3px}.toast-text a:hover{color:var(--cyan)}.toast-action{margin-top:10px;padding:8px 14px;border:1px solid rgb(255 181 71 / 55%);border-radius:7px;background:rgb(255 181 71 / 12%);color:#ffd79a;font:600 0.85rem/1 var(--text);letter-spacing:0.03em;cursor:pointer;transition:background-color 0.15s,color 0.15s}.toast-action:hover{background:rgb(255 181 71 / 24%);color:#fff}.toast-close{flex:none;display:grid;place-items:center;width:32px;height:32px;margin-top:-2px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--faint);cursor:pointer;transition:background-color 0.15s,color 0.15s}.toast-close svg{width:16px;height:16px;stroke-width:2.6}.toast-close:hover{background:rgb(150 190 255 / 12%);color:var(--ink)}.toast a:focus-visible,.toast button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.toast-out{animation:toast-out 0.22s ease-in both}@keyframes dlg-in{from{opacity:0;transform:translateY(14px) scale(0.98)}}@keyframes toast-in{from{opacity:0;transform:translateY(-14px) scale(0.98)}}@keyframes toast-out{to{opacity:0;transform:translateY(-8px) scale(0.98)}}@keyframes city-drift{from{transform:translate(-50%,-50%) scale(1) rotate(0deg)}to{transform:translate(-50%,-51.5%) scale(1.05) rotate(1.2deg)}}@keyframes shard-in{from{opacity:0;transform:scale(0.86)}}@keyframes logo-in{from{opacity:0;transform:translateX(-28px) skewX(8deg)}}@keyframes rise-in{from{opacity:0;transform:translateY(12px)}}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none !important;transition:none !important}}@media (max-width:520px){.hero{padding-top:48px}.city{top:40%;opacity:0.26}.topbar .home-link{width:118px}.site-footer p>:first-child{flex-basis:100%}.site-footer p>:nth-child(2)::before{content:none}.release>summary{padding:12px 14px;flex-wrap:wrap;row-gap:4px}.release-body{padding:0 14px 8px}.dlg{padding:22px 18px 20px}.dlg h2{font-size:1.5rem}}@media (max-height:560px) and (min-width:521px){.logo{width:clamp(240px,36vw,440px)}.download{margin-top:22px}}@media print{.backdrop,.dl{display:none}body{background:#fff;color:#000}}
