.cv-app{--cv-panel:#1e1e1e;--cv-canvas:#282828;--cv-ink:#ececec;--cv-mute:#8e8e8e;--cv-line:#2f2f2f;--cv-hover:#262626;--cv-active:#353535;--cv-accent:#f97316;--cv-accent-strong:#c2410c;--cv-accent-soft:#f9731629;--cv-fly-lit:#f97316;--cv-fly-hot:#ffd2a8;--cv-halo:#00000073;--color-divider:#3a3a3a;--cv-chip:#2a2a2a;--cv-lit:#ffffff0f;--cv-ring:#0006;--cv-drop:#00000080;--cv-label:#9a9a9a;--cv-link:#5a5a5a;--cv-kbd:#ffffff12;--cv-kbd-ink:#d6d6d6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;overscroll-behavior:none;font-size:12px}.cv-viewport{cursor:default}.cv-viewport[data-hand]{cursor:grab}.cv-viewport[data-grabbing]{cursor:grabbing}.cv-viewport[data-moving] .cv-world,.cv-viewport[data-hand] .cv-world,.cv-viewport[data-moving] .cv-label,.cv-viewport[data-hand] .cv-label{pointer-events:none}.cv-viewport[data-moving] .cv-world{will-change:transform}.cv-overlay>*{position:absolute;top:0;left:0}.cv-overlay{--s:min(1,calc(var(--k,1)/.45));--fade:clamp(0,calc((var(--k,1) - .12)/.08),1)}.cv-label{pointer-events:auto;max-width:calc(var(--fw)*var(--k,1));transform:translate(calc(var(--fx)*var(--k,1) + var(--x,0px)),calc(var(--fy)*var(--k,1) + var(--y,0px) - 100% - 6px*var(--s)));opacity:var(--fade);will-change:transform;text-overflow:ellipsis;font-size:calc(12px*var(--s));color:var(--cv-label);white-space:nowrap;text-align:left;cursor:pointer;line-height:1.4;overflow:hidden}.cv-label.is-selected{color:var(--cv-accent)}@media (hover:hover){.cv-label:hover{color:var(--cv-accent)}}.cv-box{width:calc(var(--fw)*var(--k,1));height:calc(var(--fh)*var(--k,1));transform:translate(calc(var(--fx)*var(--k,1) + var(--x,0px)),calc(var(--fy)*var(--k,1) + var(--y,0px)))var(--tilt,);outline:1.5px solid var(--cv-accent);box-shadow:0 0 0 3px var(--cv-halo)}.cv-hover{outline-color:color-mix(in srgb,var(--cv-accent)55%,transparent)}.cv-card{box-shadow:0 0 0 1px var(--cv-ring),0 1px 2px var(--cv-drop),0 8px 24px -12px var(--cv-drop);border-radius:12px}.cv-card>div{border-radius:inherit;box-shadow:inset 0 1px 0 var(--cv-lit)}.cv-overlay[data-cards] .cv-box{border-radius:calc(12px*var(--k,1))}.cv-viewport[data-moving] .cv-hover{visibility:hidden}.cv-size{transform:translate(calc((var(--fx) + var(--fw)/2)*var(--k,1) + var(--x,0px) - 50%),calc((var(--fy) + var(--fh))*var(--k,1) + var(--y,0px) + 8px*var(--s)));opacity:var(--fade);padding:calc(1px*var(--s))calc(6px*var(--s));border-radius:calc(4px*var(--s));background:var(--cv-accent-strong);color:#fff;font-family:var(--font-geist-mono),monospace;font-size:calc(10px*var(--s));white-space:nowrap;line-height:1.6}.cv-veil:has(.cv-dots):before{content:"";background-color:var(--dot);-webkit-mask-composite:source-in;position:absolute;inset:0;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' shape-rendering='crispEdges'%3E%3Cpath fill='black' d='M0 0h1v1H0zM2 0h1v1H2zM2 2h1v1H2z'/%3E%3C/svg%3E"),linear-gradient(#000 10%,#0000 95%);mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' shape-rendering='crispEdges'%3E%3Cpath fill='black' d='M0 0h1v1H0zM2 0h1v1H2zM2 2h1v1H2z'/%3E%3C/svg%3E"),linear-gradient(#000 10%,#0000 95%);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:6px 6px,auto;mask-size:6px 6px,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:border-box,border-box;mask-clip:border-box,border-box;-webkit-mask-origin:border-box,border-box;mask-origin:border-box,border-box;-webkit-mask-composite:source-in;mask-composite:intersect;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.cv-veil.is-leaving{animation:.65s cubic-bezier(.33,1,.68,1) forwards cv-clear}@keyframes cv-clear{to{opacity:0}}.cv-unblur{animation:.65s cubic-bezier(.33,1,.68,1) both cv-unblur}@keyframes cv-unblur{0%{filter:blur(3px);opacity:.85}to{filter:blur();opacity:1}}@media (prefers-reduced-motion:reduce){.cv-veil.is-leaving,.cv-unblur{animation-duration:1ms}}.cv-inspector{transition:transform .26s cubic-bezier(.22,1,.36,1);transform:translate(100%)}.cv-inspector[data-open]{transform:none}@media (prefers-reduced-motion:reduce){.cv-inspector{transition:none}}.cv-el-hover{background:#f973161f;box-shadow:inset 0 0 0 1px #f97316bf}.cv-el-sel{box-shadow:inset 0 0 0 1.5px var(--cv-accent)}.cv-el-label{background:var(--cv-accent-strong);color:#fff;font-family:var(--font-geist-mono),monospace;white-space:nowrap;border-radius:4px;margin-top:6px;padding:1px 6px;font-size:10px;line-height:16px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.cv-sheet{transform-origin:50% 100%;animation:.22s cubic-bezier(.22,1,.36,1) cv-sheet-in}@keyframes cv-sheet-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}@media (prefers-reduced-motion:reduce){.cv-sheet{animation:none}}.cv-tip{color:#ececec;font-family:var(--font-geist-sans),system-ui,sans-serif;transform-origin:var(--transform-origin);background:#0f0f0f;border-radius:6px;align-items:center;gap:8px;padding:5px 8px;font-size:11px;line-height:14px;transition:opacity .12s ease-out,scale .12s ease-out;display:flex;box-shadow:0 0 0 1px #ffffff14,0 6px 20px #00000059}.cv-tip[data-starting-style],.cv-tip[data-ending-style]{opacity:0;scale:.96}.cv-tip[data-instant]{transition:none}.cv-kbd{align-items:center;gap:3px;font-family:ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:10px;line-height:1;display:inline-flex}.cv-kbd kbd{background:var(--cv-kbd,#ffffff12);min-width:16px;height:16px;box-shadow:inset 0 -1px 0 var(--cv-lit,#ffffff0f);color:var(--cv-kbd-ink,#d6d6d6);font:inherit;border-radius:4px;place-items:center;padding:0 4px;display:inline-grid}.cv-kbd-text{color:var(--cv-mute,#8e8e8e)}[data-craft-stage]{--color-divider:#0000001a}@media (min-width:1024px){.cv-corner{background-image:linear-gradient(var(--cv-line),var(--cv-line)),linear-gradient(var(--cv-panel),var(--cv-panel));background-position:right -1px top,right -272px top;background-repeat:no-repeat;background-size:1px 100%,272px 100%;transition:background-position .26s cubic-bezier(.22,1,.36,1)}.cv-corner[data-open]{background-position:right 271px top,right 0 top;width:272px}}@media (min-width:1024px) and (prefers-reduced-motion:reduce){.cv-corner{transition:none}}.cv-blend{color:#fff;mix-blend-mode:difference}.cv-raised{background:var(--cv-chip);box-shadow:inset 0 1px 0 var(--cv-lit),0 0 0 1px var(--cv-ring),0 1px 2px var(--cv-drop)}.cv-raised-float{box-shadow:inset 0 1px 0 var(--cv-lit),0 0 0 1px var(--cv-ring),0 1px 2px var(--cv-drop),0 12px 32px -8px var(--cv-drop)}.cv-raised-accent{background:linear-gradient(#f9731629,#f973161a),var(--cv-chip);color:var(--cv-accent);box-shadow:inset 0 1px 0 #fdba742e,0 0 0 1px var(--cv-ring),0 1px 2px var(--cv-drop)}.cv-raised-accent.cv-row{color:var(--cv-ink);box-shadow:inset 0 1px #fdba7424,inset 0 0 0 1px #f9731638}.cv-row-hover:hover{background:#ffffff0a}.cv-row-hover:active{background:#ffffff0f}html:has(.cv-app){overscroll-behavior:none;overflow:hidden}html:has(.cv-app) body{overscroll-behavior:none;overflow:hidden}.cv-app{touch-action:none}.cv-app .overflow-y-auto{touch-action:pan-y}.cv-drawer{box-shadow:0 0 0 1px var(--cv-ring),16px 0 40px -12px var(--cv-drop);animation:.22s cubic-bezier(.22,1,.36,1) cv-drawer-in}@keyframes cv-drawer-in{0%{opacity:0;transform:translate(-12px)}}@media (prefers-reduced-motion:reduce){.cv-drawer{animation:none}}.cv-gist-sheet{box-shadow:inset 0 1px #ffffff0f,0 -1px #0006,0 -16px 40px -12px #0000008c}.cv-grabber{background:linear-gradient(#f97316e6,#ffffff4d)}.cv-gist-sheet footer{padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}.cv-gist-sheet:not(:has(footer)){padding-bottom:env(safe-area-inset-bottom)}@media (prefers-reduced-motion:reduce){.cv-gist-sheet{animation:none}}.cv-veil:has(.cv-still):after{content:"";opacity:.14;mix-blend-mode:overlay;pointer-events:none;background:url(/noise.svg) 0 0/200px 200px;position:absolute;inset:0}.cv-dim{animation:.2s ease-out cv-dim-in}@keyframes cv-dim-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.cv-dim{animation:none}}.cv-phone-only{display:none!important}@media (max-width:767px),(max-height:500px) and (pointer:coarse){.cv-desktop-only{display:none!important}.cv-corner{z-index:10}.cv-phone-only{display:flex!important}.cv-world{z-index:0}.cv-overlay{z-index:1}.cv-corner,.cv-tabs,.cv-phone-nav{transform:translateZ(0)}}@media (hover:hover){.cv-app [data-gist]:hover{background:#f973160d;box-shadow:inset 0 0 0 1px #f973168c}}.cv-app [data-gist]:focus-visible{background:#f973160f;outline:none;box-shadow:inset 0 0 0 1.5px #f97316cc}.cv-led-on{fill:#f97316;animation:7s ease-in-out infinite cv-led-sweep;animation-delay:calc(1.6s + var(--c,0)*40ms)}.cv-led[data-boot] .cv-led-on{animation:1ms step-end backwards cv-led-boot;animation-delay:calc(.12s + var(--c,0)*18ms)}@keyframes cv-led-boot{0%{fill:#f9731621}}@keyframes cv-led-sweep{0%,9%,to{fill:#f97316}3%{fill:#ffd2a8}}.cv-led:not([data-mode=name]) .cv-led-on{animation:none}.cv-led[data-mode=wipe] .cv-led-on{animation:.9s ease-in-out both cv-led-wipe;animation-delay:calc(var(--c,0)*25ms)}@keyframes cv-led-wipe{0%,to{fill:#f97316}35%,55%{fill:#f9731621}}@media (prefers-reduced-motion:reduce){.cv-led-on{animation:none}}.cv-led-off{fill:#f9731621}.cv-led{filter:drop-shadow(0 0 2px #f973168c)}.cv-island-settle{transition-property:transform}.cv-raised [role=toolbar] button,[role=toolbar][aria-label=Tools] button:not([data-grip]){cursor:pointer}.cv-island-ghost{background:#f973160f;border:1.5px dashed #f97316b3}@media (prefers-reduced-motion:reduce){.cv-island-settle,.cv-island-ghost{transition:none}}.cv-comment-pin{width:calc(32px*var(--s));height:calc(32px*var(--s));translate:calc((var(--fx) + var(--fw))*var(--k,1) + var(--x,0px) - 6px*var(--s))calc(var(--fy)*var(--k,1) + var(--y,0px) - 100% + 6px*var(--s));opacity:var(--fade);will-change:translate;pointer-events:auto;cursor:pointer;box-shadow:0 1px 3px var(--cv-drop),0 0 0 1px var(--cv-ring);background:#fff;border-radius:999px 999px 999px 0;place-items:center;transition:scale .15s ease-out,box-shadow .15s ease-out;display:grid}.cv-comment-pin img{width:calc(26px*var(--s));height:calc(26px*var(--s));border-radius:999px}@media (hover:hover){.cv-comment-pin:hover{scale:1.08}}.cv-comment-pin:active{scale:.96}.cv-comment-pin[data-popup-open]{box-shadow:0 1px 3px var(--cv-drop),0 0 0 2px var(--cv-accent)}@media (max-width:767px){.cv-comment-pin{translate:calc((var(--fx) + var(--fw))*var(--k,1) + var(--x,0px) - 100% - 12px)calc(var(--fy)*var(--k,1) + var(--y,0px) + 12px)}}.cv-comment-card{background:var(--cv-panel,#1e1e1e);width:min(240px,100vw - 24px);color:var(--cv-ink,#ececec);transform-origin:var(--transform-origin);border-radius:12px;padding:10px 12px;font-size:12px;line-height:1.45;transition:opacity .16s cubic-bezier(.23,1,.32,1),scale .16s cubic-bezier(.23,1,.32,1);box-shadow:inset 0 1px #ffffff0f,0 0 0 1px #0006,0 8px 24px -12px #00000080}.cv-comment-card[data-starting-style],.cv-comment-card[data-ending-style]{opacity:0;scale:.96}@media (prefers-reduced-motion:reduce){.cv-comment-card{transition:opacity .12s linear}.cv-comment-card[data-starting-style],.cv-comment-card[data-ending-style]{scale:1}}.cv-comment-head{margin-bottom:2px;font-weight:600;display:block}.cv-hint{pointer-events:none;opacity:0;transition:opacity .2s ease-out;position:absolute;inset:0;overflow:hidden}.cv-hint[data-on]{opacity:1;transition-duration:.6s}.cv-hint-chip{z-index:10;background:var(--cv-chip);width:36px;height:36px;color:var(--cv-ink);box-shadow:inset 0 1px 0 var(--cv-lit),0 0 0 1px var(--cv-ring),0 4px 12px var(--cv-drop);border-radius:999px;place-items:center;margin:-18px 0 0 -18px;transition:translate .22s ease-out,color .3s ease-out,box-shadow .3s ease-out;animation:.2s ease-out cv-hint-in;display:grid;position:absolute;top:0;left:0}.cv-hint-chip[data-still]{transition:none}@property --charge{syntax:"<number>";inherits:false;initial-value:0}.cv-hint-chip:before{content:"";border-radius:inherit;background:conic-gradient(var(--cv-accent)calc(var(--charge)*1turn),transparent 0);pointer-events:none;transition:--charge .36s ease-out;position:absolute;inset:-3px;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px))}.cv-hint-chip[data-lit]{color:var(--cv-accent);box-shadow:inset 0 1px 0 var(--cv-lit),0 0 0 1px var(--cv-ring),0 0 18px #f9731673}.cv-hint-chip[hidden]{display:none}.cv-hint-chip svg{rotate:var(--a,0deg);transition:rotate .9s cubic-bezier(.34,1.3,.64,1)}.cv-hint-chip[data-still] svg{transition:none}@keyframes cv-hint-in{0%{opacity:0;scale:.8}}@media (prefers-reduced-motion:reduce){.cv-hint{transition:none}.cv-hint-chip,.cv-hint-chip svg{transition:none;animation:none}}
