:root{--font-sans:-apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Geist Variable", "Geist Fallback", system-ui, sans-serif;--font-serif:ui-serif, "New York", "Instrument Serif", Georgia, serif;--font-mono:ui-monospace, "SF Mono", "Geist Mono Variable", monospace;--text-h1:clamp(2.5rem, 6vw, 5rem);--text-h2:clamp(1.75rem, 3.5vw, 3rem);--text-body:1.0625rem;--text-small:.8125rem;--content-max:1200px;--gutter:20px;--radius-card:28px;--radius-media:22px;--header-h:64px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-micro:.16s;--dur-standard:.32s;--dur-large:.7s;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#fff;--surface:#fff;--surface-2:#f5f5f7;--text:#1d1d1f;--muted:#6e6e73;--hairline:#00000014;--hairline-strong:#00000029;--accent:#ff5a1f;--accent-2:#6e56ff;--link:#06c;--danger:#d70015;--action:#0071e3;--action-hover:#0077ed;--island:#000;--island-text:#f5f5f7;--island-border:transparent;--shadow-card:0 1px 2px #0000000a, 0 8px 24px -12px #00000014;--header-bg:#ffffffb8;--glass-border:#0000001a;--ring-soft:color-mix(in srgb, var(--accent) 28%, transparent);--code-bg:#f8f8fa;--code-bar:color-mix(in srgb, var(--text) 4%, transparent)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#000;--surface:#111113;--surface-2:#1c1c1e;--text:#f5f5f7;--muted:#86868b;--hairline:#ffffff1a;--hairline-strong:#fff3;--accent:#ff6a33;--accent-2:#8b78ff;--link:#2997ff;--danger:#ff6961;--action:#0a84ff;--action-hover:#2b95ff;--island-border:var(--hairline);--shadow-card:none;--header-bg:#000000e0;--glass-border:#ffffff24;--code-bg:#0e0e10}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-ext-400-italic-C9HzH3YL.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/instrument-serif-latin-400-italic-DKMiL14s.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;font-weight:100 450;src:local(Arial),local(ArialMT),local(Helvetica Neue),local(Helvetica),local(Liberation Sans);size-adjust:103.74%;ascent-override:98.4%;descent-override:29.9%;line-gap-override:0%}@font-face{font-family:Geist Fallback;font-weight:451 550;src:local(Arial Bold),local(Arial-BoldMT),local(Helvetica Neue Bold),local(Helvetica-Bold),local(Liberation Sans Bold);size-adjust:98.6%;ascent-override:103.4%;descent-override:31.4%;line-gap-override:0%}@font-face{font-family:Geist Fallback;font-weight:551 900;src:local(Arial Bold),local(Arial-BoldMT),local(Helvetica Neue Bold),local(Helvetica-Bold),local(Liberation Sans Bold);size-adjust:101.6%;ascent-override:100.4%;descent-override:30.5%;line-gap-override:0%}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg);scrollbar-width:thin;scrollbar-color:var(--hairline-strong) transparent}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font-sans);font-size:var(--text-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.6;overflow-x:clip}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}code,kbd,samp,pre{font-family:var(--font-mono)}::selection{background:color-mix(in srgb, var(--accent) 25%, transparent);color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--hairline-strong);background-clip:content-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--muted);background-clip:content-box;border:3px solid #0000}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--text);color:var(--bg);font-size:var(--text-small);border-radius:999px;padding:.5rem 1rem;position:fixed;top:8px;left:8px}.skip-link:not(:focus){clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.btn{border:1px solid var(--hairline-strong);background:var(--surface);min-height:36px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-micro) var(--ease-out), background var(--dur-standard) var(--ease-out), border-color var(--dur-standard) var(--ease-out), opacity var(--dur-micro) var(--ease-out);border-radius:999px;justify-content:center;align-items:center;gap:.5em;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:active{transform:scale(.97)}.btn--action{background:var(--action);color:#fff;border-color:#0000;min-height:40px;padding:0 18px;font-size:14px}.btn--action:hover{background:var(--action-hover);border-color:#0000}.btn__dot{background:var(--accent);border-radius:50%;width:7px;height:7px}.kbd{font-family:var(--font-mono);letter-spacing:.02em;background:#fff3;border-radius:6px;padding:1px 6px;font-size:11px;font-weight:500;line-height:1.5;display:none}@media (hover:hover) and (pointer:fine){.kbd{display:inline-block}}.icon-btn{width:36px;height:36px;color:color-mix(in srgb, var(--text) 68%, var(--code-bg));cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-micro) var(--ease-out), background var(--dur-micro) var(--ease-out), color var(--dur-micro) var(--ease-out);background:0 0;border:0;border-radius:11px;place-items:center;padding:0;display:inline-grid;position:relative}.icon-btn:hover{background:var(--hairline);color:var(--text)}.icon-btn:active{transform:scale(.94)}.icon-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.icon-btn__icon{transition:opacity var(--dur-standard) var(--ease-out), transform var(--dur-standard) var(--ease-out), filter var(--dur-standard) var(--ease-out);grid-area:1/1}.icon-btn__icon--done{opacity:0;filter:blur(4px);color:var(--accent);transform:scale(.5)rotate(-30deg)}.icon-btn[data-copied] .icon-btn__icon--copy{opacity:0;filter:blur(4px);transform:scale(.5)rotate(30deg)}.icon-btn[data-copied] .icon-btn__icon--done{opacity:1;filter:none;transform:none}@media (max-width:1023px){.btn,.btn--action{min-height:44px}.icon-btn{width:44px;height:44px}}.js [data-reveal]:not([data-reveal-state]){opacity:0;filter:blur(8px);transform:translateY(24px)}.js [data-reveal][data-reveal-state=in]{opacity:1;filter:none;transition:opacity var(--dur-large) var(--ease-out), transform var(--dur-large) var(--ease-out), filter var(--dur-large) var(--ease-out);transform:none}.js:not(.reveal-ready) [data-reveal]:not([data-reveal-state]){animation:10ms 3s forwards reveal-failsafe}@keyframes reveal-failsafe{to{opacity:1;filter:none;transform:none}}::view-transition-old(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}html.theme-switching *,html.theme-switching :before,html.theme-switching :after{transition:none!important}@media (prefers-reduced-motion:reduce){.js [data-reveal]:not([data-reveal-state]){filter:none;transform:none}.js [data-reveal][data-reveal-state=in]{transition:opacity var(--dur-standard) linear}.btn:active,.icon-btn:active{transform:none}.icon-btn__icon,.icon-btn__icon--done{filter:none!important;transform:none!important}*,:before,:after{scroll-behavior:auto!important}}.app{grid-template-rows:var(--header-h) minmax(0, 1fr) auto;height:100dvh;min-height:0;display:grid}.header{z-index:20;height:var(--header-h);padding-inline:max(var(--gutter), calc((100% - var(--content-max)) / 2));background:color-mix(in srgb, var(--bg) 94%, transparent);border-bottom:1px solid var(--hairline);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid;position:sticky;top:0}@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.header{background:var(--header-bg);-webkit-backdrop-filter:blur(22px)saturate(1.8);backdrop-filter:blur(22px)saturate(1.8)}}.back{min-height:36px;color:var(--muted);transition:color var(--dur-micro) var(--ease-out);justify-self:start;align-items:center;gap:4px;font-size:14px;display:inline-flex}.back:hover{color:var(--text)}.back svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px;transition:transform var(--dur-standard) var(--ease-out)}.back:hover svg,.back:focus-visible svg{transform:translate(-2px)}.theme-toggle{border:1px solid var(--hairline);width:36px;height:36px;color:var(--text);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-micro) var(--ease-out), background var(--dur-micro) var(--ease-out);background:0 0;border-radius:50%;justify-self:end;place-items:center;padding:0;display:inline-grid;position:relative}.theme-toggle:hover{background:var(--hairline)}.theme-toggle:active{transform:scale(.94)}.theme-toggle svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;grid-area:1/1;width:18px;height:18px}.theme-toggle .icon-moon,:root[data-theme=dark] .theme-toggle .icon-sun{display:none}:root[data-theme=dark] .theme-toggle .icon-moon{display:block}.stage{width:100%;max-width:calc(var(--content-max) + var(--gutter) * 2);min-height:0;padding:16px var(--gutter) 20px;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:20px;margin-inline:auto;display:grid}.card{border:1px solid var(--hairline);border-radius:var(--radius-media);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.card__bar{background:var(--code-bar);border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:4px 8px;min-height:44px;padding:4px 8px 4px 12px;display:flex}.card__label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--text) 68%, var(--code-bg));margin-right:auto;font-size:11.5px;font-weight:500}.footer{background:var(--surface-2);border-top:1px solid var(--hairline);color:var(--muted);font-size:12px;line-height:1.5}.footer__inner{max-width:calc(var(--content-max) + var(--gutter) * 2);padding:10px var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 20px;margin-inline:auto;display:flex}.footer__group{flex-wrap:wrap;gap:2px 14px;display:flex}.footer__time{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.footer sup{line-height:0}.noscript{color:var(--muted);text-align:center;grid-column:1/-1;margin:0;padding:24px}@media (max-width:1023px){.app{height:auto;min-height:100dvh;display:block}.stage{flex-direction:column;padding-bottom:24px;display:flex}.editor-card{height:55dvh;min-height:380px}.output-card{min-height:260px}}@media (max-width:519px){.back span{display:none}.stage{gap:14px;padding-inline:12px}}.island{border:1px solid var(--island-border);background:var(--island);height:38px;color:var(--island-text);cursor:default;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;transition:transform var(--dur-micro) var(--ease-out), box-shadow var(--dur-standard) var(--ease-out);border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:relative;overflow:hidden;box-shadow:0 6px 20px -8px #00000059,inset 0 0 0 .5px #ffffff14}@media (hover:hover){.island:hover{transform:scale(1.035);box-shadow:0 10px 26px -8px #0000006b,inset 0 0 0 .5px #ffffff1f}}.island:active{transform:scale(.97)}.island__inner{white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:9px;width:max-content;max-width:min(78vw,340px);padding:0 16px;font-size:13px;line-height:1;display:inline-flex}@media (min-width:768px){.island__inner{max-width:280px}}@media (max-width:519px){.island__inner{max-width:52vw}}.island__mark{font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent);font-size:11px;font-weight:600}.island__text{text-overflow:ellipsis;letter-spacing:-.01em;min-width:0;font-weight:500;display:inline-block;overflow:hidden}.island__icon{color:var(--accent);font-size:13px;display:none}.island__icon:empty{display:none!important}.island__ring{flex:none;width:16px;height:16px;display:none;transform:rotate(-90deg)}.island__ring circle{fill:none;stroke-width:2px}.island__ring-track{stroke:#ffffff38}.island__ring-value{stroke:var(--accent);stroke-linecap:round;stroke-dasharray:37.699;stroke-dashoffset:27px}.island__dot{background:var(--accent);border-radius:50%;flex:none;width:8px;height:8px;display:none}.island[data-mode=loading] .island__mark,.island[data-mode=running] .island__mark,.island[data-mode=flash] .island__mark{display:none}.island[data-mode=loading] .island__ring{animation:.9s linear infinite island-spin;display:block}.island[data-mode=running] .island__dot{animation:island-breathe 1.2s var(--ease-in-out) infinite;display:block}.island[data-mode=flash] .island__icon{display:inline}.island[data-tone=danger] .island__icon{color:#ff6961}@keyframes island-spin{0%{transform:rotate(-90deg)}to{transform:rotate(270deg)}}@keyframes island-breathe{0%,to{transform:scale(.85)}50%{transform:scale(1.15)}}@media (prefers-reduced-motion:reduce){.island:hover{transform:none}.island[data-mode=loading] .island__ring,.island[data-mode=running] .island__dot{animation:none}}.editor-card{background:var(--code-bg)}.tabs{align-items:stretch;margin-right:auto;display:flex;position:relative}.tabs__tab{min-height:36px;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--dur-micro) var(--ease-out);background:0 0;border:0;align-items:center;padding:0 12px;font-size:13px;font-weight:500;display:inline-flex}.tabs__tab:hover,.tabs__tab[aria-selected=true]{color:var(--text)}.tabs__line{width:var(--line-w,0);background:var(--accent);height:2px;transform:translateX(var(--line-x,0));transition:transform var(--dur-standard) var(--ease-out), width var(--dur-standard) var(--ease-out);border-radius:2px;position:absolute;bottom:0;left:0}.tabs:not([data-ready]) .tabs__line{transition:none}@media (max-width:1023px){.tabs__tab{min-height:44px}}.actions{align-items:center;gap:4px;margin-left:auto;display:flex}.run-slot{display:grid}.run-slot>*{transition:opacity var(--dur-micro) var(--ease-out), transform var(--dur-micro) var(--ease-out);grid-area:1/1}.run-slot .btn--stop,.run-slot[data-running] .btn--run{opacity:0;pointer-events:none;transform:scale(.94)}.run-slot[data-running] .btn--stop{opacity:1;pointer-events:auto;transform:none}.run-slot .btn--stop:active{transform:scale(.97)}.banner{background:color-mix(in srgb, var(--accent) 9%, var(--code-bg));border-bottom:1px solid var(--hairline);align-items:center;gap:8px;padding:6px 8px 6px 14px;font-size:13px;line-height:1.4;display:flex}.banner[hidden]{display:none}.banner p{margin:0 auto 0 0}.editor-host{flex:1;min-height:0;position:relative}.editor-host__mount{position:absolute;inset:0}.skeleton{transition:opacity var(--dur-standard) var(--ease-out);flex-direction:column;gap:12px;padding:20px 16px;display:flex;position:absolute;inset:0}.skeleton[data-done]{opacity:0;pointer-events:none}.skeleton i{background:linear-gradient(90deg, var(--hairline) 25%, color-mix(in srgb, var(--hairline) 40%, transparent) 50%, var(--hairline) 75%);background-size:200% 100%;border-radius:6px;height:10px;animation:1.4s linear infinite skeleton-shimmer;display:block}.skeleton i:first-child{width:38%}.skeleton i:nth-child(2){width:62%}.skeleton i:nth-child(3){width:48%}.skeleton i:nth-child(4){width:71%}.skeleton i:nth-child(5){width:30%}.skeleton i:nth-child(6){width:55%}@keyframes skeleton-shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.skeleton i{animation:none}}.line-flash{background:color-mix(in srgb, var(--accent) 12%, transparent)}.editor-fallback{resize:none;width:100%;height:100%;color:var(--text);font-family:var(--font-mono);tab-size:4;background:0 0;border:0;padding:16px;font-size:14px;line-height:24px;position:absolute;inset:0}.editor-fallback:focus-visible{outline-offset:-3px}.output-card{background:var(--surface)}.output{overflow-wrap:anywhere;white-space:pre-wrap;min-height:0;font-family:var(--font-mono);color:var(--text);tab-size:4;flex:1;margin:0;padding:14px 16px;font-size:13.5px;line-height:1.7;overflow:auto}.output:empty:before{content:attr(data-placeholder);color:var(--muted)}.output__chunk{animation:output-in var(--dur-micro) linear}.output__chunk--stdout{color:var(--text)}.output__chunk--stderr{color:var(--danger)}.output__chunk--meta{color:var(--muted)}@keyframes output-in{0%{opacity:0}}.loc{color:inherit;font:inherit;text-decoration:underline;-webkit-text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-decoration-color:color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:3px;cursor:pointer;transition:text-decoration-color var(--dur-micro) var(--ease-out);background:0 0;border:0;padding:0;display:inline}.loc:hover,.loc:focus-visible{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.loc:focus-visible{outline-offset:1px;border-radius:3px}.statusbar{border-top:1px solid var(--hairline);background:var(--code-bar);min-height:40px;font-family:var(--font-mono);color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:2px 18px;padding:8px 16px;font-size:12px;display:flex}.statusbar [hidden]{display:none}.statusbar b{color:var(--text);font-weight:500}@media (prefers-reduced-motion:reduce){.output__chunk{animation:none}}
