:where(.ik-plate){--ik-panel:#f1f1ef;--ik-top:#fbfbfa;--ik-front:#f6f6f4;--ik-side:#ededeb;--ik-well:#e9e9e6;--ik-line:#9b9b97;--ik-detail:#cdcdc9;--ik-live:#161616;--ik-ink:#8a8a85;--ik-ink-hi:#2a2a2a;--ik-screen:#e6e8e1;--ik-screen-ink:#22241f;--ik-border:#e6e6e3;--ik-ease:cubic-bezier(.32, .72, 0, 1);--ik-spring:cubic-bezier(.34, 1.56, .64, 1);--ik-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--ik-screen-font:var(--ik-mono)}:where(.dark,[data-theme=dark]) :where(.ik-plate:not([data-theme=light]):not([data-theme=system])),:where(.ik-plate[data-theme=dark]){--ik-panel:#202020;--ik-top:#262626;--ik-front:#232323;--ik-side:#1e1e1e;--ik-well:#1b1b1b;--ik-line:#5f5f5f;--ik-detail:#383838;--ik-live:#f2f2f2;--ik-ink:#7d7d7d;--ik-ink-hi:#e4e4e4;--ik-screen:#161815;--ik-screen-ink:#e9ece4;--ik-border:#2a2a2a}@media (prefers-color-scheme:dark){:where(.ik-plate[data-theme=system]){--ik-panel:#202020;--ik-top:#262626;--ik-front:#232323;--ik-side:#1e1e1e;--ik-well:#1b1b1b;--ik-line:#5f5f5f;--ik-detail:#383838;--ik-live:#f2f2f2;--ik-ink:#7d7d7d;--ik-ink-hi:#e4e4e4;--ik-screen:#161815;--ik-screen-ink:#e9ece4;--ik-border:#2a2a2a}}:where(.ik-plate){box-sizing:border-box;background:var(--ik-panel);border:1px solid var(--ik-border);border-radius:20px;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:6px;height:100%;padding:14px 16px;display:grid;position:relative}:where(.ik-plate>svg){touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;outline:none;width:100%;height:100%;min-height:0;display:block;overflow:visible}:where(.ik-plate:has(>svg:focus-visible)){outline:2px solid var(--ik-live);outline-offset:3px}:where(.ik-cap){font:500 10px/1.4 var(--ik-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ik-ink);flex-wrap:wrap;justify-content:space-between;gap:2px 14px;display:flex}:where(.ik-cap-hi){color:var(--ik-ink-hi);text-transform:none;letter-spacing:.03em;font-variant-numeric:tabular-nums}:where(.ik-face){fill:var(--ik-front);stroke:var(--ik-line);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linejoin:round;transition:stroke .26s var(--ik-ease), fill .26s var(--ik-ease)}:where(.ik-top){fill:var(--ik-top)}:where(.ik-tint){fill:var(--ik-side);stroke:none}:where(.ik-well){fill:var(--ik-well);stroke:var(--ik-detail);stroke-width:1px;vector-effect:non-scaling-stroke}:where(.ik-detail){fill:none;stroke:var(--ik-detail);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}:where(.ik-line){fill:none;stroke:var(--ik-line);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}:where(.ik-dash){fill:none;stroke:var(--ik-line);stroke-width:1px;stroke-dasharray:1 3;vector-effect:non-scaling-stroke;stroke-linecap:round;transition:opacity .26s var(--ik-ease)}:where(.ik-live){fill:none;stroke:var(--ik-live);stroke-width:1px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}:where(.ik-fill){fill:var(--ik-detail);stroke:none}:where(.ik-dot){fill:var(--ik-live);stroke:none}:where(.ik-label){fill:var(--ik-ink);font:600 8px/1 var(--ik-mono);letter-spacing:.08em;pointer-events:none}:where(.ik-screen){fill:var(--ik-screen);stroke:var(--ik-detail);stroke-width:1px;vector-effect:non-scaling-stroke}:where(.ik-screen-text){fill:var(--ik-screen-ink);font-family:var(--ik-screen-font);white-space:pre}:where(.ik-screen-line){fill:none;stroke:var(--ik-screen-ink);stroke-width:1.5px;vector-effect:non-scaling-stroke;stroke-linecap:round;stroke-linejoin:round}:where(.ik-thick){stroke-width:1.6px}:where(.ik-dim){opacity:.45}:where(.ik-press){cursor:pointer;outline:none}.ik-plate .ik-press:focus-visible{outline:none}:where(.ik-press:focus-visible) :where(.ik-face){stroke-width:2px}:where(.ik-press[aria-disabled=true]){cursor:default}:where(.ik-press>g){transition:transform .2s var(--ik-spring)}:where(.ik-press[data-down=true]:not(.ik-lift)>g){transition:transform 50ms ease-out;transform:translateY(3px)}:where(.ik-press[data-down=true],.ik-press:focus-visible,.ik-press[data-hot=true]) :where(.ik-face){stroke:var(--ik-live)}:where(.ik-press[data-down=true]) :where(.ik-face){transition-duration:0s}@media (hover:hover) and (pointer:fine){:where(.ik-press:not([aria-disabled=true]):hover) :where(.ik-top){stroke:var(--ik-live)}}:where(.ik-enter){animation:ik-enter .42s var(--ik-ease) both}:where(.ik-pulse){animation:1.8s ease-in-out infinite ik-pulse}:where(.ik-blink){animation:.24s steps(2,end) infinite ik-pulse}:where(.ik-float){animation:4.4s ease-in-out infinite ik-float}@keyframes ik-enter{0%{opacity:0;transform:translateY(3px)}}@keyframes ik-pulse{50%{opacity:.35}}@keyframes ik-float{50%{transform:translateY(-1.6px)}}:where(.ik-ripple,.ik-cursor,.ik-signal,.ik-flight){pointer-events:none}:where(.ik-ripple){transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite ik-ripple}:where(.ik-ripple rect,.ik-cursor-ring){fill:none;stroke:var(--ik-live);vector-effect:non-scaling-stroke}:where(.ik-plate svg[data-demo=press] .ik-press[data-hot=true]:not(.ik-lift)>g){transition:transform 60ms ease-out;transform:translateY(3px)}:where(.ik-cursor-arrow path){fill:var(--ik-top);stroke:var(--ik-ink-hi);stroke-linejoin:round;vector-effect:non-scaling-stroke}:where(.ik-cursor-ring){opacity:0}:where(.ik-cursor[data-phase=aim] .ik-cursor-arrow){animation:.32s cubic-bezier(.2,.8,.2,1) both ik-cursor-in}:where(.ik-cursor[data-phase=press] .ik-cursor-arrow){transition:transform 90ms ease-out;transform:scale(.86)}:where(.ik-cursor[data-phase=release] .ik-cursor-arrow){animation:ik-cursor-out .56s var(--ik-ease) both}:where(.ik-cursor[data-phase=release] .ik-cursor-ring){animation:ik-cursor-ring .52s var(--ik-ease) both}:where(.ik-signal){fill:none;stroke:var(--ik-live);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:22 130;stroke-dashoffset:24px;animation:.32s ease-in both ik-signal}:where(.ik-flight){opacity:0;animation:.52s cubic-bezier(.45,0,.55,1) forwards ik-flight}:where(.ik-flight-arc){animation:.52s forwards ik-arc;animation-delay:inherit;animation-duration:inherit}@keyframes ik-ripple{0%{opacity:.9;transform:none}70%,to{opacity:0;transform:scale(1.22)}}@keyframes ik-cursor-in{0%{opacity:0;transform:translate(22px,18px)}}@keyframes ik-cursor-out{0%{transform:scale(.86)}30%{opacity:1;transform:none}to{opacity:0;transform:translate(8px,7px)}}@keyframes ik-cursor-ring{0%{opacity:.9;transform:scale(.6)}to{opacity:0;transform:scale(2.8)}}@keyframes ik-signal{to{stroke-dashoffset:-102px}}@keyframes ik-flight{0%{opacity:1;transform:none}97%{opacity:1;transform:translateX(var(--ik-dx))}to{opacity:0;transform:translateX(var(--ik-dx))}}@keyframes ik-arc{0%{animation-timing-function:cubic-bezier(.3,.6,.5,1);transform:none}50%{transform:translateY(calc(var(--ik-dy) / 2 + var(--ik-lift)));animation-timing-function:cubic-bezier(.5,0,.7,.4)}to{transform:translateY(var(--ik-dy))}}.ik-plate:not([data-awake]) :is(.ik-pulse,.ik-blink,.ik-float,.ik-loop){animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){:where(.ik-plate) *{transition-duration:0s!important;transition-delay:0s!important;animation:none!important}}:where(.ik-sound-toggle){border:1px solid;border-color:color-mix(in srgb, currentColor 18%, transparent);min-height:30px;font:inherit;color:inherit;opacity:.6;cursor:pointer;background:0 0;border-radius:999px;align-items:center;gap:6px;padding:0 11px;font-size:12px;transition:opacity .15s,transform .12s;display:inline-flex}:where(.ik-sound-toggle[aria-pressed=true]),:where(.ik-sound-toggle:hover){opacity:1}:where(.ik-sound-toggle:active){transform:scale(.96)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#b8b8b8;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#262626;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100svh;margin:0}button{font:inherit}.homepage{place-items:center;width:min(100% - 32px,960px);min-height:100svh;margin:0 auto;padding:24px 0;display:grid}@property --float-strength{syntax:"<number>";inherits:true;initial-value:1}.flight-study{--float-strength:1;width:min(100%,800px);transition:--float-strength .7s ease-out}.flight-study.is-paused{--float-strength:0}.drone-plate.ik-plate{--ik-panel:#262626;--ik-top:#343434;--ik-front:#2d2d2d;--ik-side:#252525;--ik-well:#202020;--ik-line:#b8b8b8;--ik-detail:#707070;--ik-live:#dedede;background:0 0;border:0;border-radius:0;height:auto;padding:0;display:block}.drone-plate>svg{aspect-ratio:9/7;width:100%;height:auto}.battery{--ik-top:#242424;--ik-front:#1d1d1d;--ik-side:#171717}.survey-line{opacity:.45}.pad-guide{stroke-dasharray:3 5}.pad-ring-track{opacity:.35}.pad-signal{color:#4da3ff;pointer-events:none;transition:color .45s}.is-paused .pad-signal{color:#ff5454}.pad-signal-ring,.pad-signal-pulse{fill:none;stroke:currentColor;vector-effect:non-scaling-stroke}.pad-signal-ring{stroke-width:1.5px;filter:drop-shadow(0 0 2px)}.pad-signal-pulse{stroke-width:1px;opacity:0;transform-box:fill-box;transform-origin:50%}.flight-study[data-motion=flying] .pad-signal-pulse{animation:2.4s ease-out infinite pad-airborne-pulse}.flight-study[data-motion=landing] .pad-signal-pulse{animation:pad-landing-wave var(--travel-time) ease-out both}.flight-study[data-motion=taking-off] .pad-signal-pulse{animation:pad-takeoff-wave var(--travel-time) ease-out both}@keyframes pad-airborne-pulse{0%{opacity:.7;transform:scale(1)}80%,to{opacity:0;transform:scale(1.22)}}@keyframes pad-landing-wave{0%{opacity:0;transform:scale(1.22)}20%{opacity:.85}85%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1)}}@keyframes pad-takeoff-wave{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.22)}}.rotor-disc{fill:var(--ik-top);fill-opacity:.3;stroke-opacity:.65}.rotor-blade{fill:var(--ik-line);stroke:none;opacity:.75}.rotor-secondary{opacity:.45}.cast-shadow{fill:#000}.shadow-soft{opacity:.13}.shadow-core{opacity:.2}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drone-altitude{transform:translate(var(--flight-x), var(--flight-y));transition:transform var(--travel-time) cubic-bezier(.4, 0, .2, 1)}.is-paused .drone-altitude{transform:translate(var(--landed-x), var(--landed-y))}.shadow-altitude{transform-box:fill-box;transform-origin:50%;opacity:.8;transition:transform var(--travel-time) ease-in-out, opacity var(--travel-time) ease-in-out;transform:scale(1)}.is-paused .shadow-altitude{opacity:1;transform:scale(.65)}.drone-hover{animation:6s ease-in-out infinite hover}.ground-shadow{transform-origin:12px -1px;animation:6s ease-in-out infinite shadow}.propeller{animation:.7s linear infinite spin}.propeller-reverse{animation-direction:reverse}.is-landed .drone-hover,.is-landed .ground-shadow,.is-landed .propeller{animation-play-state:paused}@keyframes hover{0%,to{transform:translate(0, calc(4px * var(--float-strength))) rotate(calc(-1.1deg * var(--float-strength)))}25%{transform:translate(calc(3px * var(--float-strength)), calc(-6px * var(--float-strength))) rotate(calc(.7deg * var(--float-strength)))}50%{transform:translate(0, calc(-12px * var(--float-strength))) rotate(calc(1.1deg * var(--float-strength)))}75%{transform:translate(calc(-3px * var(--float-strength)), calc(-5px * var(--float-strength))) rotate(calc(-.6deg * var(--float-strength)))}}@keyframes shadow{0%,to{opacity:calc(1 - .05 * var(--float-strength));transform:translate(0)scale(1)}25%{transform:translate(calc(3px * var(--float-strength)), 0) scale(calc(1 + .06 * var(--float-strength)));opacity:calc(1 - .2 * var(--float-strength))}50%{transform:translate(0, 0) scale(calc(1 + .1 * var(--float-strength)));opacity:calc(1 - .28 * var(--float-strength))}75%{transform:translate(calc(-3px * var(--float-strength)), 0) scale(calc(1 + .06 * var(--float-strength)));opacity:calc(1 - .2 * var(--float-strength))}}@keyframes spin{to{transform:rotate(360deg)}}.motion-toggle{right:max(20px, env(safe-area-inset-right));bottom:max(20px, env(safe-area-inset-bottom));color:#8c8c8c;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:50%;place-items:center;width:44px;height:44px;padding:12px;display:grid;position:fixed}.motion-toggle svg{width:20px;height:20px}.motion-toggle:hover{color:#d0d0d0;background:#303030}.motion-toggle:focus-visible{outline-offset:2px;outline:1px solid #b8b8b8}@media (prefers-reduced-motion:reduce){.drone-hover,.ground-shadow,.propeller,.pad-signal-pulse{animation:none!important}.flight-study,.drone-altitude,.shadow-altitude,.pad-signal{transition:none}}
