:root{color-scheme:light}html[data-theme=dark]{color-scheme:dark}html[data-theme=dark] body{--token-341b58e0-d728-43ce-a1dc-e77a522cab4f: #0f1116;--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2: #171a21;--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd: #1e222b;--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5: #2c323d;--token-8d85ac4c-48a8-4cd1-a641-810c723e95b1: #7c8593;--token-94d217a4-b19e-496f-a9f0-41c83f611b07: #a7b0bd;--token-9aa8d99c-a5bb-4541-a292-62e252d963bf: #d0d7e1;--token-4f4ed186-9023-4858-830a-5202d69249c1: #f2f5f9;--token-1892785e-8581-4826-b411-015017430ad3: #2fb3da;--token-29f9695a-09e2-4c55-ace7-e9873233e207: #dda42a;--token-5572d352-4df4-4ec3-ad7e-a66a084483f0: #2aa572;--token-e22e0fe6-83a6-4381-a625-c6f173619c49: #d02454;--token-3b25897c-a78c-4fb0-9a93-831975a769c1: #8fcfb4;--token-a40bc7b7-fed8-4930-b9f7-5dc39bc097a2: #92d6ea;--token-221f5458-30ad-42f0-b005-7c3d9fe30e8d: #efaec2;--token-cd9da077-16e0-46f3-9a80-6bf4c2a79928: #e6cf95;--token-35988afc-fafd-4260-9962-57ff14cb1fea: #522e29}html[data-theme=dark] [style*=--token-1892785e-8581-4826-b411-015017430ad3],html[data-theme=dark] [style*=--token-29f9695a-09e2-4c55-ace7-e9873233e207],html[data-theme=dark] [style*=--token-5572d352-4df4-4ec3-ad7e-a66a084483f0],html[data-theme=dark] [style*=--token-e22e0fe6-83a6-4381-a625-c6f173619c49],html[data-theme=dark] [style*=--token-3b25897c-a78c-4fb0-9a93-831975a769c1],html[data-theme=dark] [style*=--token-a40bc7b7-fed8-4930-b9f7-5dc39bc097a2],html[data-theme=dark] [style*=--token-221f5458-30ad-42f0-b005-7c3d9fe30e8d],html[data-theme=dark] [style*=--token-cd9da077-16e0-46f3-9a80-6bf4c2a79928]{--token-4f4ed186-9023-4858-830a-5202d69249c1: #101317}.theme-toggle{width:32px;height:32px;padding:0;border:0;border-radius:32px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;background:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #ededed);color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);transition:background .16s ease-out,transform .16s ease-out;flex:none}.theme-toggle:hover{background:var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)}.theme-toggle:active{transform:scale(.92)}.theme-toggle:focus-visible{outline:2px solid var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0);outline-offset:2px}.theme-toggle svg{width:16px;height:16px;display:block}@media(prefers-reduced-motion:reduce){.theme-toggle{transition:none}}[data-framer-name=Logo] [data-code-component-plugin-id]{background-color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);-webkit-mask-image:url(/images/logo.svg);mask-image:url(/images/logo.svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}[data-framer-name=Logo] [data-code-component-plugin-id] svg{display:none}[data-framer-name=Logo]{cursor:pointer}.page-wipe{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147482000;overflow:hidden;pointer-events:auto}.page-wipe__panel{position:absolute;top:-25vh;left:-25vw;width:150vw;height:150vh;transform:translate3d(var(--from-x),var(--from-y),0) rotate(var(--from-rotate));will-change:transform;backface-visibility:hidden;contain:paint;background-image:linear-gradient(to right,rgba(17,18,18,.11) 1px,transparent 1px),linear-gradient(to bottom,rgba(17,18,18,.11) 1px,transparent 1px);background-size:100px 100px;background-position:center}@media(max-width:640px){.page-wipe__panel{background-size:64px 64px}.page-wipe__to{letter-spacing:.03em}}.page-wipe[data-phase=cover] .page-wipe__panel,.page-wipe[data-phase=hold] .page-wipe__panel{animation:panel-in .9s cubic-bezier(.16,.84,.26,1) var(--delay-in, 0ms) both}.page-wipe[data-phase=reveal] .page-wipe__panel{animation:panel-out var(--out-ms, .9s) cubic-bezier(.4,0,.7,.15) both}@keyframes panel-in{0%{transform:translate3d(var(--from-x),var(--from-y),0) rotate(var(--from-rotate))}to{transform:translateZ(0) rotate(0)}}@keyframes panel-out{0%{transform:translateZ(0) rotate(0)}to{transform:translate3d(var(--to-x),var(--to-y),0) rotate(var(--to-rotate))}}.page-wipe__stage{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;display:grid;justify-items:center;gap:clamp(14px,4vw,30px);width:min(78vw,380px);color:#111212;font-family:DM Mono,ui-monospace,monospace;opacity:0}.page-wipe[data-phase=hold] .page-wipe__stage{animation:stage-in .32s ease-out forwards}.page-wipe[data-phase=reveal] .page-wipe__stage{opacity:1;animation:stage-out .2s ease-in forwards}.page-wipe__mark{display:block;width:clamp(84px,26vw,168px)}.page-wipe__mark svg{display:block;width:100%;height:auto;overflow:visible}html[data-hero=hold] [data-framer-name="Hero Section"]{display:none!important}.page-wipe__dimension{display:grid;justify-items:center;gap:10px;width:100%;opacity:0}.page-wipe[data-phase=hold] .page-wipe__dimension,.page-wipe[data-phase=reveal] .page-wipe__dimension{animation:dimension-in .4s ease-out .9s forwards}.page-wipe__rule{position:relative;width:100%;height:1px;background:#1112124d}.page-wipe__rule:before,.page-wipe__rule:after{content:"";position:absolute;top:-4px;width:1px;height:9px;background:#1112124d}.page-wipe__rule:before{left:0}.page-wipe__rule:after{right:0}.page-wipe__to{font-family:Flux Variable,DM Mono,ui-monospace,monospace;font-weight:1000;font-size:clamp(15px,3.6vw,26px);letter-spacing:.06em;max-width:100%;text-transform:uppercase;white-space:nowrap;overflow:hidden;width:0;border-right:2px solid currentColor}.page-wipe[data-phase=hold] .page-wipe__to,.page-wipe[data-phase=reveal] .page-wipe__to{animation:type-to .62s steps(var(--chars, 12),end) 1.02s forwards,caret .3s steps(1,end) 1.02s 8}@keyframes stage-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px))}to{opacity:1;transform:translate(-50%,-50%)}}@keyframes stage-out{0%{opacity:1}to{opacity:0}}@keyframes dimension-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes type-to{0%{width:0}to{width:var(--to-w, calc(var(--chars, 12) * (1ch + .06em)));max-width:100%}}@keyframes caret{0%,50%{border-right-color:currentColor}51%,to{border-right-color:transparent}}.page-fade-in{animation:page-fade-in .36s ease-out}@keyframes page-fade-in{0%{opacity:.35}to{opacity:1}}@media(prefers-reduced-motion:reduce){.page-wipe__panel,.page-wipe__stage,.page-wipe__dimension,.page-wipe__to,.page-fade-in{animation-duration:1ms!important;animation-delay:0ms!important}.page-wipe[data-phase=cover] .page-wipe__panel,.page-wipe[data-phase=hold] .page-wipe__panel{transform:translateZ(0) rotate(0)}}[data-framer-name=Loader]{display:none!important}@media(max-width:810px){[data-framer-name="Nav Sticky"]{position:fixed!important;left:50%!important;right:auto!important;top:auto!important;bottom:max(16px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:2147481000;box-shadow:0 12px 32px #00000047;transition:opacity .24s ease-out,transform .24s ease-out}html[data-nav-scope=out] [data-framer-name="Nav Sticky"]{opacity:0;transform:translate(-50%) translateY(160%);pointer-events:none}}html[data-theme=dark] [data-framer-name="Nav Sticky"]{background-color:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #1e222b)!important;border:1px solid var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #2c323d);box-shadow:0 12px 32px #00000073}html[data-theme=dark] [style*=--token-1892785e-8581-4826-b411-015017430ad3] .framer-form-input,html[data-theme=dark] [style*=--token-29f9695a-09e2-4c55-ace7-e9873233e207] .framer-form-input,html[data-theme=dark] [style*=--token-5572d352-4df4-4ec3-ad7e-a66a084483f0] .framer-form-input,html[data-theme=dark] [style*=--token-e22e0fe6-83a6-4381-a625-c6f173619c49] .framer-form-input,html[data-theme=dark] [style*=--token-3b25897c-a78c-4fb0-9a93-831975a769c1] .framer-form-input,html[data-theme=dark] [style*=--token-a40bc7b7-fed8-4930-b9f7-5dc39bc097a2] .framer-form-input,html[data-theme=dark] [style*=--token-221f5458-30ad-42f0-b005-7c3d9fe30e8d] .framer-form-input,html[data-theme=dark] [style*=--token-cd9da077-16e0-46f3-9a80-6bf4c2a79928] .framer-form-input{--framer-input-placeholder-color: rgba(16, 19, 23, .5)}.contact-reply{margin:56px 0 0;text-align:center;font-family:DM Mono,ui-monospace,monospace;font-size:13px;line-height:1.4;letter-spacing:.02em;color:#101317bf}.contact-reply[data-tone=busy]{opacity:.6}.contact-reply[data-tone=ok]{color:#1c7a4e}.contact-reply[data-tone=error]{color:#b3123c}.wipe-trace{position:fixed;left:0;right:0;bottom:0;z-index:2147483000;margin:0;padding:8px 10px;max-height:45vh;overflow:auto;background:#101317;color:#d7f5c8;font-family:ui-monospace,monospace;font-size:10px;line-height:1.45;white-space:pre;pointer-events:none}html[data-route=playground],html[data-route=playground] body{overflow:hidden;overscroll-behavior:none}html[data-route=playground] [data-framer-name="Header + Line"]{z-index:60}.board{position:fixed;top:var(--board-top, 64px);right:0;bottom:0;left:0;z-index:40;display:flex;flex-direction:column;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff)}.board__canvas{position:relative;flex:1;min-height:0}.board__canvas .excalidraw{--ui-font: "DM Mono", ui-monospace, monospace;height:100%}.board__canvas{--dot-gap: 24px;--dot-size: 1.4px;--dot-x: 0px;--dot-y: 0px;background-color:var(--paper, var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff));background-image:radial-gradient(circle at var(--dot-size) var(--dot-size),var(--paper-dots, var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)) var(--dot-size),transparent 0);background-size:var(--dot-gap) var(--dot-gap);background-position:var(--dot-x) var(--dot-y)}.board .board__canvas .App-toolbar-container,.board .board__canvas .layer-ui__wrapper__top-right,.board .board__canvas .HintViewer,.board .board__canvas .App-menu_top__left,.board .board__canvas .help-icon,.board .board__canvas .layer-ui__wrapper__footer-right,.board .board__canvas .footer-center,.board .board__canvas .welcome-screen-center{display:none!important}.board .board__canvas .App-menu_bottom{bottom:18px}.board .board__canvas .App-menu_bottom .Island,.board .board__canvas .App-menu_bottom .zoom-actions,.board .board__canvas .App-menu_bottom .undo-redo-buttons{border-radius:13px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff)!important;box-shadow:0 2px 6px #0000001a,0 12px 32px #00000029!important}html[data-theme=dark] .board .board__canvas .App-menu_bottom .Island,html[data-theme=dark] .board .board__canvas .App-menu_bottom .zoom-actions,html[data-theme=dark] .board .board__canvas .App-menu_bottom .undo-redo-buttons{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21)!important;box-shadow:0 2px 6px #00000080,0 12px 32px #0000008c!important}.board .board__canvas .App-menu_bottom button{background:transparent!important;border-radius:9px}.board .board__canvas .App-menu_bottom button:hover{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1)!important}.figbar{overflow:visible;position:absolute;left:50%;bottom:20px;z-index:7;display:flex;align-items:center;gap:2px;padding:7px 10px;transform:translate(-50%);border-radius:15px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);box-shadow:0 2px 6px #0000001a,0 12px 32px #00000029}html[data-theme=dark] .figbar{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21);box-shadow:0 2px 6px #00000080,0 12px 32px #0000008c}.figbar__tool{position:relative;display:grid;place-items:center;width:40px;height:40px;padding:0;border:0;border-radius:11px;cursor:pointer;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);background:transparent;transition:background .12s ease-out,transform .12s ease-out}.figbar__tool svg{width:24px;height:24px;display:block}.figbar__tool:hover{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1)}html[data-theme=dark] .figbar__tool:hover{background:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #1e222b)}.figbar__tool:active{transform:scale(.92)}.figbar__tool--on,html[data-theme=dark] .figbar__tool--on{color:#fff;background:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.figbar__tool--on:hover{background:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0);filter:brightness(.95)}.figbar__tool:after,.figbar__option:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%) translateY(4px);padding:5px 9px;border-radius:7px;font-family:DM Mono,ui-monospace,monospace;font-size:11px;letter-spacing:.02em;white-space:nowrap;color:#f2f5f9;background:#101317eb;opacity:0;pointer-events:none;transition:opacity .12s ease-out,transform .12s ease-out}.figbar__tool:hover:after,.figbar__tool:focus-visible:after,.figbar__option:hover:after,.figbar__option:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.figbar__group:has(.figbar__menu) .figbar__tool:after{display:none}.figbar__option{position:relative}.figbar__split{width:1px;height:26px;margin:0 4px;background:var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)}.figbar__caret{position:absolute;right:6px;bottom:6px;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid currentColor;opacity:.55}.figbar__menu{position:absolute;left:50%;bottom:calc(100% + 10px);transform:translate(-50%);display:grid;gap:2px;padding:6px;border-radius:12px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);box-shadow:0 2px 6px #0000001a,0 12px 32px #0000002e}html[data-theme=dark] .figbar__menu{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21)}.figbar__menu{display:flex;gap:2px}.figbar__option{display:grid;place-items:center;width:38px;height:38px;padding:0;border:0;border-radius:9px;cursor:pointer;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);background:transparent}.figbar__option svg{width:22px;height:22px;display:block}.figbar__option:hover{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1)}html[data-theme=dark] .figbar__option:hover{background:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #1e222b)}.figbar__option--on{color:#101317;background:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.figbar__group{position:relative}.board__actions{position:absolute;right:16px;top:14px;z-index:7;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.board__button{padding:9px 14px;border:1px solid var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7);border-radius:10px;cursor:pointer;font-family:DM Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.04em;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1);box-shadow:0 6px 18px #0000001f;transition:transform .14s ease-out,background .14s ease-out}.board__button:hover{background:var(--token-a40bc7b7-fed8-4930-b9f7-5dc39bc097a2, #a4e5f8)}.board__button:active{transform:scale(.96)}.board__button--quiet{color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}.board__notice{position:absolute;left:50%;bottom:22px;z-index:6;transform:translate(-50%);margin:0;padding:8px 14px;border-radius:999px;font-family:DM Mono,ui-monospace,monospace;font-size:12px;color:#f2f5f9;background:#101317db;pointer-events:none}.board__notice--fixed{bottom:auto;top:14px;background:var(--token-29f9695a-09e2-4c55-ace7-e9873233e207, #ecb22e);color:#101317}@media(max-width:810px){.figbar{left:8px;right:8px;bottom:10px;transform:none;justify-content:space-between;overflow-x:auto;scrollbar-width:none;border-radius:14px}.figbar::-webkit-scrollbar{display:none}.figbar__tool{width:38px;height:38px;flex:0 0 auto}.figbar__split{margin:0 2px}.board__actions{right:12px;top:10px;gap:6px}.board__button{padding:8px 10px;font-size:11px}}.board__hint{position:absolute;left:50%;top:44%;z-index:2;width:min(560px,84vw);text-align:center;transform:translate(-50%,-50%);pointer-events:none;animation:hint-in .7s ease-out both}.board__hint-line{margin:0 0 12px;font-family:Flux Variable,DM Mono,ui-monospace,monospace;font-weight:1000;font-size:clamp(22px,3.6vw,34px);letter-spacing:.02em;text-transform:uppercase;color:var(--token-9aa8d99c-a5bb-4541-a292-62e252d963bf, #454747)}.board__hint-note{margin:0;font-family:DM Mono,ui-monospace,monospace;font-size:13px;line-height:1.8;letter-spacing:.02em;color:var(--token-8d85ac4c-48a8-4cd1-a641-810c723e95b1, #aaabab)}@keyframes hint-in{0%{opacity:0;transform:translate(-50%,calc(-50% + 10px))}to{opacity:1;transform:translate(-50%,-50%)}}.palette{position:absolute;left:50%;bottom:78px;z-index:7;display:flex;align-items:center;gap:6px;transform:translate(-50%);padding:6px 8px;animation:palette-in .16s ease-out both;border-radius:13px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);box-shadow:0 2px 6px #0000001a,0 10px 26px #00000024}html[data-theme=dark] .palette{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21);box-shadow:0 2px 6px #00000080,0 10px 26px #00000080}.palette__swatch{position:relative;width:22px;height:22px;padding:0;border:1px solid rgba(17,18,18,.18);border-radius:50%;cursor:pointer;background:var(--swatch, #111212);transition:transform .12s ease-out,box-shadow .12s ease-out}.palette__swatch:hover{transform:scale(1.12)}.palette__swatch--on{box-shadow:0 0 0 2px var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff),0 0 0 4px var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}html[data-theme=dark] .palette__swatch--on{box-shadow:0 0 0 2px var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21),0 0 0 4px var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.palette__swatch--paper{border-radius:6px}.palette__split{width:1px;height:18px;margin:0 2px;background:var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)}.palette__swatch:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%) translateY(4px);padding:4px 8px;border-radius:6px;font-family:DM Mono,ui-monospace,monospace;font-size:10px;white-space:nowrap;color:#f2f5f9;background:#101317eb;opacity:0;pointer-events:none;transition:opacity .12s ease-out,transform .12s ease-out}.palette__swatch:hover:after,.palette__swatch:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:810px){.palette{left:8px;right:8px;bottom:60px;transform:none;overflow-x:auto;scrollbar-width:none}.palette::-webkit-scrollbar{display:none}}@keyframes palette-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@keyframes palette-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.board__paper{position:absolute;left:14px;top:50%;z-index:7;display:flex;flex-direction:column;align-items:center;gap:6px;padding:7px 6px;transform:translateY(-50%);border-radius:12px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);box-shadow:0 2px 6px #0000001a,0 10px 26px #00000024}html[data-theme=dark] .board__paper{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21);box-shadow:0 2px 6px #00000080,0 10px 26px #00000080}.board__paper-split{width:16px;height:1px;background:var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)}.board__sheet{position:relative;display:grid;place-items:center;width:22px;height:22px;padding:0;border:1px solid rgba(17,18,18,.22);border-radius:6px;cursor:pointer;background:var(--sheet, #fff);transition:transform .12s ease-out}.board__sheet:hover{transform:scale(1.1)}.board__sheet--on{box-shadow:0 0 0 2px var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff),0 0 0 3.5px var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}html[data-theme=dark] .board__sheet--on{box-shadow:0 0 0 2px var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21),0 0 0 3.5px var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.board__sheet:after{content:attr(data-label);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(-4px);padding:4px 8px;border-radius:6px;font-family:DM Mono,ui-monospace,monospace;font-size:10px;white-space:nowrap;color:#f2f5f9;background:#101317eb;opacity:0;pointer-events:none;transition:opacity .12s ease-out,transform .12s ease-out}.board__sheet:hover:after,.board__sheet:focus-within:after{opacity:1;transform:translateY(-50%) translate(0)}@media(max-width:810px){.board__paper{left:12px;top:10px;flex-direction:row;transform:none}.board__paper-split{width:1px;height:16px}.board__sheet:after{left:50%;top:calc(100% + 8px);transform:translate(-50%) translateY(-4px)}.board__sheet:hover:after,.board__sheet:focus-within:after{transform:translate(-50%) translateY(0)}}.palette__fill{display:flex;gap:2px;padding:2px;border-radius:9px;background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1)}html[data-theme=dark] .palette__fill{background:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #1e222b)}.palette__mode{position:relative;display:grid;place-items:center;width:26px;height:22px;padding:0;border:0;border-radius:7px;cursor:pointer;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);background:transparent}.palette__mode svg{width:15px;height:15px;display:block}.palette__mode--on{color:#101317;background:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.palette__mode:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%) translateY(4px);padding:4px 8px;border-radius:6px;font-family:DM Mono,ui-monospace,monospace;font-size:10px;white-space:nowrap;color:#f2f5f9;background:#101317eb;opacity:0;pointer-events:none;transition:opacity .12s ease-out,transform .12s ease-out}.palette__mode:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.well{position:relative;display:inline-flex}.well__swatch{position:relative;width:22px;height:22px;padding:0;border:1px solid rgba(17,18,18,.2);border-radius:50%;cursor:pointer;background:var(--swatch, #111212);transition:transform .12s ease-out}.well--right .well__swatch{border-radius:6px}.well__swatch:hover{transform:scale(1.1)}.well__swatch--spectrum{background:linear-gradient(var(--swatch, transparent),var(--swatch, transparent)),conic-gradient(#e01e5a,#ecb22e,#2eb67d,#36c5f0,#7b61ff,#e01e5a)}.well__swatch:after{content:attr(data-label);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%) translateY(4px);padding:4px 8px;border-radius:6px;font-family:DM Mono,ui-monospace,monospace;font-size:10px;white-space:nowrap;color:#f2f5f9;background:#101317eb;opacity:0;pointer-events:none;transition:opacity .12s ease-out,transform .12s ease-out}.well--right .well__swatch:after{left:calc(100% + 10px);bottom:auto;top:50%;transform:translateY(-50%) translate(-4px)}.well__swatch:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.well--right .well__swatch:hover:after{opacity:1;transform:translateY(-50%) translate(0)}.well__panel{position:absolute;z-index:3;padding:10px;border-radius:11px;background:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);box-shadow:0 2px 6px #0000001f,0 12px 30px #0003}html[data-theme=dark] .well__panel{background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #171a21)}.well--up .well__panel{left:50%;bottom:calc(100% + 10px);transform:translate(-50%)}.well--right .well__panel{left:calc(100% + 12px);top:50%;transform:translateY(-50%)}@media(max-width:810px){.figbar{left:8px;right:8px;bottom:max(8px,env(safe-area-inset-bottom));transform:none;flex-wrap:nowrap;justify-content:flex-start;gap:2px;padding:6px;border-radius:16px;overflow-x:auto;overflow-y:visible;scrollbar-width:none;-webkit-overflow-scrolling:touch}.figbar::-webkit-scrollbar{display:none}.figbar__tool,.figbar__group,.figbar__split{flex:0 0 auto}.figbar__tool{width:40px;height:40px}.figbar__tool svg{width:22px;height:22px}.figbar__tool:after,.board__sheet:after,.well__swatch:after,.palette__mode:after,.palette__swatch:after{display:none}.palette{left:8px;right:8px;bottom:68px;transform:none;animation-name:palette-rise;flex-wrap:nowrap;justify-content:flex-start;gap:6px;padding:7px;border-radius:14px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.palette::-webkit-scrollbar{display:none}.palette__swatch{width:26px;height:26px;flex:0 0 auto}.palette__split,.palette__opacity,.palette__fill,.well{flex:0 0 auto}.board__paper{left:8px;top:8px;flex-direction:row;gap:5px;padding:5px 6px;transform:none}.board__paper-split{width:1px;height:16px}.board__sheet{width:22px;height:22px}.board__actions{right:8px;top:8px;gap:4px}.board__button{padding:7px 9px;font-size:10px}.board .board__canvas .App-menu_bottom{left:8px;right:auto;bottom:auto;top:54px;transform:none}.board .board__canvas .App-menu_bottom .zoom-actions{display:none!important}.board__hint{top:34%;width:min(300px,84vw)}.board__hint-line{font-size:21px;margin-bottom:8px}.board__hint-note{font-size:11.5px;line-height:1.75}.well--up .well__panel,.well--right .well__panel,.figbar__menu{position:fixed;left:50%;top:auto;bottom:128px;transform:translate(-50%)}.picker{width:min(268px,80vw)}.picker__field{height:150px}.figbar__menu{padding:7px}.figbar__option{width:42px;height:42px}}@media(max-width:900px)and (max-height:460px){.board__hint{display:none}.figbar__tool{width:36px;height:36px}.palette{bottom:58px}.well--up .well__panel,.well--right .well__panel,.figbar__menu{bottom:108px}}.picker{width:208px;display:grid;gap:10px;touch-action:none}.picker__field{position:relative;height:132px;border-radius:9px;cursor:crosshair;background:linear-gradient(to top,#000,transparent),linear-gradient(to right,#fff,var(--hue, #f00))}.picker__rail{position:relative;height:12px;border-radius:999px;cursor:pointer;background:linear-gradient(to right,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.picker__handle{position:absolute;width:14px;height:14px;border:2px solid #fff;border-radius:50%;transform:translate(-50%,-50%);background:var(--handle, #000);box-shadow:0 1px 4px #00000073;pointer-events:none}.picker__rail .picker__handle{top:50%}.picker__row{display:flex;align-items:center;gap:8px}.picker__drop{width:26px;height:26px;flex:none;border-radius:7px;background:var(--drop, #000);box-shadow:inset 0 0 0 1px #11121233}.picker__hex{display:flex;align-items:center;gap:3px;flex:1;padding:6px 8px;border:1px solid var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7);border-radius:8px;font-family:DM Mono,ui-monospace,monospace;font-size:12px;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}.picker__hex input{width:100%;min-width:0;padding:0;border:0;outline:none;background:transparent;font:inherit;letter-spacing:.06em;text-transform:lowercase;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212)}.picker__presets{display:flex;gap:5px}.picker__preset{width:20px;height:20px;padding:0;border:1px solid rgba(17,18,18,.18);border-radius:50%;cursor:pointer;background:var(--swatch, #000);transition:transform .12s ease-out}.picker__preset:hover{transform:scale(1.15)}@media(max-width:810px){.figbar{padding:6px;gap:0;bottom:max(10px,env(safe-area-inset-bottom))}.figbar__tool{width:38px;height:38px}.figbar__tool svg{width:21px;height:21px}.figbar__tool:after,.board__sheet:after,.well__swatch:after,.palette__mode:after,.palette__swatch:after{display:none}.palette{left:8px;right:8px;bottom:62px;padding:6px;gap:5px}.palette__swatch{width:24px;height:24px;flex:0 0 auto}.board__actions{right:10px;top:8px;gap:5px}.board__paper{left:10px;top:8px;padding:5px 6px}.board__sheet{width:20px;height:20px}.board__hint{top:40%;width:min(320px,86vw)}.board__hint-line{font-size:22px}.board__hint-note{font-size:12px;line-height:1.7}.well--up .well__panel,.figbar__menu{position:fixed;left:50%;bottom:108px;transform:translate(-50%)}.well--right .well__panel{position:fixed;left:50%;top:auto;bottom:108px;transform:translate(-50%)}.picker{width:min(260px,78vw)}.picker__field{height:148px}.board .board__canvas .App-menu_bottom{bottom:auto;top:8px;left:50%;transform:translate(-50%)}}@media(max-width:810px)and (max-height:480px){.palette{bottom:56px}.board__hint{display:none}}.palette__opacity{position:relative;display:flex;align-items:center;gap:7px}.palette__opacity input{width:74px;height:4px;margin:0;padding:0;border-radius:999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;background:linear-gradient(to right,var(--ink, #111212) var(--alpha, 100%),var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7) var(--alpha, 100%))}.palette__opacity input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border:2px solid #fff;border-radius:50%;background:var(--ink, #111212);box-shadow:0 1px 4px #00000059;cursor:grab}.palette__opacity input::-moz-range-thumb{width:14px;height:14px;border:2px solid #fff;border-radius:50%;background:var(--ink, #111212);box-shadow:0 1px 4px #00000059;cursor:grab}.palette__opacity-value{min-width:34px;font-family:DM Mono,ui-monospace,monospace;font-size:11px;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}@media(max-width:810px){.palette__opacity input{width:58px}.palette__opacity-value{display:none}}.palette__widths{display:flex;gap:2px;padding:2px;border-radius:9px;background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1)}html[data-theme=dark] .palette__widths{background:var(--token-eee4728f-06ef-4d99-9d02-ac8944e7f6dd, #1e222b)}.palette__nib{width:15px;height:var(--nib, 2px);border-radius:999px;background:currentColor}@media(max-width:810px){.palette__widths{flex:0 0 auto}}.lock{position:fixed;z-index:50;overflow:hidden;top:0;left:0;width:100%;height:0}html[data-locked] [data-framer-name="Header + Line"]{z-index:60}.lock__glass{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff85;backdrop-filter:blur(15px) saturate(.85);-webkit-backdrop-filter:blur(15px) saturate(.85);animation:lock-frost .32s ease-out both}html[data-theme=dark] .lock__glass{background:#0f111694}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.lock__glass{background:#fffffff0}html[data-theme=dark] .lock__glass{background:#0f1116f2}}.lock__stage{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px}.lock__card{position:relative;width:min(384px,90vw);padding:26px 26px 20px 36px;border-radius:18px;border:1px solid var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7);color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);background-color:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);background-image:radial-gradient(circle at 1px 1px,var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7) 1px,transparent 0);background-size:16px 16px;box-shadow:0 2px 8px #00000014,0 24px 56px #0000002e;animation:lock-land .32s cubic-bezier(.2,.9,.3,1) both}html[data-theme=dark] .lock__card{box-shadow:0 2px 8px #00000080,0 24px 56px #0000008c}.lock__rule{position:absolute;left:18px;top:16px;bottom:16px;width:2px;border-radius:2px;background:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.lock__mark{display:block;width:42px;height:auto;margin-bottom:16px;overflow:visible;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212)}.lock__body{stroke-dasharray:220;animation:lock-draw .62s 60ms ease-out both}.lock__shackle path{stroke-dasharray:220;animation:lock-draw .52s ease-out both}.lock__shackle{transform-origin:46px 34px;transition:transform .46s cubic-bezier(.2,1.5,.35,1)}.lock__pin{animation:lock-appear .26s .56s ease-out both}.lock__title{margin:0 0 8px;font-family:Flux Variable,DM Mono,ui-monospace,monospace;font-size:21px;line-height:1.25;letter-spacing:-.01em;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212)}.lock__note{margin:0 0 18px;font-family:DM Mono,ui-monospace,monospace;font-size:11.5px;line-height:1.8;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}.lock__form{display:flex;align-items:center;gap:8px}.lock__field{flex:1;min-width:0;display:flex;align-items:center;gap:8px;padding:9px 10px 9px 12px;border-radius:11px;border:1px solid transparent;background:var(--token-f3fe21e3-0094-4480-b0bd-3d122b4528c2, #f1f1f1);transition:border-color .14s ease-out}.lock__field:focus-within{border-color:var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0)}.lock__input{flex:1;min-width:0;padding:0;border:0;outline:none;background:transparent;font-family:DM Mono,ui-monospace,monospace;font-size:13px;letter-spacing:.16em;color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212)}.lock__input::placeholder{letter-spacing:.08em;color:var(--token-8d85ac4c-48a8-4cd1-a641-810c723e95b1, #aaabab)}.lock__peek{flex:none;padding:0;border:0;background:none;cursor:pointer;font-family:DM Mono,ui-monospace,monospace;font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}.lock__peek:hover{color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212)}.lock__go{flex:none;padding:11px 16px;border:0;border-radius:11px;cursor:pointer;font-family:DM Mono,ui-monospace,monospace;font-size:12px;letter-spacing:.04em;color:var(--token-341b58e0-d728-43ce-a1dc-e77a522cab4f, #fff);background:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);transition:transform .14s ease-out,opacity .14s ease-out}.lock__go:active{transform:scale(.96)}.lock__go:disabled{opacity:.4;cursor:not-allowed}.lock__go:focus-visible,.lock__peek:focus-visible{outline:2px solid var(--token-1892785e-8581-4826-b411-015017430ad3, #36c5f0);outline-offset:2px}.lock__says{margin:13px 0 0;min-height:15px;font-family:DM Mono,ui-monospace,monospace;font-size:10.5px;line-height:1.5;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777)}.lock__card--nope{animation:lock-shake .38s ease-in-out both}.lock__card--nope .lock__shackle{animation:lock-rattle .38s ease-in-out both}.lock__card--open{animation:lock-leave .62s .18s cubic-bezier(.4,0,.9,.4) both}.lock__card--open .lock__shackle{transform:translateY(-9px) rotate(-18deg)}.lock:has(.lock__card--open) .lock__glass{animation:lock-clear .62s .12s ease-in both}@keyframes lock-frost{0%{opacity:0}to{opacity:1}}@keyframes lock-land{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes lock-draw{0%{stroke-dashoffset:220}to{stroke-dashoffset:0}}@keyframes lock-appear{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}@keyframes lock-shake{0%,to{transform:translate(0)}15%{transform:translate(-7px)}35%{transform:translate(6px)}55%{transform:translate(-4px)}75%{transform:translate(3px)}}@keyframes lock-rattle{0%,to{transform:rotate(0)}25%{transform:rotate(-5deg)}60%{transform:rotate(4deg)}}@keyframes lock-leave{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-6px) scale(.97)}}@keyframes lock-clear{0%{opacity:1}to{opacity:0}}@media(max-width:640px){.lock__card{width:min(340px,92vw);padding:22px 20px 18px 30px}.lock__title{font-size:19px}.lock__note{font-size:11px;margin-bottom:15px}.lock__form{flex-wrap:wrap}.lock__field,.lock__go{flex:1 0 100%}}@media(prefers-reduced-motion:reduce){.lock__glass,.lock__card,.lock__body,.lock__shackle path,.lock__pin,.lock__card--nope,.lock__card--nope .lock__shackle,.lock__card--open,.lock:has(.lock__card--open) .lock__glass{animation:none}.lock__shackle{transition:none}.lock__body,.lock__shackle path{stroke-dasharray:none}}.lock__back{display:inline-block;margin:14px 0 0;font-family:DM Mono,ui-monospace,monospace;font-size:11px;text-decoration:none;color:var(--token-94d217a4-b19e-496f-a9f0-41c83f611b07, #767777);border-bottom:1px solid var(--token-0aa568ec-3cf9-436c-a43a-7190c1309ca5, #c6c6c7)}.lock__back:hover{color:var(--token-4f4ed186-9023-4858-830a-5202d69249c1, #111212);border-bottom-color:currentColor}
