@font-face{font-family:Geist;src:url(/fonts/Geist.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono.woff2) format("woff2");font-weight:100 900;font-display:swap}@font-face{font-family:Geist Pixel;src:url(/fonts/GeistPixel.woff2) format("woff2");font-display:swap}:root{--sans:"Geist",system-ui,sans-serif;--mono:"Geist Mono",ui-monospace,monospace;--pixel:"Geist Pixel","Geist Mono",monospace;--grey-10:oklch(10% 0 0);--grey-20:oklch(20% 0 0);--grey-30:oklch(30% 0 0);--grey-40:oklch(40% 0 0);--grey-50:oklch(50% 0 0);--grey-60:oklch(60% 0 0);--grey-70:oklch(70% 0 0);--grey-80:oklch(80% 0 0);--grey-90:oklch(90% 0 0);--grey-95:oklch(95% 0 0);--grey-99:oklch(99% 0 0);--yellow-20:oklch(20% 0.041 96.4);--yellow-30:oklch(30% 0.061 96.4);--yellow-50:oklch(50% 0.102 96.4);--yellow-80:oklch(80% 0.163 96.4);--yellow-90:oklch(90% 0.17 96.4);--yellow-95:oklch(95% 0.085 96.4);--yellow-98:oklch(98% 0.035 96.4);--teal-50:oklch(50% 0.118 157.5);--teal-80:oklch(80% 0.189 157.5);--red-40:oklch(40% 0.152 32);--red-60:oklch(60% 0.227 32);--red-70:oklch(70% 0.192 32);--orange-80:oklch(80% 0.144 62);--indigo-50:oklch(50% 0.293 284.6);--indigo-80:oklch(80% 0.105 284.6);--pink-80:oklch(80% 0.117 12);--bg:var(--grey-80);--text:var(--grey-30);--muted:var(--grey-50);--module:var(--grey-80);--on-module:var(--grey-40);--cutout:var(--grey-10);--screen:var(--grey-20);--on-screen:var(--grey-99);--on-screen-dim:color-mix(in oklch,var(--grey-99) 55%,transparent);--accent:var(--yellow-90);--highlight:var(--grey-99);--highlight-hover:var(--yellow-98);--shadow:var(--grey-10);--led-off:var(--grey-50);--led-on:var(--yellow-90);--good:var(--teal-50);--bad:var(--red-40);--shadow-up-1:-2px -2px 8px 0 color-mix(in oklch,var(--highlight) 30%,transparent),2px 2px 4px 0 color-mix(in oklch,var(--shadow) 25%,transparent);--shadow-up-2:-3px -3px 16px 0 color-mix(in oklch,var(--highlight) 40%,transparent),5px 5px 8px 0 color-mix(in oklch,var(--shadow) 25%,transparent);--shadow-up-3-round:-4px -4px 16px 0 color-mix(in oklch,var(--highlight) 50%,transparent),10px 10px 12px 0 color-mix(in oklch,var(--shadow) 25%,transparent),inset 1px 1px 3px 0 var(--highlight);--shadow-up-nav:-3px -3px 12px 0 color-mix(in oklch,var(--highlight) 45%,transparent),6px 6px 12px 0 color-mix(in oklch,var(--shadow) 22%,transparent),inset 1px 1px 2px 0 var(--highlight);--shadow-up-button:-3px -3px 10px 0 color-mix(in oklch,var(--highlight) 40%,transparent),8px 8px 16px 0 color-mix(in oklch,var(--shadow) 30%,transparent),inset 1px 1px 2px 0 color-mix(in oklch,var(--highlight) 70%,transparent);--shadow-up-button-hover:-3px -3px 10px 0 color-mix(in oklch,var(--highlight-hover) 40%,transparent),8px 8px 16px 0 color-mix(in oklch,var(--shadow) 30%,transparent),inset 3px 3px 2px 0 var(--highlight-hover);--shadow-up-button-active:-1px -1px 5px 0 color-mix(in oklch,var(--highlight) 10%,transparent),2px 2px 4px 0 color-mix(in oklch,var(--shadow) 30%,transparent),inset 2px 2px 8px 0 color-mix(in oklch,var(--shadow) 35%,transparent);--shadow-up-screen:-1px -1px 2px 0 color-mix(in oklch,var(--highlight) 40%,transparent),1px 1px 4px 0 color-mix(in oklch,var(--shadow) 25%,transparent),inset 0.5px 0.5px 1px 0 var(--highlight);--shadow-up-toast:-6px -6px 16px 0 color-mix(in oklch,var(--shadow) 30%,transparent),10px 10px 12px 0 color-mix(in oklch,var(--shadow) 30%,transparent),inset 0.5px 0.5px 1px 0 var(--highlight);--shadow-down-1:inset -2px -2px 4px 0 color-mix(in oklch,var(--highlight) 50%,transparent),inset 2px 2px 2px 0 color-mix(in oklch,var(--shadow) 40%,transparent);--shadow-down-tray:inset -1px -1px 2px 0 color-mix(in oklch,var(--highlight) 25%,transparent),inset 1px 1px 2px 0 color-mix(in oklch,var(--shadow) 25%,transparent);--shadow-down-led-on:0 0 6px 0 var(--highlight-hover),inset 2px 2px 2px 0 color-mix(in oklch,var(--shadow) 40%,transparent),inset -2px -2px 4px 0 color-mix(in oklch,var(--highlight) 50%,transparent);--knurl:repeating-linear-gradient(to bottom,var(--grey-90) 0 1px,var(--grey-90) 1px 2px,var(--grey-60) 2px 3px);--r-module:20px;--r-nav:12px;--r-plate:12px;--r-button:8px;--r-screen:6px;--r-input:6px;--gap:12px;--fast:0.15s ease;--medium:0.25s ease;--out:cubic-bezier(0.16,1,0.3,1);--nav-h:64px;--foot-h:40px}*{box-sizing:border-box}html{overflow-y:scroll;scrollbar-gutter:stable}body,html{background:var(--bg)}body{margin:0;min-height:100vh;color:var(--text);font:400 15px/1.4 var(--sans);letter-spacing:.01em;-webkit-font-smoothing:antialiased}h1,h2,h3,ol,p,ul{margin:0;padding:0}ol,ul{list-style:none}a,button{color:inherit}button{font:inherit}img{display:block}::selection{background:var(--yellow-90);color:var(--grey-20)}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid var(--grey-30);outline-offset:2px}.label{font:400 12px/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--on-module)}.h1{font:500 clamp(28px,2.6vw,42px) /1.1 var(--pixel)}.h1,.h2{color:var(--text)}.h2{font:500 22px/1.2 var(--pixel)}.lede{max-width:560px;font-size:15px;line-height:1.45;color:var(--grey-40)}.lede a,.lede b{color:var(--grey-20);font-weight:500}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.reveal-chars .ch{display:inline-block;opacity:0;transform:translateX(.875rem);animation:ch-in .5s var(--out) forwards}@keyframes ch-in{to{opacity:1;transform:none}}.module{border-radius:var(--r-module);background:var(--module);box-shadow:var(--shadow-up-3-round);color:var(--on-module)}.module,.screen{position:relative;min-width:0;min-height:0}.screen{isolation:isolate;padding:1px;border-radius:calc(var(--r-screen) + 1px);background:var(--cutout);color:var(--on-screen);font-family:var(--mono)}.screen:before{content:"";position:absolute;inset:1px;z-index:-1;border-radius:var(--r-screen);background:var(--screen);box-shadow:var(--shadow-up-screen);pointer-events:none}.screen .scroll,.screen.scroll{scrollbar-color:var(--on-screen-dim) transparent}.tray{border-radius:var(--r-plate);box-shadow:var(--shadow-down-tray)}.divider{height:4px}.divider,.led{border-radius:999px;box-shadow:var(--shadow-down-1)}.led{flex:none;display:inline-block;width:12px;height:12px;border:1px solid var(--grey-40);background:var(--led-off);transition:background-color var(--fast),box-shadow var(--fast)}.led.live,.led.on{background:var(--led-on);box-shadow:var(--shadow-down-led-on)}.led.live{animation:led-blink 1.2s steps(2,jump-none) infinite}.led.good{background:var(--teal-80);box-shadow:0 0 6px 0 color-mix(in oklch,var(--teal-80) 60%,transparent),var(--shadow-down-1)}.led.bad{background:var(--red-70);box-shadow:0 0 6px 0 color-mix(in oklch,var(--red-70) 60%,transparent),var(--shadow-down-1)}.led.sm{width:9px;height:9px}@keyframes led-blink{50%{background:var(--led-off);box-shadow:var(--shadow-down-1)}}.btn,.btn-dark{--b-surface:var(--grey-90);--b-on:var(--grey-40);--b-hover:var(--yellow-95);--b-active:var(--grey-70);--b-on-active:var(--grey-30);--b-shadow:var(--shadow-up-button);position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:36px;padding:0 14px;border:0;border-radius:calc(var(--r-button) + 1px);background:var(--cutout);color:var(--b-on);font:500 13px/1 var(--mono);letter-spacing:.078em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:color var(--fast)}.btn-dark:before,.btn:before{content:"";position:absolute;inset:1px;z-index:-1;border-radius:var(--r-button);background:var(--b-surface);box-shadow:var(--b-shadow);transition:background-color var(--fast),box-shadow var(--fast);pointer-events:none}.btn-dark:hover:before,.btn:hover:before{background:var(--b-hover);box-shadow:var(--shadow-up-button-hover)}.btn-dark:active,.btn:active{color:var(--b-on-active)}.btn-dark:active:before,.btn:active:before{background:var(--b-active);box-shadow:var(--shadow-up-button-active)}.btn-dark{--b-surface:var(--grey-40);--b-on:var(--grey-95);--b-hover:var(--yellow-50);--b-active:var(--grey-30);--b-on-active:var(--grey-80)}.btn-dark[disabled],.btn[disabled]{cursor:not-allowed;opacity:.65}.btn svg,.btn-dark svg{width:16px;height:16px;flex:none}.btn-sm{height:30px;padding:0 10px;font-size:11.5px}.btn-mini{width:32px;height:32px;padding:0}.btn-wide{height:64px;width:100%;flex-direction:column;align-items:flex-start;justify-content:space-between;padding:10px 12px}.btn-wide svg{align-self:flex-end}.key-toggle{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;height:36px;padding:0 12px;border:0;border-radius:var(--r-button);background:var(--grey-90);box-shadow:var(--shadow-up-button);color:var(--grey-40);font:500 12px/1 var(--mono);letter-spacing:.078em;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color var(--fast),color var(--fast),box-shadow var(--fast)}.key-toggle:hover{background:var(--yellow-95)}.key-toggle.on,.key-toggle[aria-current=page],.key-toggle[aria-selected=true]{background:var(--grey-50);color:var(--grey-99);box-shadow:var(--shadow-up-button-active)}.key-toggle.on .led,.key-toggle[aria-current=page] .led,.key-toggle[aria-selected=true] .led{background:var(--led-on);box-shadow:var(--shadow-down-led-on)}.toggle-frame{display:inline-grid;grid-auto-flow:column;grid-auto-columns:auto;gap:1px;border-radius:calc(var(--r-button) + 1px)}.field-frame,.toggle-frame{padding:1px;background:var(--cutout)}.field-frame{position:relative;display:flex;flex:1 1;min-width:0;border-radius:calc(var(--r-input) + 1px)}.field{width:100%;min-width:0;height:40px;padding:0 12px;border:2px solid var(--grey-30);border-radius:var(--r-input);background:var(--grey-10);color:var(--grey-99);box-shadow:var(--shadow-down-1);font:400 14px var(--sans);letter-spacing:.02em;outline:none;transition:background-color var(--fast),border-color var(--fast)}.field::placeholder{color:var(--grey-60)}.field:focus{background:var(--yellow-20);border-color:var(--grey-50)}.app{display:flex;flex-direction:column;min-height:100vh}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:40;align-items:stretch;gap:8px;padding:10px 14px 6px}.nav,.nav-plate{display:flex;background:var(--bg)}.nav-plate{position:relative;align-items:center;gap:12px;height:var(--nav-h);padding:0 14px;border-radius:var(--r-nav);box-shadow:var(--shadow-up-nav)}.nav-logo{gap:12px;padding:0 18px;text-decoration:none;color:var(--grey-20)}.nav-wordmark{display:block;height:30px;width:auto}.nav-links{flex:1 1;min-width:0;justify-content:center}.nav-right{gap:10px}.api-meter{gap:12px;height:44px;padding:0 16px 0 12px;text-decoration:none}.api-meter,.api-meter .am-lab{display:inline-flex;align-items:center}.api-meter .am-lab{gap:7px;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--on-screen-dim);white-space:nowrap}.api-meter .am-num{display:inline-block;font-size:21px;color:var(--accent);transform:scaleY(1.55)}.api-meter:hover .am-lab{color:var(--on-screen)}.stage{flex:1 0 auto;width:100%;min-width:0;padding:10px 14px 12px}.status{position:-webkit-sticky;position:sticky;bottom:0;z-index:40;flex:none;display:flex;gap:18px;height:var(--foot-h);padding:0 22px;background:var(--bg);box-shadow:0 -1px 0 color-mix(in oklch,var(--grey-99) 60%,transparent),0 -2px 0 color-mix(in oklch,var(--grey-10) 10%,transparent);font:400 11.5px/1 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--grey-40);white-space:nowrap;overflow:hidden}.status,.status a{align-items:center}.status a{display:inline-flex;gap:7px;text-decoration:none}.status a:hover b{text-decoration:underline;text-underline-offset:3px}.status b{font-weight:500;color:var(--grey-20)}.status .sp{margin-left:auto}.app.one{height:100vh;overflow:hidden}.app.one>.stage{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.panel{display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:10px;gap:10px;padding:14px}.panel-h{display:flex;align-items:center;gap:10px;min-width:0;min-height:24px}.panel-h .label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-h a.more{font:500 11px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--grey-40);text-decoration:none}.panel-h a.more:hover{color:var(--grey-20);text-decoration:underline}.panel-h a.more.gh{display:inline-flex;align-items:center;gap:6px}.scroll{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--grey-60) transparent}.stats{display:grid;grid-gap:10px;gap:10px}.stat{display:grid;grid-template-rows:auto minmax(0,1fr);grid-gap:7px;gap:7px;min-width:0;text-decoration:none;color:inherit}.stat .label{display:flex;align-items:center;gap:7px}.stat .screen{display:grid;align-content:center;grid-gap:4px;gap:4px;padding:10px 12px;transition:transform var(--fast)}.stat .val{display:flex;align-items:center;gap:7px;font:500 clamp(15px,1.25vw,20px) /1.1 var(--mono);color:var(--accent)}.stat .sub,.stat .val{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat .sub{font:400 11px/1.3 var(--mono);color:var(--on-screen-dim)}a.stat:hover .screen:before{background:var(--yellow-30)}a.stat:hover .label{color:var(--grey-20)}a.stat .go{margin-left:auto;opacity:0;transform:translate(-3px,3px);transition:opacity var(--fast),transform var(--fast)}a.stat:hover .go{opacity:1;transform:none}.tbl{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.tbl th{position:-webkit-sticky;position:sticky;top:0;z-index:1;padding:8px 10px;background:var(--grey-90);font:400 11px/1 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--grey-40);text-align:left;white-space:nowrap}.tbl th:first-child{border-radius:8px 0 0 8px}.tbl th:last-child{border-radius:0 8px 8px 0}.tbl td{padding:9px 10px;border-bottom:1px solid color-mix(in oklch,var(--grey-60) 45%,transparent);color:var(--grey-30);white-space:nowrap;vertical-align:middle}.tbl td b{color:var(--grey-20);font-weight:500}.tbl .r{text-align:right}.tbl .m{font-family:var(--mono);font-size:12px}.tbl a{color:var(--grey-20);text-decoration:none}.tbl a:hover{text-decoration:underline;text-underline-offset:3px}.tbl tr.click{cursor:pointer}.tbl tr.click:hover td,.tbl tr.on td{background:var(--yellow-95)}.tbl .sub{margin-top:3px;font-size:11.5px;color:var(--grey-50);white-space:normal}.tag{display:inline-flex;align-items:center;gap:7px;height:24px;padding:0 9px;border-radius:6px;background:var(--grey-90);box-shadow:var(--shadow-up-1);font:500 10.5px/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--grey-40);white-space:nowrap}.tag .led{width:8px;height:8px}.tag-live{background:var(--grey-30);color:var(--grey-99)}.ic{display:inline-grid;place-items:center;flex:none;vertical-align:-3px}.ic,.ic img{width:16px;height:16px}.ic img{object-fit:contain}.ic-x img{padding:1.5px}.ic-github img,.ic-github-white img{padding:1px}.ic-sm,.ic-sm img{width:13px;height:13px}.inl{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.empty{display:grid;place-items:center;grid-gap:6px;gap:6px;padding:24px 14px;text-align:center;font-size:13.5px;color:var(--grey-50)}.empty b{color:var(--grey-30);font-weight:500}.screen .empty{color:var(--on-screen-dim)}.screen .empty b{color:var(--on-screen)}.dlg{position:fixed;inset:0;z-index:90;display:grid;place-items:center;padding:20px}.dlg-scrim{position:fixed;inset:0;background:color-mix(in oklch,var(--grey-10) 50%,transparent);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:dlg-fade .18s ease-out both}.dlg-card{position:relative;display:flex;flex-direction:column;gap:16px;width:min(100%,560px);max-height:calc(100vh - 40px);padding:22px;border-radius:var(--r-module);background:var(--module);box-shadow:var(--shadow-up-toast);color:var(--on-module);animation:dlg-in .28s var(--out) both}.dlg-card.wide{width:min(100%,880px)}.dlg-card.max{width:min(100%,1640px);height:calc(100vh - 40px);padding:16px 18px 18px}.dlg-card.max .dlg-body{flex:1 1 auto;min-height:0;display:flex;overflow:hidden}.dlg-card.max .dlg-body>.lv{flex:1 1 auto;height:auto;min-height:0}.dlg-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dlg-head h2{font:600 24px/1.25 var(--pixel);color:var(--grey-30)}.dlg-body{display:flex;flex-direction:column;gap:14px;min-height:0;overflow:auto;margin:-8px;padding:8px}@keyframes dlg-fade{0%{opacity:0}}@keyframes dlg-in{0%{opacity:0;transform:translateY(10px) scale(.98)}}.kv{display:grid;grid-template-columns:120px minmax(0,1fr);grid-gap:9px 14px;gap:9px 14px;padding:14px;font-size:13px}.kv dt{font:400 11px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--on-screen-dim)}.kv dd{margin:0;min-width:0;overflow-wrap:anywhere;font:400 12.5px/1.5 var(--mono);color:var(--on-screen)}.kv a{color:var(--accent);text-underline-offset:3px}[data-tip]{position:relative}[data-tip]:hover:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:70;width:max-content;max-width:260px;padding:7px 10px;border-radius:8px;background:var(--grey-20);box-shadow:var(--shadow-up-toast);color:var(--grey-99);font:300 10px/1.35 var(--sans);letter-spacing:.09em;text-transform:uppercase;white-space:normal;pointer-events:none;transform:translateX(-50%);animation:tip-in .16s ease-out both}@keyframes tip-in{0%{opacity:0;transform:translate(-50%,4px) scale(.98)}}.rise{animation:rise .6s var(--out) both}.rise-1{animation-delay:.05s}.rise-2{animation-delay:.12s}.rise-3{animation-delay:.19s}.rise-4{animation-delay:.26s}.rise-5{animation-delay:.33s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion:reduce){.dlg-card,.led.live,.reveal-chars .ch,.rise{animation:none;opacity:1;transform:none}}.paused{display:grid;place-items:center;min-height:100vh;padding:24px}.paused-box{display:grid;justify-items:center;grid-gap:18px;gap:18px;padding:40px 48px;text-align:center}@media (max-height:640px),(max-width:1000px){.app.one{height:auto;min-height:100vh;overflow:visible}}@media (max-width:860px){.nav{flex-wrap:wrap;padding:8px 10px 4px}.nav-plate{height:52px}.nav-links{order:3;flex-basis:100%;overflow-x:auto;justify-content:flex-start}.nav-right .hide-sm,.status .hide-sm{display:none}.nav-logo{padding:0 12px;gap:8px}.nav-wordmark{height:20px}.nav-right{padding:0 8px}.api-meter{gap:8px;height:38px;padding:0 12px 0 10px}.api-meter .am-lab{font-size:0;gap:0}.api-meter .am-num{font-size:17px}.stage{padding:8px 10px 16px}}