.lx-sky{background:linear-gradient(180deg, #0b2185 0%, #1638b4 20%, #1d47cc 40%, #2b62e6 58%, #6aa0f4 76%, #bcd6fb 90%, var(--desk-top) 100%)}.lx-sea{background:radial-gradient(90% 45% at 50% 0,#ffffff29,#fff0 70%),linear-gradient(#1f6fb2 0%,#155a98 28%,#0c3f73 58%,#072b52 84%,#051f3d 100%)}@keyframes lx-drift{0%{translate:-3vw}to{translate:3vw}}.lx-horizon{background:radial-gradient(60% 100% at 50% 100%,#ffffffbf,#fff0 70%)}:root{--lx-bar-max:72rem}@media (min-width:1536px){:root{--lx-bar-max:80rem}}.lx-fan-page{transform:translateX(var(--lx-x,0)) rotate(var(--lx-r,0deg))}.lx-desk{background:linear-gradient(180deg, var(--desk-top), var(--desk-bottom))}.lx-page-shadow{box-shadow:0 1px .125rem #0b21852e,0 2.25rem 4rem -1.75rem #0b218599}@keyframes lx-page-lift{0%{opacity:0;transform:perspective(100rem)translateY(30%)rotateX(34deg)scale(.9)}45%{opacity:1}to{opacity:1;transform:perspective(100rem)translateY(0)rotateX(0)scale(1)}}@keyframes lx-typeset{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes lx-card-in{0%{opacity:0;transform:translate(-1rem,.75rem)}to{opacity:1;transform:none}}@keyframes lx-line-in{0%{opacity:0}to{opacity:1}}@keyframes lx-progress{0%{transform:translate(-100%)}to{transform:translate(300%)}}@keyframes lx-retypeset{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes lx-ink-front{0%{opacity:1;transform:translateY(0)}85%{opacity:1}to{opacity:0;transform:translateY(100%)}}.lx-page-lift{transform-origin:50% 100%;animation:lx-page-lift 1.5s var(--ease-enter) .2s both}.lx-typeset{animation:.9s cubic-bezier(.45,0,.2,1) 1.2s both lx-typeset}.lx-card-in{animation:lx-card-in .6s var(--ease-enter) .1s both}.lx-line-in{animation:.18s ease-out both lx-line-in}.lx-progress{animation:.9s ease-in-out infinite lx-progress}.lx-retypeset{animation:.55s cubic-bezier(.45,0,.2,1) both lx-retypeset}.lx-ink-front{animation:.55s cubic-bezier(.45,0,.2,1) both lx-ink-front}.lx-ink-front:before{content:"";background:#2b62e68c;height:.125rem;position:absolute;inset:0 0 auto;box-shadow:0 0 .875rem .1875rem #2b62e659}.lx-sun{background:radial-gradient(closest-side,#fff3,#ffffff0f 45%,#fff0 100%)}@keyframes lx-breathe{0%{opacity:.7;transform:scale(.96)}to{opacity:1;transform:scale(1.04)}}@keyframes lx-word-in{0%{opacity:0;transform:translateY(.45em)}to{opacity:1;transform:none}}@keyframes lx-typing{0%{box-shadow:0 0 0 .125rem #fff, 0 0 0 .125rem var(--lx-ring,var(--primary))}to{box-shadow:0 0 0 .125rem #fff,0 0 0 .4375rem #0000}}@keyframes lx-pop{0%{opacity:0;transform:scale(.85)}60%{opacity:1;transform:scale(1.04)}to{opacity:1;transform:none}}.lx-press{transition-property:translate,transform,box-shadow,background-color,border-color,color;transition-duration:.2s;transition-timing-function:var(--ease-enter)}.lx-press:active{transform:translateY(0)scale(.97)}@media (prefers-reduced-motion:no-preference){.lx-sun{animation:9s ease-in-out infinite alternate lx-breathe}.lx-word{animation:lx-word-in .8s var(--ease-enter) calc(.1s + var(--lx-w,0) * 70ms) both}.lx-hero-in{animation:lx-rise-in .8s var(--ease-enter) var(--lx-in,.5s) both}.lx-typing{animation:1.1s ease-out infinite lx-typing}.lx-done{animation:lx-pop .4s var(--ease-enter) both}.lx-caret{animation:.2s ease-out both lx-line-in}}@media (prefers-reduced-motion:reduce){.lx-page-lift,.lx-typeset,.lx-card-in,.lx-line-in,.lx-retypeset,.lx-ink-front{animation:none}.lx-ink-front{display:none}.lx-press:hover,.lx-press:active{transform:none}}html:has(.lx-landing:not([style*="display: none"])){scroll-behavior:smooth;scroll-snap-type:y proximity}@supports not selector(::-webkit-scrollbar){.lx-landing{scrollbar-color:#7ea7f1 #f1f6fe;scrollbar-width:thin}html:has(.lx-landing:not([style*="display: none"])){scrollbar-color:#7ea7f1 #f1f6fe;scrollbar-width:thin}}html:has(.lx-landing:not([style*="display: none"]))::-webkit-scrollbar{width:.375rem}.lx-landing ::-webkit-scrollbar{width:.375rem;height:.375rem}html:has(.lx-landing:not([style*="display: none"]))::-webkit-scrollbar-track{background:#f1f6fe}.lx-landing ::-webkit-scrollbar-track{background:#f1f6fe}html:has(.lx-landing:not([style*="display: none"]))::-webkit-scrollbar-thumb{background-color:#7ea7f1;background-clip:padding-box;border:1px solid #0000;border-radius:62.4375rem}.lx-landing ::-webkit-scrollbar-thumb{background-color:#7ea7f1;background-clip:padding-box;border:1px solid #0000;border-radius:62.4375rem}html:has(.lx-landing:not([style*="display: none"]))::-webkit-scrollbar-thumb:hover{background-color:#4f86ee}.lx-landing ::-webkit-scrollbar-thumb:hover{background-color:#4f86ee}html:has(.lx-landing:not([style*="display: none"]))::-webkit-scrollbar-thumb:active{background-color:var(--primary)}.lx-landing ::-webkit-scrollbar-thumb:active{background-color:var(--primary)}.lx-snap{scroll-snap-align:start}@media (min-width:1024px) and (min-height:720px){html:has(.lx-landing:not([style*="display: none"])){scroll-snap-type:y mandatory}.lx-snap{scroll-snap-stop:always}}@keyframes lx-rise-in{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:none}}@keyframes lx-explain-in{0%{opacity:0;transform:translate(-2.5rem)}to{opacity:1;transform:none}}@keyframes lx-take-off{to{transform:translateY(-24%)rotate(-2deg)scale(1.03)}}@keyframes lx-copy-out{to{opacity:.25;transform:translateY(3rem)}}@media (prefers-reduced-motion:no-preference){.lx-cloud{animation:lx-drift var(--lx-drift-duration,120s) ease-in-out var(--lx-drift-delay,0s) infinite alternate}@supports (animation-timeline:view()){.lx-takeoff,.lx-hero-copy{animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:exit}.lx-takeoff{animation-name:lx-take-off}.lx-hero-copy{animation-name:lx-copy-out}}.lx-cw-m,.lx-cw-l,.lx-cw-page,.lx-cw-tab-main,.lx-cw-tab-method,.lx-cw-src-main,.lx-cw-src-method,.lx-cw-say-m,.lx-cw-say-l{animation-duration:18s;animation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite}.lx-cw-m{animation-name:lx-cw-m}.lx-cw-l{animation-name:lx-cw-l}.lx-cw-page{animation-name:lx-cw-page}.lx-cw-tab-main,.lx-cw-src-main{animation-name:lx-cw-main}.lx-cw-tab-method,.lx-cw-src-method{animation-name:lx-cw-method}.lx-cw-say-m{animation-name:lx-cw-say-m}.lx-cw-say-l{animation-name:lx-cw-say-l}}@keyframes lx-cw-m{0%{translate:59em 8em}8%{translate:56em 12em}16%,64%{translate:53.5em 18.2em}70%,90%{translate:53.5em 9.2em}to{translate:59em 8em}}@keyframes lx-cw-l{0%,24%{translate:23em 22em}31%{translate:34em 26.5em}40%,56%{translate:46em 23em}63%,90%{translate:13em 3.8em}to{translate:23em 22em}}@keyframes lx-cw-page{0%,63%{translate:0}70%,90%{translate:0 -9em}to{translate:0}}@keyframes lx-cw-main{0%,63%{opacity:1}66%,92%{opacity:0}98%,to{opacity:1}}@keyframes lx-cw-method{0%,63%{opacity:0}66%,92%{opacity:1}98%,to{opacity:0}}@keyframes lx-cw-say-m{0%,17%{opacity:0;scale:.9}19%,39%{opacity:1;scale:1}41%,to{opacity:0;scale:.9}}@keyframes lx-cw-say-l{0%,43%{opacity:0;scale:.9}45%,61%{opacity:1;scale:1}63%,to{opacity:0;scale:.9}}[data-inview=false] .lx-loop,[data-inview=false] .lx-progress,[data-inview=false] .lx-cw-m,[data-inview=false] .lx-cw-l,[data-inview=false] .lx-cw-page,[data-inview=false] .lx-cw-tab-main,[data-inview=false] .lx-cw-tab-method,[data-inview=false] .lx-cw-src-main,[data-inview=false] .lx-cw-src-method,[data-inview=false] .lx-cw-say-m,[data-inview=false] .lx-cw-say-l{animation-play-state:paused}@media (prefers-reduced-motion:no-preference){.lx-gl-line,.lx-gl-type,.lx-gl-done,.lx-gl-menu,.lx-gl-press,.lx-gl-compiled,.lx-gl-compiling,.lx-gl-progress,.lx-gl-page{animation-duration:14s;animation-timing-function:ease-out;animation-iteration-count:infinite}.lx-gl-line{animation-name:lx-gl-line}.lx-gl-type{animation-name:lx-gl-type}.lx-gl-done{animation-name:lx-gl-done}.lx-gl-menu{animation-name:lx-gl-menu}.lx-gl-press{animation-name:lx-gl-press}.lx-gl-compiled{animation-name:lx-gl-compiled}.lx-gl-compiling{animation-name:lx-gl-compiling}.lx-gl-progress{animation-name:lx-gl-progress}.lx-gl-page{animation-name:lx-gl-page}}@keyframes lx-gl-line{0%,91%{opacity:1}95%,99%{opacity:0}to{opacity:1}}@keyframes lx-gl-type{0%{width:0}6%{width:0;animation-timing-function:steps(37,end)}30%,96%{width:37ch}96.5%,to{width:0}}@keyframes lx-gl-done{0%,40%{width:0}40.5%,96%{width:9ch}96.5%,to{width:0}}@keyframes lx-gl-menu{0%,31%{opacity:0;transform:translateY(-.3em)}32.5%,39.5%{opacity:1;transform:none}41%,to{opacity:0;transform:none}}@keyframes lx-gl-press{0%,44%{transform:none}45%{transform:scale(.93)}47%,to{transform:none}}@keyframes lx-gl-compiled{0%,44.5%{opacity:1;transform:none}45%,53.5%{opacity:0;transform:scale(.9)}56%,to{opacity:1;transform:none}}@keyframes lx-gl-compiling{0%,44.5%{opacity:0}45%,53%{opacity:1}54%,to{opacity:0}}@keyframes lx-gl-progress{0%,44.5%{opacity:0}45%,53%{opacity:1}54%,to{opacity:0}}@keyframes lx-gl-page{0%,53.5%{opacity:1}54%{opacity:.55}58%,to{opacity:1}}.lx-log-hit{transition:background-color .2s ease-out}.lx-log-missingPackage{background-color:color-mix(in oklab, var(--destructive) 13%, transparent)}.lx-log-missingLabel,.lx-log-lineTooWide{background-color:color-mix(in oklab, var(--warning) 14%, transparent)}.lx-errors:has([data-problem=missingPackage]:hover) .lx-log-missingPackage{background-color:color-mix(in oklab, var(--destructive) 28%, transparent)}:is(.lx-errors:has([data-problem=missingLabel]:hover) .lx-log-missingLabel,.lx-errors:has([data-problem=lineTooWide]:hover) .lx-log-lineTooWide){background-color:color-mix(in oklab, var(--warning) 30%, transparent)}.lx-er-bar{opacity:0;transition:opacity .2s ease-out}.lx-er-card:hover .lx-er-bar{opacity:1}@keyframes lx-log-light{0%{background-color:#0000}}@keyframes lx-scan{0%{opacity:0;transform:translateY(0)}10%,85%{opacity:1}to{opacity:0;transform:translateY(100%)}}.lx-log-scan:before{background:linear-gradient(180deg, transparent, color-mix(in oklab, var(--primary) 12%, transparent));border-bottom:1px solid color-mix(in oklab, var(--primary) 45%, transparent);content:"";height:3rem;position:absolute;inset:0 0 auto;transform:translateY(-100%)}.lx-log-scan{opacity:0}@media (prefers-reduced-motion:no-preference){[data-inview=false] .lx-log-hit{background-color:#0000}[data-inview=false] .lx-er-card{opacity:0;transform:translate(-1.5rem)}[data-inview=true] .lx-log-scan{animation:1.6s cubic-bezier(.4,0,.6,1) .2s both lx-scan}[data-inview=true] .lx-log-lineTooWide{animation:.4s ease-out .75s backwards lx-log-light}[data-inview=true] .lx-log-missingPackage{animation:.4s ease-out 1.05s backwards lx-log-light}[data-inview=true] .lx-log-missingLabel{animation:.4s ease-out 1.5s backwards lx-log-light}[data-inview=true] .lx-er-card{animation:lx-explain-in .7s var(--ease-enter) calc(.9s + var(--lx-i,0) * .3s) backwards}}.lx-im-pointer{opacity:0}@keyframes lx-im-pick{0%,55%{color:var(--foreground);background-color:#0000}}@keyframes lx-im-pointer{0%{opacity:0;transform:translate(2.5rem,2.5rem)}20%{opacity:1}55%{opacity:1;transform:none}62%{transform:scale(.85)}70%{opacity:1;transform:none}to{opacity:0;transform:none}}@keyframes lx-im-drop{0%{opacity:0;transform:translateY(-1.25rem)scale(1.05)}}@keyframes lx-im-fill{0%{transform:scaleX(0)}}@media (prefers-reduced-motion:no-preference){.lx-im-step{--lx-step:0s}@media (min-width:768px){.lx-im-step{--lx-step:calc(var(--lx-i,0) * .7s)}}.lx-im-line{transition:transform .9s var(--ease-enter) var(--lx-step)}[data-inview=false] .lx-im-line{transform:scaleX(0)}[data-inview=false] :is(.lx-im-drop,.lx-im-done,.lx-im-page){opacity:0}[data-inview=true] .lx-im-pick{animation:lx-im-pick .9s steps(1, end) calc(var(--lx-step) + .2s) backwards}[data-inview=true] .lx-im-pointer{animation:lx-im-pointer 1.6s var(--ease-enter) calc(var(--lx-step) + .1s) both}[data-inview=true] .lx-im-drop{animation:lx-im-drop .6s var(--ease-enter) calc(var(--lx-step) + .2s) backwards}[data-inview=true] .lx-im-fill{animation:lx-im-fill 1.4s cubic-bezier(.3, 0, .3, 1) calc(var(--lx-step) + .6s) backwards}[data-inview=true] .lx-im-done{animation:lx-pop .45s var(--ease-enter) calc(var(--lx-step) + .5s) backwards}[data-inview=true] .lx-im-page{animation:lx-rise-in .8s var(--ease-enter) calc(var(--lx-step) + .8s) backwards}.lx-fan-page{transition:transform 1.3s var(--ease-enter);transition-delay:calc(.15s + var(--lx-i,0) * .12s)}[data-inview=false] .lx-fan-page{transform:translateY(3rem)rotate(0)}}