.wy{--desk:#f6f5f0;--desk-2:#efede5;--desk-dot:rgba(21,39,44,0.13);--white:#ffffff;--card:#fcfcfa;--ink:#15272c;--ink-2:#3b4649;--ink-3:#5c6a6d;--muted:#5f6d70;--faint:#8f9a9c;--line:rgba(21,39,44,0.12);--line-2:rgba(21,39,44,0.07);--line-3:rgba(21,39,44,0.2);--pink:#d63f7e;--sel:#d6457f;--pink-ink:#7a1d45;--pink-deep:#c8336f;--pink-wash:#fbe6ef;--pink-soft:#f7c2d8;--gel:linear-gradient(#fff3f8,#ffd8e8 18%,#f8a9ca 50%,#f29cc0 80%,#f6b0cd);--gel-bd:#7a1d45;--gel-ghost:linear-gradient(#ffffff,#fbfbfb 40%,#ededed);--scout:#3d8ce0;--scout-2:#26578b;--builder:#ef7f2a;--builder-2:#944f1a;--reviewer:#8f6fe0;--reviewer-2:#59458b;--green:#1f9d5a;--green-wash:#e7f6ee;--amber:#d99a1e;--amber-wash:#fff4dc;--red:#d9485f;--red-wash:#fde8eb;--teal:#2f6770;--folder:#28505a;--night:#060a16;--night-2:#0c1226;--night-ink:#e9eefc;--night-muted:#8e98b8;--night-line:rgba(200,214,255,0.14);--sans:"Chillax",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-mono),ui-monospace,"SF Mono",Menlo,Consolas,monospace;--ease:cubic-bezier(0.2,0.7,0.2,1);--ease-out:cubic-bezier(0.16,1,0.3,1);--ease-in-out:cubic-bezier(0.65,0,0.35,1);--spring:cubic-bezier(0.3,1.4,0.5,1);--gutter:clamp(16px,4vw,48px);--wide:1280px;--measure:1160px;--bar:34px;--lift-1:0 1px 0 rgba(21,39,44,0.06),0 6px 16px -8px rgba(21,39,44,0.18);--lift-2:0 1px 0 rgba(21,39,44,0.06),0 18px 40px -18px rgba(21,39,44,0.32),0 2px 6px rgba(21,39,44,0.06);--lift-3:0 2px 0 rgba(21,39,44,0.05),0 40px 80px -30px rgba(21,39,44,0.45),0 10px 24px -12px rgba(21,39,44,0.2);position:relative;min-height:100vh;background:var(--desk);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overflow-x:clip}:where(.wy) *,:where(.wy) :after,:where(.wy) :before{box-sizing:border-box}:where(.wy) :where(a){color:inherit;text-decoration:none}:where(.wy) :where(h1,h2,h3,h4){margin:0;font-weight:500;text-wrap:balance}:where(.wy) :where(p){margin:0;text-wrap:pretty}.wy ::-moz-selection{background:var(--sel);color:#fff}.wy ::selection{background:var(--sel);color:#fff}.wy :focus-visible{outline:2px solid var(--pink);outline-offset:3px;border-radius:6px}:where(.wy) :where(img){display:block;max-width:100%}:where(.wy) :where(button){font:inherit;color:inherit}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.desk{background-color:var(--desk);background-image:radial-gradient(var(--desk-dot) 1px,transparent 1.3px);background-size:24px 24px;background-position:-1px -1px}.wrap{width:min(100% - 2 * var(--gutter),var(--wide));margin-inline:auto}.wrap-measure{width:min(100% - 2 * var(--gutter),var(--measure));margin-inline:auto}.t-display{font-size:clamp(40px,6.4vw,84px);line-height:1.02;letter-spacing:-.045em;font-weight:500}.t-h2{font-size:clamp(32px,4.4vw,60px);line-height:1.06;letter-spacing:-.038em}.t-h2,.t-h3{font-weight:500}.t-h3{font-size:clamp(26px,2.8vw,38px);line-height:1.1;letter-spacing:-.03em}.t-lede{font-size:clamp(16px,1.35vw,19px);line-height:1.7;color:var(--muted)}.t-lede b,.t-lede strong{font-weight:500;color:var(--ink)}.mono{font-family:var(--mono)}.ico{width:1em;height:1em;vertical-align:-.14em;flex-shrink:0}.ico,.sel{display:inline-block}.sel{position:relative;white-space:nowrap;padding:0 .16em;margin:0 -.06em;color:inherit;z-index:0}.sel:before{content:"";position:absolute;z-index:-1;left:0;right:0;top:.1em;bottom:-.02em;border-radius:.16em;background:var(--sel);box-shadow:inset 0 0 0 1px rgba(255,255,255,.16),0 .08em .3em -.1em rgba(122,29,69,.45);transform-origin:left center;transform:scaleX(var(--sel-k,1));transition:transform .7s var(--ease-out) var(--sel-delay,.1s)}.sel.is-ink{color:#fff}.js .sel[data-sel]:not(.is-in):before{--sel-k:0}.js .sel[data-sel]{transition:color .4s var(--ease) calc(var(--sel-delay, .1s) + .2s)}.js .sel.is-ink[data-sel]:not(.is-in){color:inherit}.acc{color:var(--pink);text-decoration:underline;text-decoration-color:color-mix(in srgb,var(--pink) 38%,transparent);text-decoration-thickness:.06em;text-underline-offset:.16em}:where(.bx){position:relative;display:inline-flex;align-items:center;gap:8px;padding:8px 11px;border-radius:7px;background:linear-gradient(180deg,#ffffff,#fbfbf8);color:var(--ink);font-size:13px;line-height:1.3;font-weight:500;letter-spacing:-.005em;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,1),inset 0 -1px 0 rgba(21,39,44,.05),0 0 0 1px rgba(21,39,44,.13),0 1.5px 0 1px rgba(21,39,44,.07),0 8px 18px -8px rgba(21,39,44,.28)}:where(.bx).is-quiet{color:var(--ink-3);font-weight:400}:where(.bx).is-mono{font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:0}:where(.bx).is-dark{background:linear-gradient(180deg,#223338,#15272c);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 0 1px rgba(0,0,0,.5),0 1.5px 0 1px rgba(0,0,0,.25),0 8px 18px -8px rgba(0,0,0,.5)}:where(.bx).is-pink{background:linear-gradient(180deg,#e25891,#d63f7e);color:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 0 0 1px var(--pink-ink),0 1.5px 0 1px rgba(122,29,69,.35),0 8px 18px -8px rgba(122,29,69,.55)}:where(.tile){display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:64px;padding:10px 10px 8px;white-space:nowrap}:where(.tile) svg{width:20px;height:20px}:where(.tile) span{font-size:11.5px;color:var(--ink-3)}:where(.key){position:relative;display:inline-grid;place-items:center;min-width:40px;height:40px;padding:0 10px;border-radius:8px;background:linear-gradient(180deg,#ffffff,#f4f3ee);color:var(--ink-2);font-family:var(--sans);font-size:14px;font-weight:500;box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(21,39,44,.16),0 3px 0 .5px #d6d4cb,0 4px 0 .5px rgba(21,39,44,.16),0 10px 16px -6px rgba(21,39,44,.35);transition:transform .08s ease,box-shadow .08s ease}:where(.key).is-down,:where(.key):active{transform:translateY(2.5px);box-shadow:inset 0 1px 0 #fff,0 0 0 1px rgba(21,39,44,.16),0 .5px 0 .5px #d6d4cb,0 1px 0 .5px rgba(21,39,44,.16),0 4px 8px -4px rgba(21,39,44,.35)}.pill{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:999px;background:rgba(255,255,255,.9);color:var(--ink-2);font-size:12.5px;font-weight:500;white-space:nowrap;box-shadow:0 0 0 1px var(--line),0 2px 6px -2px rgba(21,39,44,.15)}.pill .dot{width:6px;height:6px;border-radius:99px;background:var(--green)}.pill.is-live .dot{animation:wy-pulse 1.8s ease-in-out infinite}.noted{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border-radius:8px;background:color-mix(in srgb,var(--pink) 8%,transparent);color:var(--teal);font-size:13px;font-weight:500;line-height:1.2}.noted svg{width:14px;height:14px}:where(.gel){position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.5em;height:var(--gel-h,48px);padding:0 calc(var(--gel-h, 48px) * .5) 1px;border-radius:999px;border:1px solid var(--gel-bd);background:var(--gel);color:#000;font-family:var(--sans);font-size:var(--gel-fs,17px);font-weight:500;letter-spacing:-.025em;line-height:1;white-space:nowrap;text-shadow:0 2px 2px rgba(255,255,255,.8);box-shadow:0 10px 24px rgba(0,0,0,.12);cursor:pointer;transition:transform .14s var(--ease),filter .15s;-webkit-tap-highlight-color:transparent}.wy .gel{color:#000;text-shadow:0 2px 2px rgba(255,255,255,.8)}.wy .gel.is-dark{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.4)}.gel>*{position:relative;z-index:2}.gel:before{mix-blend-mode:screen;box-shadow:inset 0 -15px 2px -12px rgba(255,255,255,.25)}.gel:after,.gel:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none}.gel:after{mix-blend-mode:color-burn;box-shadow:inset 0 -8px 0 4px #b3b3b3}.gel:hover{filter:brightness(1.04) saturate(1.06)}.gel:active{transform:scale(.97)}.gel .gel-gloss{top:3px;left:12px;right:12px;height:min(12px,26%);border-radius:999px;background:linear-gradient(rgba(255,255,255,1),rgba(255,255,255,.78) 50%,rgba(255,255,255,.2));-webkit-mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent);mask-image:linear-gradient(90deg,transparent,#000 9%,#000 91%,transparent)}.gel .gel-gloss,.gel .gel-shine{position:absolute;z-index:1;pointer-events:none}.gel .gel-shine{top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.42),transparent);transform:translateX(-156%) skewX(-18deg);animation:wy-shine 5.5s ease-in-out 2s infinite}.gel.is-ghost{--gel:var(--gel-ghost);--gel-bd:#9a9aa2}.gel.is-dark{--gel:linear-gradient(#4a5a5f,#2a3a3f 30%,#15272c 70%,#1d2f34);--gel-bd:#0a1417;color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,.4)}.gel.is-dark:after{mix-blend-mode:normal;box-shadow:inset 0 -10px 10px -8px rgba(0,0,0,.5)}.gel.is-dark .gel-gloss{opacity:.35}.gel:disabled,.gel[aria-disabled=true]{opacity:.6;cursor:default}.win{border-radius:14px;background:linear-gradient(180deg,#f7f7f4,#efeee9);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 0 0 1px rgba(21,39,44,.13),var(--lift-3);overflow:hidden}.win,.win-bar{position:relative}.win-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:40px;padding:0 12px 0 14px;font-size:13px;font-weight:500;color:var(--ink)}.win-lights{display:flex;gap:7px}.win-lights i{width:12px;height:12px;border-radius:99px;box-shadow:inset 0 0 0 .5px rgba(0,0,0,.18)}.win-lights i:first-child{background:#ff5f57}.win-lights i:nth-child(2){background:#febc2e}.win-lights i:nth-child(3){background:#28c840}.win-title{display:inline-flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.win-title svg{width:13px;height:13px;color:var(--muted)}.win-meta{justify-self:end;min-width:0}@media (max-width:520px){.win-bar{grid-template-columns:auto minmax(0,1fr) auto;gap:10px}.win-meta .pill{padding:0 7px}.win-meta .pill-t{display:none}}.win-body{position:relative;margin:0 7px;border-radius:9px;overflow:hidden;box-shadow:0 0 0 1px rgba(21,39,44,.1);background:#dfe6e0}.win-foot{justify-content:space-between;min-height:46px;padding:8px 10px 8px 14px;font-size:12.5px;color:var(--muted)}.win-foot,.win-foot .meta{display:flex;align-items:center;gap:12px}.win-foot .meta{min-width:0;overflow:hidden;white-space:nowrap}.win-foot .meta span{display:inline-flex;align-items:center;gap:5px}.win-foot svg{width:13px;height:13px}@media (max-width:480px){.win-foot .meta span:nth-child(n+2){display:none}}.win.is-dark{background:linear-gradient(180deg,#1c2226,#111619);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 0 1px rgba(0,0,0,.6),var(--lift-3)}.win.is-dark,.win.is-dark .win-bar{color:#e7ecee}.art{overflow:hidden}.art,.art-in{position:absolute;inset:0}.art-in{transform:translate3d(0,calc((.5 - var(--p, .5)) * var(--art-drift, 0px)),0) scale(var(--art-zoom,1));will-change:transform}.dg{position:relative;isolation:isolate}.dg-wires{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:0}.dg-wires path.w{fill:none;stroke:var(--w-c,rgba(255,255,255,.9));stroke-width:var(--w-sw,1.6);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.dg-wires path.w.is-dash{stroke-dasharray:3 5;animation:wy-march 1.2s linear infinite;transition:opacity .6s var(--ease) calc(var(--w-delay, 0s) + .5s)}.js .dg:not(.is-in) .dg-wires path.w.is-dash{opacity:0}.dg-wires path.w.is-shadow{stroke:rgba(8,30,40,.28);stroke-width:calc(var(--w-sw, 1.6) + 2.4);filter:blur(1.5px)}.js .dg .dg-wires path.w.draws{stroke-dasharray:1 1;stroke-dashoffset:1;transition:stroke-dashoffset 1.1s var(--ease-in-out) var(--w-delay,0s)}.js .dg.is-in .dg-wires path.w.draws{stroke-dashoffset:0}.js .dg .dg-wires g>path:not(.w){transition:opacity .3s var(--ease) calc(var(--w-delay, 0s) + 1s)}.js .dg:not(.is-in) .dg-wires g>path:not(.w){opacity:0}.dg-packet{position:absolute;left:0;top:0;z-index:1;offset-rotate:0deg;offset-anchor:center;animation:wy-ride var(--pk-dur,2.4s) var(--pk-ease,cubic-bezier(.55,0,.45,1)) var(--pk-delay,0s) infinite;pointer-events:none}.dg-packet.is-dot{width:8px;height:8px;border-radius:99px;background:#fff;box-shadow:0 0 0 2px var(--pk-c,var(--pink)),0 0 12px 2px color-mix(in srgb,var(--pk-c,var(--pink)) 60%,transparent)}.dg:not(.is-in) .dg-packet{animation-play-state:paused;opacity:0}.dg-node{position:relative;z-index:2}.js [data-reveal]{opacity:0;transform:translate3d(0,26px,0);filter:blur(6px);transition:opacity .7s var(--ease) var(--d,0s),transform .8s var(--ease-out) var(--d,0s),filter .7s var(--ease) var(--d,0s)}.js [data-reveal=fade]{transform:none}.js [data-reveal=left]{transform:translate3d(-40px,0,0)}.js [data-reveal=right]{transform:translate3d(40px,0,0)}.js [data-reveal=scale]{transform:translate3d(0,20px,0) scale(.94)}.js [data-reveal=pop]{transform:scale(.6);filter:none;transition:opacity .4s var(--ease) var(--d,0s),transform .7s var(--spring) var(--d,0s)}.js [data-reveal=rise]{transform:translate3d(0,60px,0) rotateX(12deg);transform-origin:50% 100%}.js [data-reveal].is-in{opacity:1;transform:none;filter:none}.js [data-reveal]:focus-visible,.js [data-reveal]:focus-within{opacity:1;transform:none;filter:none;transition:none}.skip{position:fixed;z-index:200;top:8px;left:8px;padding:10px 14px;border-radius:10px;background:var(--ink);color:#fff;font-size:14px;font-weight:500;transform:translateY(-160%);transition:transform .2s var(--ease)}.skip:focus{transform:none}@keyframes wy-pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes wy-shine{0%{transform:translateX(-156%) skewX(-18deg)}24%,to{transform:translateX(311%) skewX(-18deg)}}@keyframes wy-march{to{stroke-dashoffset:-16}}@keyframes wy-ride{0%{offset-distance:0;opacity:0}8%{opacity:1}88%{opacity:1}to{offset-distance:100%;opacity:0}}@keyframes wy-float{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-7px,0)}}@keyframes wy-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes wy-blink{0%,49%{opacity:1}50%,to{opacity:0}}@keyframes wy-spin{to{transform:rotate(1turn)}}@keyframes wy-peek{0%,56%,to{transform:translateY(0)}62%,82%{transform:translateY(96px)}90%{transform:translateY(-6px)}}.float{animation:wy-float 8s ease-in-out infinite}.bob{animation:wy-bob 2.8s ease-in-out infinite}.caret{animation:wy-blink 1.1s steps(1) infinite}.pulse{animation:wy-pulse 1.8s ease-in-out infinite}.is-parked,.is-parked *,.is-parked :after,.is-parked :before{animation-play-state:paused!important}@media (prefers-reduced-motion:reduce){.wy *,.wy :after,.wy :before{animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important;transition-duration:.001ms!important;transition-delay:0s!important}.js [data-reveal]{opacity:1;transform:none;filter:none}.dg-packet{display:none}}