/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:"Inter", ui-sans-serif, system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SF Mono", monospace;--color-white:#fff;--spacing:.25rem;--container-2xl:42rem;--container-4xl:56rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-5xl:3rem;--text-5xl--line-height:1;--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tighter:-.05em;--tracking-tight:-.025em;--tracking-normal:0em;--tracking-wide:.025em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-ui-bg:#07080b;--color-ui-surface:#0d0f15;--color-ui-raised:#13161f;--color-ui-line:#1e232e;--color-ui-line-lit:#2b3240;--color-ui-fg:#eef2f7;--color-ui-dim:#98a2b3;--color-ui-faint:#5f6878;--color-ui-accent:#2dd4bf;--color-ui-danger:#fb7185;--color-ui-warn:#fbbf24;--color-ui-info:#60a5fa;--color-ui-ok:#34d399;--color-flow-person:#60a5fa;--color-flow-internal:#34d399;--color-flow-model:#c084fc;--color-hop-1:#2dd4bf;--color-hop-2:#22d3ee;--color-hop-3:#60a5fa;--color-hop-4:#a78bfa;--color-hop-5:#f472b6;--color-hop-6:#fbbf24}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components{.ui-control{border:1px solid var(--color-ui-line);background:var(--color-ui-raised);width:100%;height:2.75rem;color:var(--color-ui-fg);border-radius:.5rem;outline:none;padding-inline:.875rem;font-size:.9375rem;line-height:1.25rem;transition:border-color .16s,box-shadow .16s,background .16s}.ui-control--icon{padding-inline-start:2.5rem}.ui-control:hover{border-color:var(--color-ui-line-lit)}.ui-control:focus,.ui-control:focus-visible{border-color:var(--color-ui-accent);box-shadow:0 0 0 3px #2dd4bf38}@supports (color:color-mix(in lab, red, red)){.ui-control:focus,.ui-control:focus-visible{box-shadow:0 0 0 3px color-mix(in oklab, var(--color-ui-accent) 22%, transparent)}}.ui-control:focus,.ui-control:focus-visible{background:#15252c}@supports (color:color-mix(in lab, red, red)){.ui-control:focus,.ui-control:focus-visible{background:color-mix(in oklab, var(--color-ui-raised) 92%, var(--color-ui-accent) 8%)}}.ui-control::placeholder{color:var(--color-ui-faint)}textarea.ui-control{resize:vertical;height:auto;padding-block:.75rem;line-height:1.6}select.ui-control{appearance:none;cursor:pointer;padding-inline-end:2.25rem}select.ui-control option{background:var(--color-ui-raised);color:var(--color-ui-fg)}.ui-icon{color:var(--color-ui-faint);pointer-events:none;transition:color .16s;position:absolute;top:50%;translate:0 -50%}.ui-field:focus-within .ui-icon{color:var(--color-ui-accent)}.ui-btn{color:#060709;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;height:2.75rem;padding-inline:1.25rem;font-weight:500;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.ui-btn{color:color-mix(in oklab, var(--color-ui-bg) 85%, black)}}.ui-btn{background:linear-gradient(180deg, var(--color-ui-accent), #23a595)}@supports (color:color-mix(in lab, red, red)){.ui-btn{background:linear-gradient(180deg, var(--color-ui-accent), color-mix(in oklab, var(--color-ui-accent) 78%, black))}}.ui-btn{box-shadow:inset 0 1px #ffffff2e,0 6px 20px -8px #2dd4bfb3}@supports (color:color-mix(in lab, red, red)){.ui-btn{box-shadow:0 1px 0 #ffffff2e inset, 0 6px 20px -8px color-mix(in oklab, var(--color-ui-accent) 70%, transparent)}}.ui-btn{transition:transform .14s,box-shadow .14s,filter .14s}.ui-btn:hover:not(:disabled){transform:translateY(-1px)}.ui-btn:active:not(:disabled){transform:translateY(0)}.ui-btn:disabled{filter:grayscale(.7)brightness(.75);cursor:not-allowed}.ui-card{border:1px solid var(--color-ui-line);background:#0d0f15eb}@supports (color:color-mix(in lab, red, red)){.ui-card{background:color-mix(in oklab, var(--color-ui-surface) 92%, transparent)}}.ui-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:.75rem}}@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1{top:var(--spacing)}.top-1\.5{top:calc(var(--spacing) * 1.5)}.top-4{top:calc(var(--spacing) * 4)}.top-6{top:calc(var(--spacing) * 6)}.top-50{top:calc(var(--spacing) * 50)}.top-\[0\.4375rem\]{top:.4375rem}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.bottom-4{bottom:calc(var(--spacing) * 4)}.-left-14{left:calc(var(--spacing) * -14)}.-left-\[1\.5625rem\]{left:-1.5625rem}.left-0{left:0}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-\[5\.5rem\]{left:5.5rem}.isolate{isolation:isolate}.z-10{z-index:10}.z-50{z-index:50}.col-span-2{grid-column:span 2/span 2}.col-start-1{grid-column-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.my-6{margin-block:calc(var(--spacing) * 6)}.my-8{margin-block:calc(var(--spacing) * 8)}.my-10{margin-block:calc(var(--spacing) * 10)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-3\.5{margin-top:calc(var(--spacing) * 3.5)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-9{margin-top:calc(var(--spacing) * 9)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mt-\[0\.45rem\]{margin-top:.45rem}.mt-auto{margin-top:auto}.mr-3{margin-right:calc(var(--spacing) * 3)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.-ml-\[0\.4375rem\]{margin-left:-.4375rem}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-0\.5{height:calc(var(--spacing) * .5)}.h-1{height:var(--spacing)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-\[0\.4375rem\]{height:.4375rem}.h-\[1\.125rem\]{height:1.125rem}.h-\[30rem\]{height:30rem}.h-\[34rem\]{height:34rem}.h-\[38rem\]{height:38rem}.h-full{height:100%}.min-h-screen{min-height:100vh}.w-1{width:var(--spacing)}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/3{width:33.3333%}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-4{width:calc(var(--spacing) * 4)}.w-7{width:calc(var(--spacing) * 7)}.w-12{width:calc(var(--spacing) * 12)}.w-\[0\.4375rem\]{width:.4375rem}.w-\[1\.125rem\]{width:1.125rem}.w-\[30rem\]{width:30rem}.w-\[34rem\]{width:34rem}.w-\[38rem\]{width:38rem}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-4xl{max-width:var(--container-4xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[16rem\]{max-width:16rem}.max-w-\[20ch\]{max-width:20ch}.max-w-\[22ch\]{max-width:22ch}.max-w-\[24ch\]{max-width:24ch}.max-w-\[26ch\]{max-width:26ch}.max-w-\[34ch\]{max-width:34ch}.max-w-\[34rem\]{max-width:34rem}.max-w-\[36ch\]{max-width:36ch}.max-w-\[46ch\]{max-width:46ch}.max-w-\[54ch\]{max-width:54ch}.max-w-\[56ch\]{max-width:56ch}.max-w-\[58ch\]{max-width:58ch}.max-w-\[60ch\]{max-width:60ch}.max-w-\[62ch\]{max-width:62ch}.max-w-\[64ch\]{max-width:64ch}.max-w-\[66ch\]{max-width:66ch}.max-w-\[68ch\]{max-width:68ch}.max-w-\[340px\]{max-width:340px}.min-w-0{min-width:0}.min-w-\[30rem\]{min-width:30rem}.min-w-\[34rem\]{min-width:34rem}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.translate-x-\[1\.1875rem\]{--tw-translate-x:1.1875rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-180{rotate:180deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.touch-none{touch-action:none}.resize{resize:both}.scroll-mt-24{scroll-margin-top:calc(var(--spacing) * 24)}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[0\.75rem_1fr\]{grid-template-columns:.75rem 1fr}.grid-cols-\[1\.25rem_1fr\]{grid-template-columns:1.25rem 1fr}.grid-cols-\[1\.25rem_1fr_auto\]{grid-template-columns:1.25rem 1fr auto}.grid-cols-\[2rem_1fr\]{grid-template-columns:2rem 1fr}.grid-cols-\[5\.5rem_1fr\]{grid-template-columns:5.5rem 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-center{justify-content:center}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-11{gap:calc(var(--spacing) * 11)}:where(.space-y-0>:not(:last-child)){--tw-space-y-reverse:0;margin-block:0}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-2\.5{column-gap:calc(var(--spacing) * 2.5)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.gap-x-8{column-gap:calc(var(--spacing) * 8)}.gap-y-1{row-gap:var(--spacing)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.gap-y-3{row-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}.gap-y-6{row-gap:calc(var(--spacing) * 6)}.gap-y-8{row-gap:calc(var(--spacing) * 8)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-ui-line>:not(:last-child)){border-color:var(--color-ui-line)}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-sm{border-radius:var(--radius-sm)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-current{border-color:currentColor}.border-flow-internal\/30{border-color:#34d3994d}@supports (color:color-mix(in lab, red, red)){.border-flow-internal\/30{border-color:color-mix(in oklab, var(--color-flow-internal) 30%, transparent)}}.border-flow-model\/30{border-color:#c084fc4d}@supports (color:color-mix(in lab, red, red)){.border-flow-model\/30{border-color:color-mix(in oklab, var(--color-flow-model) 30%, transparent)}}.border-flow-person\/30{border-color:#60a5fa4d}@supports (color:color-mix(in lab, red, red)){.border-flow-person\/30{border-color:color-mix(in oklab, var(--color-flow-person) 30%, transparent)}}.border-ui-danger\/25{border-color:#fb718540}@supports (color:color-mix(in lab, red, red)){.border-ui-danger\/25{border-color:color-mix(in oklab, var(--color-ui-danger) 25%, transparent)}}.border-ui-danger\/30{border-color:#fb71854d}@supports (color:color-mix(in lab, red, red)){.border-ui-danger\/30{border-color:color-mix(in oklab, var(--color-ui-danger) 30%, transparent)}}.border-ui-danger\/40{border-color:#fb718566}@supports (color:color-mix(in lab, red, red)){.border-ui-danger\/40{border-color:color-mix(in oklab, var(--color-ui-danger) 40%, transparent)}}.border-ui-info\/30{border-color:#60a5fa4d}@supports (color:color-mix(in lab, red, red)){.border-ui-info\/30{border-color:color-mix(in oklab, var(--color-ui-info) 30%, transparent)}}.border-ui-info\/40{border-color:#60a5fa66}@supports (color:color-mix(in lab, red, red)){.border-ui-info\/40{border-color:color-mix(in oklab, var(--color-ui-info) 40%, transparent)}}.border-ui-line{border-color:var(--color-ui-line)}.border-ui-line-lit{border-color:var(--color-ui-line-lit)}.border-ui-line\/70{border-color:#1e232eb3}@supports (color:color-mix(in lab, red, red)){.border-ui-line\/70{border-color:color-mix(in oklab, var(--color-ui-line) 70%, transparent)}}.border-ui-ok\/30{border-color:#34d3994d}@supports (color:color-mix(in lab, red, red)){.border-ui-ok\/30{border-color:color-mix(in oklab, var(--color-ui-ok) 30%, transparent)}}.border-ui-ok\/40{border-color:#34d39966}@supports (color:color-mix(in lab, red, red)){.border-ui-ok\/40{border-color:color-mix(in oklab, var(--color-ui-ok) 40%, transparent)}}.border-ui-warn\/30{border-color:#fbbf244d}@supports (color:color-mix(in lab, red, red)){.border-ui-warn\/30{border-color:color-mix(in oklab, var(--color-ui-warn) 30%, transparent)}}.border-ui-warn\/40{border-color:#fbbf2466}@supports (color:color-mix(in lab, red, red)){.border-ui-warn\/40{border-color:color-mix(in oklab, var(--color-ui-warn) 40%, transparent)}}.bg-current{background-color:currentColor}.bg-flow-internal{background-color:var(--color-flow-internal)}.bg-flow-internal\/\[0\.045\]{background-color:#34d3990b}@supports (color:color-mix(in lab, red, red)){.bg-flow-internal\/\[0\.045\]{background-color:color-mix(in oklab, var(--color-flow-internal) 4.5%, transparent)}}.bg-flow-model{background-color:var(--color-flow-model)}.bg-flow-model\/\[0\.045\]{background-color:#c084fc0b}@supports (color:color-mix(in lab, red, red)){.bg-flow-model\/\[0\.045\]{background-color:color-mix(in oklab, var(--color-flow-model) 4.5%, transparent)}}.bg-flow-person{background-color:var(--color-flow-person)}.bg-flow-person\/\[0\.045\]{background-color:#60a5fa0b}@supports (color:color-mix(in lab, red, red)){.bg-flow-person\/\[0\.045\]{background-color:color-mix(in oklab, var(--color-flow-person) 4.5%, transparent)}}.bg-hop-4\/20{background-color:#a78bfa33}@supports (color:color-mix(in lab, red, red)){.bg-hop-4\/20{background-color:color-mix(in oklab, var(--color-hop-4) 20%, transparent)}}.bg-hop-5\/12{background-color:#f472b61f}@supports (color:color-mix(in lab, red, red)){.bg-hop-5\/12{background-color:color-mix(in oklab, var(--color-hop-5) 12%, transparent)}}.bg-ui-accent{background-color:var(--color-ui-accent)}.bg-ui-accent\/22{background-color:#2dd4bf38}@supports (color:color-mix(in lab, red, red)){.bg-ui-accent\/22{background-color:color-mix(in oklab, var(--color-ui-accent) 22%, transparent)}}.bg-ui-bg{background-color:var(--color-ui-bg)}.bg-ui-bg\/60{background-color:#07080b99}@supports (color:color-mix(in lab, red, red)){.bg-ui-bg\/60{background-color:color-mix(in oklab, var(--color-ui-bg) 60%, transparent)}}.bg-ui-danger{background-color:var(--color-ui-danger)}.bg-ui-danger\/5{background-color:#fb71850d}@supports (color:color-mix(in lab, red, red)){.bg-ui-danger\/5{background-color:color-mix(in oklab, var(--color-ui-danger) 5%, transparent)}}.bg-ui-dim{background-color:var(--color-ui-dim)}.bg-ui-info{background-color:var(--color-ui-info)}.bg-ui-info\/5{background-color:#60a5fa0d}@supports (color:color-mix(in lab, red, red)){.bg-ui-info\/5{background-color:color-mix(in oklab, var(--color-ui-info) 5%, transparent)}}.bg-ui-line{background-color:var(--color-ui-line)}.bg-ui-line-lit{background-color:var(--color-ui-line-lit)}.bg-ui-ok{background-color:var(--color-ui-ok)}.bg-ui-ok\/5{background-color:#34d3990d}@supports (color:color-mix(in lab, red, red)){.bg-ui-ok\/5{background-color:color-mix(in oklab, var(--color-ui-ok) 5%, transparent)}}.bg-ui-raised\/30{background-color:#13161f4d}@supports (color:color-mix(in lab, red, red)){.bg-ui-raised\/30{background-color:color-mix(in oklab, var(--color-ui-raised) 30%, transparent)}}.bg-ui-raised\/40{background-color:#13161f66}@supports (color:color-mix(in lab, red, red)){.bg-ui-raised\/40{background-color:color-mix(in oklab, var(--color-ui-raised) 40%, transparent)}}.bg-ui-surface{background-color:var(--color-ui-surface)}.bg-ui-warn{background-color:var(--color-ui-warn)}.bg-ui-warn\/5{background-color:#fbbf240d}@supports (color:color-mix(in lab, red, red)){.bg-ui-warn\/5{background-color:color-mix(in oklab, var(--color-ui-warn) 5%, transparent)}}.bg-linear-to-r{--tw-gradient-position:to right}@supports (background-image:linear-gradient(in lab, red, red)){.bg-linear-to-r{--tw-gradient-position:to right in oklab}}.bg-linear-to-r{background-image:linear-gradient(var(--tw-gradient-stops))}.from-transparent{--tw-gradient-from:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-white{--tw-gradient-via:var(--color-white);--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-transparent{--tw-gradient-to:transparent;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.p-4{padding:calc(var(--spacing) * 4)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-16{padding-block:calc(var(--spacing) * 16)}.py-px{padding-block:1px}.pt-1{padding-top:var(--spacing)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-8{padding-top:calc(var(--spacing) * 8)}.pt-10{padding-top:calc(var(--spacing) * 10)}.pr-6{padding-right:calc(var(--spacing) * 6)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.pb-10{padding-bottom:calc(var(--spacing) * 10)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.pl-3{padding-left:calc(var(--spacing) * 3)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-5{padding-left:calc(var(--spacing) * 5)}.pl-6{padding-left:calc(var(--spacing) * 6)}.pl-14{padding-left:calc(var(--spacing) * 14)}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.9em\]{font-size:.9em}.text-\[0\.75rem\]{font-size:.75rem}.text-\[0\.85em\]{font-size:.85em}.text-\[0\.625rem\]{font-size:.625rem}.text-\[0\.875rem\]{font-size:.875rem}.text-\[0\.6875rem\]{font-size:.6875rem}.text-\[0\.8125rem\]{font-size:.8125rem}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[0\.78125rem\]{font-size:.78125rem}.text-\[1\.75rem\]{font-size:1.75rem}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.15\]{--tw-leading:1.15;line-height:1.15}.leading-\[1\.75\]{--tw-leading:1.75;line-height:1.75}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.04em\]{--tw-tracking:.04em;letter-spacing:.04em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-tighter{--tw-tracking:var(--tracking-tighter);letter-spacing:var(--tracking-tighter)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-flow-internal{color:var(--color-flow-internal)}.text-flow-model{color:var(--color-flow-model)}.text-flow-person{color:var(--color-flow-person)}.text-ui-accent{color:var(--color-ui-accent)}.text-ui-accent\/70{color:#2dd4bfb3}@supports (color:color-mix(in lab, red, red)){.text-ui-accent\/70{color:color-mix(in oklab, var(--color-ui-accent) 70%, transparent)}}.text-ui-danger{color:var(--color-ui-danger)}.text-ui-dim{color:var(--color-ui-dim)}.text-ui-faint{color:var(--color-ui-faint)}.text-ui-fg{color:var(--color-ui-fg)}.text-ui-fg\/80{color:#eef2f7cc}@supports (color:color-mix(in lab, red, red)){.text-ui-fg\/80{color:color-mix(in oklab, var(--color-ui-fg) 80%, transparent)}}.text-ui-fg\/85{color:#eef2f7d9}@supports (color:color-mix(in lab, red, red)){.text-ui-fg\/85{color:color-mix(in oklab, var(--color-ui-fg) 85%, transparent)}}.text-ui-fg\/90{color:#eef2f7e6}@supports (color:color-mix(in lab, red, red)){.text-ui-fg\/90{color:color-mix(in oklab, var(--color-ui-fg) 90%, transparent)}}.text-ui-info{color:var(--color-ui-info)}.text-ui-line-lit{color:var(--color-ui-line-lit)}.text-ui-ok{color:var(--color-ui-ok)}.text-ui-warn{color:var(--color-ui-warn)}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.not-italic{font-style:normal}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.decoration-ui-line{-webkit-text-decoration-color:var(--color-ui-line);-webkit-text-decoration-color:var(--color-ui-line);-webkit-text-decoration-color:var(--color-ui-line);text-decoration-color:var(--color-ui-line)}.underline-offset-4{text-underline-offset:4px}.opacity-45{opacity:.45}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.opacity-100{opacity:1}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-4{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-ui-bg{--tw-ring-color:var(--color-ui-bg)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.select-none{-webkit-user-select:none;user-select:none}@media (hover:hover){.group-hover\:text-ui-fg:is(:where(.group):hover *){color:var(--color-ui-fg)}}.first\:mt-0:first-child{margin-top:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:border-ui-line-lit:hover{border-color:var(--color-ui-line-lit)}.hover\:text-ui-fg:hover{color:var(--color-ui-fg)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}}@media (width>=40rem){.sm\:col-span-1{grid-column:span 1/span 1}.sm\:col-start-2{grid-column-start:2}.sm\:ml-0{margin-left:0}.sm\:ml-auto{margin-left:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-\[3rem_1fr\]{grid-template-columns:3rem 1fr}.sm\:grid-cols-\[minmax\(0\,15rem\)_1fr\]{grid-template-columns:minmax(0,15rem) 1fr}.sm\:grid-cols-\[minmax\(0\,22rem\)_1fr\]{grid-template-columns:minmax(0,22rem) 1fr}.sm\:gap-x-6{column-gap:calc(var(--spacing) * 6)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:py-6{padding-block:calc(var(--spacing) * 6)}.sm\:pt-16{padding-top:calc(var(--spacing) * 16)}.sm\:text-right{text-align:right}.sm\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}}@media (width>=48rem){.md\:mt-8{margin-top:calc(var(--spacing) * 8)}.md\:pt-20{padding-top:calc(var(--spacing) * 20)}.md\:text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.md\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.md\:text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.md\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}.md\:text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}@media (width>=64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:grid-cols-7{grid-template-columns:repeat(7,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,340px\)_1fr\]{grid-template-columns:minmax(0,340px) 1fr}}@media (width>=80rem){.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}@keyframes ui-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.ui-rise,.ui-stagger>*{animation:.46s cubic-bezier(.22,1,.36,1) both ui-rise}}.ui-stagger>:first-child{animation-delay:40ms}.ui-stagger>:nth-child(2){animation-delay:.1s}.ui-stagger>:nth-child(3){animation-delay:.16s}.ui-stagger>:nth-child(4){animation-delay:.22s}.ui-stagger>:nth-child(5){animation-delay:.28s}.ui-stagger>:nth-child(n+6){animation-delay:.34s}@keyframes ui-note-in{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.ui-note-in{animation:.3s cubic-bezier(.22,1,.36,1) both ui-note-in}}@keyframes ui-ping{0%{opacity:.9;transform:scale(1)}70%{opacity:0;transform:scale(2.4)}to{opacity:0;transform:scale(2.4)}}.ui-ping{animation:1.6s cubic-bezier(0,0,.2,1) infinite ui-ping}@keyframes ui-sweep{0%{background-position:-140% 0}to{background-position:240% 0}}.ui-sweep{background-image:linear-gradient(100deg,#0000 20%,#ffffff47 50%,#0000 80%);background-size:220% 100%;animation:1.5s linear infinite ui-sweep}@keyframes ui-live-text{0%{background-position:140% 0}to{background-position:-40% 0}}.ui-live-text{background-image:linear-gradient(100deg, var(--color-ui-dim) 35%, var(--color-ui-fg) 50%, var(--color-ui-dim) 65%);color:#0000;background-size:220% 100%;-webkit-background-clip:text;background-clip:text;animation:2.2s linear infinite ui-live-text}@keyframes ui-scan{0%{transform:translate(-100%)}to{transform:translate(400%)}}.ui-scan{animation:1.9s cubic-bezier(.4,0,.2,1) infinite ui-scan}@keyframes ui-count-in{0%{opacity:0;filter:blur(3px)}to{opacity:1;filter:none}}@media (prefers-reduced-motion:no-preference){.ui-count-in{animation:.52s ease-out both ui-count-in}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;transition-delay:0s!important;animation-duration:.001ms!important;animation-iteration-count:1!important;animation-delay:0s!important}}*{scrollbar-color:var(--color-ui-line-lit) transparent;scrollbar-width:thin}.ui-tiles{flex-wrap:wrap;align-items:stretch;gap:.625rem;margin-top:2.5rem;display:flex}.ui-tiles-divider{background:var(--color-ui-line);align-self:stretch;width:1px;margin-inline:.375rem}@media (width<=63.99rem){.ui-tiles-divider{width:100%;height:1px;margin:.375rem 0}}.ui-tile{text-align:left;border:1px solid var(--color-ui-line);background:var(--color-ui-surface);cursor:pointer;border-radius:.875rem;flex-direction:column;flex:7.75rem;align-items:flex-start;gap:.125rem;min-width:7.75rem;padding:1rem .875rem .875rem;transition:transform .22s cubic-bezier(.2,.8,.2,1),border-color .22s,box-shadow .22s;display:flex;position:relative}.ui-tile:before{content:"";background:linear-gradient(90deg, transparent, var(--ui-tone,var(--color-ui-line-lit)), transparent);opacity:.75;border-radius:.875rem .875rem 0 0;height:1px;position:absolute;inset:0 0 auto}.ui-tile:hover,.ui-tile:focus-visible{border-color:var(--ui-tone,#eef2f7);transform:translateY(-3px)}@supports (color:color-mix(in lab, red, red)){.ui-tile:hover,.ui-tile:focus-visible{border-color:color-mix(in oklab, var(--ui-tone,var(--color-ui-fg)) 45%, var(--color-ui-line))}}.ui-tile:hover,.ui-tile:focus-visible{box-shadow:0 14px 30px -22px var(--ui-tone,#eef2f7)}@supports (color:color-mix(in lab, red, red)){.ui-tile:hover,.ui-tile:focus-visible{box-shadow:0 14px 30px -22px color-mix(in oklab, var(--ui-tone,var(--color-ui-fg)) 70%, transparent)}}.ui-tile:focus-visible{outline:2px solid var(--color-ui-accent);outline-offset:2px}.ui-tile>svg{width:1.75rem;height:1.75rem;color:var(--color-ui-faint);margin-bottom:.375rem;transition:color .22s}.ui-tile:hover>svg{color:var(--color-ui-dim)}.ui-tile-title{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-fg);font-size:.8125rem;font-weight:500}.ui-tile-subtitle{color:var(--color-ui-dim);font-size:.75rem}.ui-tile-detail{color:var(--color-ui-faint);margin-top:.25rem;font-size:.6875rem;line-height:1.4}.ui-tile-meta{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-faint);margin-top:.5rem;font-size:.625rem}@keyframes ui-scrim-in{0%{opacity:0}to{opacity:1}}.ui-scrim{z-index:60;background:#07080bb8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}@supports (color:color-mix(in lab, red, red)){.ui-scrim{background:color-mix(in oklab, var(--color-ui-bg) 72%, transparent)}}.ui-scrim{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:.2s both ui-scrim-in}.ui-scrim[data-closing=true]{animation:.19s reverse both ui-scrim-in}@keyframes ui-dialog-open{0%{opacity:0;filter:blur(6px);transform:scale(.28)}60%{opacity:1}to{opacity:1;filter:blur();transform:scale(1)}}.ui-dialog{border:1px solid var(--ui-tone,#2b3240);flex-direction:column;width:min(76rem,100%);max-height:min(46rem,92vh);display:flex;position:relative}@supports (color:color-mix(in lab, red, red)){.ui-dialog{border:1px solid color-mix(in oklab, var(--ui-tone,var(--color-ui-line-lit)) 40%, var(--color-ui-line))}}.ui-dialog{background:var(--color-ui-surface);box-shadow:0 40px 90px -40px #000000e6, 0 0 70px -40px var(--ui-tone,#eef2f7);border-radius:1.125rem}@supports (color:color-mix(in lab, red, red)){.ui-dialog{box-shadow:0 40px 90px -40px #000000e6, 0 0 70px -40px color-mix(in oklab, var(--ui-tone,var(--color-ui-fg)) 70%, transparent)}}.ui-dialog{animation:.3s cubic-bezier(.16,1,.3,1) both ui-dialog-open;overflow:hidden}.ui-dialog:focus{outline:none}.ui-dialog[data-closing=true]{animation:.19s cubic-bezier(.4,0,.7,0) reverse both ui-dialog-open}.ui-dialog-head{border-bottom:1px solid var(--color-ui-line);flex:none;align-items:center;gap:.875rem;padding:1rem 1.25rem;display:flex}.ui-dialog-head>svg{width:2rem;height:2rem;color:var(--color-ui-dim);flex:none}.ui-dialog-figs{color:var(--color-ui-faint);gap:1.5rem;margin-inline-start:auto;font-size:.8125rem;display:none}@media (width>=40rem){.ui-dialog-figs{display:flex}}.ui-dialog-close{border:1px solid var(--color-ui-line);width:2rem;height:2rem;color:var(--color-ui-dim);cursor:pointer;border-radius:.5rem;flex:none;place-items:center;margin-inline-start:auto;transition:border-color .18s,color .18s;display:grid}.ui-dialog-close:hover{border-color:var(--color-ui-line-lit);color:var(--color-ui-fg)}.ui-dialog-close:focus-visible{outline:2px solid var(--color-ui-accent);outline-offset:2px}.ui-dialog-close>span{width:.625rem;height:.625rem;position:relative}.ui-dialog-close>span:before,.ui-dialog-close>span:after{content:"";background:currentColor;border-radius:1px;height:1.5px;position:absolute;inset:50% 0 auto}.ui-dialog-close>span:before{transform:rotate(45deg)}.ui-dialog-close>span:after{transform:rotate(-45deg)}.ui-dialog-body{background:var(--color-ui-bg);scrollbar-width:thin;scrollbar-color:var(--color-ui-line-lit) transparent;flex:auto;min-height:0;padding:.875rem 1.25rem 1.25rem;overflow-y:auto}.ui-dialog-body::-webkit-scrollbar{width:6px}.ui-dialog-body::-webkit-scrollbar-track{background:0 0}.ui-dialog-body::-webkit-scrollbar-thumb{background:var(--color-ui-line-lit);border-radius:999px}.ui-data{margin-top:.125rem}.ui-datum{font-family:var(--font-mono,ui-monospace, monospace);border-bottom:1px solid #1e232e8c;align-items:center;gap:.5rem;padding:.1875rem 0;font-size:.625rem;line-height:1.5;display:flex}@supports (color:color-mix(in lab, red, red)){.ui-datum{border-bottom:1px solid color-mix(in oklab, var(--color-ui-line) 55%, transparent)}}.ui-datum:last-child{border-bottom:0}.ui-datum:before{content:"";background:var(--color-ui-faint);opacity:.7;flex:none;width:.25rem;height:.25rem}.ui-datum--number:before{border-radius:50%}.ui-datum--date:before{transform:rotate(45deg)}.ui-datum--flag:before{width:.125rem;height:.375rem}.ui-datum--json:before,.ui-datum--other:before{box-shadow:inset 0 0 0 1px var(--color-ui-faint);background:0 0}.ui-datum-name{color:var(--color-ui-dim);white-space:nowrap}.ui-datum-value{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:58%;color:var(--color-ui-faint);text-align:right;margin-inline-start:auto;overflow:hidden}.ui-datum-fallback{opacity:.7;font-style:italic}.ui-detail{border:1px solid var(--color-ui-line);background:var(--color-ui-surface);border-radius:.625rem;padding:.75rem .875rem .5rem;transition:border-color .18s}.ui-detail:hover{border-color:var(--ui-tone,#eef2f7)}@supports (color:color-mix(in lab, red, red)){.ui-detail:hover{border-color:color-mix(in oklab, var(--ui-tone,var(--color-ui-fg)) 32%, var(--color-ui-line))}}.ui-detail-head{border-bottom:1px solid var(--color-ui-line);justify-content:space-between;align-items:baseline;gap:.75rem;padding-bottom:.5rem;display:flex}.ui-detail-title{font-family:var(--font-mono,ui-monospace, monospace);color:var(--ui-tone,var(--color-ui-fg));font-size:.9375rem;font-weight:500}.ui-detail-figure{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-fg);font-variant-numeric:tabular-nums;flex:none;font-size:.875rem}.ui-detail-unit{color:var(--color-ui-faint);margin-inline-start:.3125rem;font-size:.625rem}.ui-detail-note{color:var(--color-ui-dim);margin:.5rem 0 .25rem;font-size:.8125rem;line-height:1.6}.ui-figures{flex-wrap:wrap;align-items:baseline;gap:.75rem 2rem;display:flex}.ui-figure{align-items:baseline;gap:.5rem;display:flex}.ui-figure-value{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:-.02em;color:var(--color-ui-fg);font-size:1.5rem;font-weight:500}.ui-figure-label{color:var(--color-ui-dim);font-size:.875rem}.ui-figure-note{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-faint);font-size:.75rem}.ui-flow-scroll{margin-inline:-1.25rem;padding-inline:1.25rem;display:none;overflow-x:auto}.ui-flow-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.ui-flow-node{width:0;height:0;position:absolute}.ui-flow-stage{overflow-clip-margin:1rem;overflow:clip}.ui-flow-stages{border-top:1px solid var(--color-ui-line);font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ui-faint);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:1rem;margin:1rem auto 0;padding-top:.75rem;font-size:.6875rem;display:grid}.ui-flow-stage-last{text-align:right}.ui-flow-list{margin-top:2rem;display:block}@media (width>=40rem){.ui-flow-scroll{display:block}.ui-flow-list{display:none}}.ui-flow-list-stage{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ui-faint);padding:1.5rem 0 .75rem;font-size:.6875rem}.ui-flow-list-items{flex-direction:column;gap:.625rem;display:flex}.ui-flow-row-head{align-items:center;gap:.75rem;display:flex}.ui-flow-row-name{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-fg);font-size:.875rem;font-weight:500}.ui-flow-row-sub{color:var(--color-ui-dim);font-size:.75rem}.ui-flow-row-back{color:var(--color-ui-dim);margin-top:.625rem;font-size:.8125rem;line-height:1.6}.ui-flow-list-note{color:var(--color-ui-faint);padding-top:1.5rem;font-size:.875rem;line-height:1.6}.ui-flow-stage{perspective:1600px}.ui-flow-edge{transition:opacity .26s}@keyframes ui-flow-out{0%{stroke-dashoffset:100px;opacity:0}4%{opacity:.9}16%{stroke-dashoffset:0;opacity:.9}20%,to{stroke-dashoffset:0;opacity:0}}@keyframes ui-flow-back{0%{stroke-dashoffset:0;opacity:0}4%{opacity:1}18%{stroke-dashoffset:100px;opacity:1}24%,to{stroke-dashoffset:100px;opacity:0}}.ui-flow-pulse{animation-duration:9s;animation-timing-function:cubic-bezier(.5,0,.5,1);animation-iteration-count:infinite}.ui-flow-pulse--out{stroke-dasharray:8 92;animation-name:ui-flow-out}.ui-flow-pulse--back{stroke-dasharray:12 88;animation-name:ui-flow-back}@keyframes ui-flow-fibre{0%,4%{stroke-opacity:.18}9%{stroke-opacity:.85}26%,to{stroke-opacity:.18}}.ui-flow-fibre{stroke:var(--color-ui-dim);stroke-width:1px;stroke-opacity:.18;animation:9s ease-in-out infinite ui-flow-fibre}.ui-flow-fibre--far{stroke-opacity:.1;stroke-dasharray:2 4}@keyframes ui-flow-synapse{0%,to{transform:scale(.82)}50%{transform:scale(1.18)}}.ui-flow-synapse{fill:var(--color-ui-fg);transform-box:fill-box;transform-origin:50%;animation-name:ui-flow-synapse;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes ui-flow-spark{0%{stroke-dashoffset:100px;opacity:0}12%{opacity:.95}70%{opacity:.95}to{stroke-dashoffset:0;opacity:0}}.ui-flow-spark{stroke:var(--color-ui-fg);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:9 91;animation-name:ui-flow-spark;animation-timing-function:cubic-bezier(.45,0,.5,1);animation-iteration-count:infinite}.ui-flow-glow{fill:#eef2f708}@supports (color:color-mix(in lab, red, red)){.ui-flow-glow{fill:color-mix(in oklab, var(--color-ui-fg) 3%, transparent)}}.ui-flow-glow{filter:blur(22px)}.ui-flow-note{fill:var(--color-ui-faint);font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;font-size:10px;transition:opacity .26s}.ui-flow-web{transition:opacity .26s}.ui-flow-card{transform-style:preserve-3d;text-align:left;cursor:pointer;width:11.5rem;height:4.75rem;transition:transform .52s cubic-bezier(.2,.8,.2,1),opacity .26s;position:relative;transform:translate(-50%,-50%)}.ui-flow-card--dim{opacity:.4}.ui-flow-card[data-open=true]{transform:translate(-50%,-50%)scale(1.06)}.ui-flow-face{border:1px solid var(--color-ui-line);background:linear-gradient(180deg, #ffffff08, transparent 60%), var(--color-ui-surface);backface-visibility:hidden;pointer-events:none;border-radius:.75rem;flex-direction:column;justify-content:center;gap:.1875rem;padding:.5625rem .875rem;transition:transform .52s cubic-bezier(.2,.8,.2,1);display:flex;position:absolute;inset:0;overflow:hidden;transform:rotateY(0)}.ui-flow-card[data-open=true] .ui-flow-face--front{transform:rotateY(-180deg)}.ui-flow-card[data-open=true] .ui-flow-face--back{transform:rotateY(0)}.ui-flow-face--back{border-color:var(--ui-tone,#2b3240);justify-content:space-between;transform:rotateY(180deg)}@supports (color:color-mix(in lab, red, red)){.ui-flow-face--back{border-color:color-mix(in oklab, var(--ui-tone,var(--color-ui-line-lit)) 45%, var(--color-ui-line))}}.ui-flow-face--back{background:linear-gradient(180deg, var(--ui-tone,transparent), transparent 70%), var(--color-ui-raised)}@supports (color:color-mix(in lab, red, red)){.ui-flow-face--back{background:linear-gradient(180deg, color-mix(in oklab, var(--ui-tone,transparent) 10%, transparent), transparent 70%), var(--color-ui-raised)}}.ui-flow-name{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-fg);letter-spacing:-.01em;white-space:nowrap;font-size:.8125rem;font-weight:500}.ui-flow-sub{color:var(--color-ui-dim);font-size:.75rem;line-height:1.3}.ui-flow-step{font-family:var(--font-mono,ui-monospace, monospace);color:var(--ui-tone,var(--color-ui-faint));opacity:.8;font-size:.625rem;position:absolute;top:.5rem;right:.625rem}.ui-flow-back-text{color:var(--color-ui-fg);font-size:.65rem;line-height:1.4}.ui-flow-back-tag{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.06em;text-transform:uppercase;color:var(--ui-tone,var(--color-ui-faint));font-size:.5625rem;line-height:1}.ui-flow-card:hover .ui-flow-face--front,.ui-flow-card:focus-visible .ui-flow-face--front{border-color:var(--ui-tone,#eef2f7)}@supports (color:color-mix(in lab, red, red)){.ui-flow-card:hover .ui-flow-face--front,.ui-flow-card:focus-visible .ui-flow-face--front{border-color:color-mix(in oklab, var(--ui-tone,var(--color-ui-fg)) 50%, var(--color-ui-line))}}.ui-flow-card:focus-visible{outline:2px solid var(--color-ui-accent);outline-offset:4px;border-radius:.75rem}@media (prefers-reduced-motion:reduce){.ui-flow-pulse--out{display:none}.ui-flow-pulse--back{stroke-dashoffset:12px;opacity:.85;animation:none!important}.ui-flow-fibre{stroke-opacity:.3;animation:none!important}.ui-flow-synapse{animation:none!important}.ui-flow-spark{display:none}.ui-flow-card,.ui-flow-face{transition:none!important}}.ui-flow-face--front{text-align:center;background:radial-gradient(72% 80%,#07080be6 0%,#07080b9e 58%,#0000 100%);border-color:#0000;flex-direction:column;justify-content:center;align-items:center;gap:.3125rem}@supports (color:color-mix(in lab, red, red)){.ui-flow-face--front{background:radial-gradient(72% 80% at 50% 50%, color-mix(in oklab, var(--color-ui-bg) 90%, transparent) 0%, color-mix(in oklab, var(--color-ui-bg) 62%, transparent) 58%, transparent 100%)}}.ui-flow-words{flex-direction:column;align-items:center;gap:.125rem;min-width:0;display:flex}.ui-flow-row{border:1px solid var(--color-ui-line);background:var(--color-ui-surface);border-radius:.75rem;padding:.75rem .875rem .875rem 1.125rem;position:relative}.ui-flow-row:before{content:"";background:var(--ui-tone,var(--color-ui-line-lit));border-radius:2px;width:2px;position:absolute;inset-block:.75rem;inset-inline-start:0}.ui-run-figure{gap:.125rem;min-width:0;display:grid}.ui-run-label{letter-spacing:.06em;text-transform:uppercase;color:var(--color-ui-faint);white-space:nowrap;align-items:center;gap:.375rem;font-size:.625rem;display:flex}.ui-run-label>span>svg{width:.875rem;height:.875rem}.ui-run-value{overflow-wrap:anywhere;font-size:.8125rem}@media (width>=40rem){.ui-run-label{gap:.4375rem;font-size:.6875rem}.ui-run-label>span>svg{width:1rem;height:1rem}.ui-run-value{font-size:.875rem}}.ui-data--wide{column-count:2;column-gap:2rem}.ui-data--wide .ui-datum{break-inside:avoid}@media (width<=52rem){.ui-data--wide{column-count:1}}html[data-motion=settled] .ui-rise,html[data-motion=settled] .ui-stagger>*,html[data-motion=settled] .ui-note-in,html[data-motion=settled] .ui-count-in{opacity:1;filter:none;animation:none;transform:none}@keyframes aurora-drift{0%{transform:translate(0)scale(1)}50%{transform:translate(4%,-3%)scale(1.12)}to{transform:translate(0)scale(1)}}.aurora{filter:blur(90px);will-change:transform;border-radius:50%;animation:22s ease-in-out infinite aurora-drift;position:absolute}@keyframes lift-in{0%{opacity:0;filter:blur(6px);transform:translateY(14px)}to{opacity:1;filter:none;transform:none}}@media (prefers-reduced-motion:no-preference){.lift-in{animation:.78s cubic-bezier(.22,1,.36,1) both lift-in}}@keyframes title-drift{0%{background-position:0%}to{background-position:200%}}.title-spectrum{background-image:linear-gradient(100deg, #eef2f7 0%, var(--title-1,#eef2f7) 22%, var(--title-2,#eef2f7) 40%, var(--title-3,#eef2f7) 56%, var(--title-4,#eef2f7) 70%, #eef2f7 92%);color:#0000;background-size:220%;-webkit-background-clip:text;background-clip:text;animation:14s linear infinite title-drift}.method-step{padding-left:2.75rem;position:relative}.method-step-n{border:1px solid var(--color-ui-line);width:1.875rem;height:1.875rem;font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-dim);border-radius:.5rem;place-items:center;font-size:.8125rem;display:grid;position:absolute;top:-.125rem;left:0}@keyframes estate-land{0%{opacity:0;filter:blur(3px);transform:translateY(.375rem)}to{opacity:1;filter:blur();transform:none}}@media (prefers-reduced-motion:no-preference){.estate-land{animation:.4s cubic-bezier(.2,.8,.2,1) both estate-land}}html[data-motion=settled] .lift-in,html[data-motion=settled] .estate-land{opacity:1;filter:none;animation:none;transform:none}.estate-corpus{cursor:default;background:0 0;border-style:dashed}.estate-corpus:before{display:none}.nerve-glyph,.ui-flow-glyph{width:2.125rem;height:2.125rem;color:var(--color-ui-dim);flex:none;overflow:visible}.journey-rail{position:relative}.journey-rail:before{content:"";background:linear-gradient(180deg, transparent, var(--color-ui-line-lit) 3%, var(--color-ui-line-lit) 97%, transparent);width:1px;position:absolute;inset-block:0;inset-inline-start:calc(1.5rem - .5px)}@keyframes journey-travel{0%{opacity:0;top:-5rem}4%{opacity:1}96%{opacity:1}to{opacity:0;top:100%}}.journey-rail:after{content:"";background:linear-gradient(180deg, transparent, var(--color-flow-internal), transparent);width:3px;height:5rem;animation:journey-travel var(--sweep,12s) linear infinite;pointer-events:none;border-radius:3px;position:absolute;inset-inline-start:calc(1.5rem - 1.5px)}@keyframes hop-mark{0%,2%{transform:scale(1);box-shadow:0 0 #0000}7%{box-shadow:0 0 18px 3px var(--lit);transform:scale(1.22)}20%,to{transform:scale(1);box-shadow:0 0 #0000}}.hop-mark{animation:hop-mark var(--sweep,12s) cubic-bezier(.4, 0, .2, 1) infinite}@keyframes turn-dot{0%,to{opacity:.35;transform:scale(1)}50%{opacity:1;transform:scale(1.35)}}.turn-dot{animation:3s ease-in-out infinite turn-dot}@keyframes hop-lit{0%,2%{background-color:color-mix(in oklab, var(--color-ui-bg) 70%, transparent);box-shadow:0 0 #0000}7%{box-shadow:0 0 0 1px var(--lit), 0 0 44px -8px var(--lit);background-color:color-mix(in oklab, var(--lit) 9%, var(--color-ui-bg))}20%,to{background-color:color-mix(in oklab, var(--color-ui-bg) 70%, transparent);box-shadow:0 0 #0000}}.hop-lit{animation:hop-lit var(--sweep,12s) cubic-bezier(.4, 0, .2, 1) infinite}@keyframes hop-title{0%,2%{opacity:.72}7%{opacity:1}20%,to{opacity:.72}}.hop-title{animation:hop-title var(--sweep,12s) cubic-bezier(.4, 0, .2, 1) infinite}:root{--snip-bg:#1e2024;--snip-mark:#ffffff0e}.snip{background:var(--snip-bg);overflow-x:auto}.snip pre{font-family:var(--font-mono);tab-size:2;margin:0;padding:.75rem 0;font-size:.78125rem;line-height:1.75}.snip code{min-width:max-content;display:block}.snip-line{gap:1rem;padding:0 1rem;display:flex}.snip-line[data-mark]{background:var(--snip-mark);box-shadow:inset 2px 0 0 var(--snip-accent,#9cdcfe)}.snip-n{text-align:right;color:#6e7681;-webkit-user-select:none;user-select:none;flex:none}.snip-code{white-space:pre}.snip-frame{border:1px solid var(--color-ui-line);border-radius:.75rem;margin:1.5rem 0;overflow:hidden}.snip-head{border-bottom:1px solid #1e232e;flex-wrap:wrap;align-items:baseline;gap:.5rem .875rem;padding:.5rem .875rem;display:flex}@supports (color:color-mix(in lab, red, red)){.snip-head{border-bottom:1px solid color-mix(in oklab, var(--color-ui-line) 70%, var(--snip-bg))}}.snip-head{background:var(--snip-bg)}@supports (color:color-mix(in lab, red, red)){.snip-head{background:color-mix(in oklab, var(--snip-bg) 82%, #000)}}.snip-head{font-family:var(--font-mono);color:var(--color-ui-faint);font-size:.6875rem}.snip-kind{color:var(--snip-accent,#9cdcfe);letter-spacing:.08em;text-transform:uppercase}.snip-path{color:#ccc}.ui-dialog-body,.learn-walk{--snip-bg:#262a30;--snip-mark:#ffffff13}.course-shell{--page:#faf8f3;--surface:#fff;--ink:#1c1a17;--ink-muted:#5b564d;--border:#e7e2d8;--faint:#f1ede4;--accent:#4f46e5;--accent-ink:#3730a3;--accent-soft:#eef0ff;--accent-line:#c7cbff;--on-accent:#fff;--without-bg:#fff1f0;--without-border:#f5c2bd;--without-ink:#9a2b22;--with-bg:#ecfdf3;--with-border:#a7e3c0;--with-ink:#13703e;--hood-bg:#f3f1ff;--hood-border:#d4d0fb;--hood-ink:#3730a3;--mist-bg:#fff8e6;--mist-border:#f1d68b;--mist-ink:#7a5300;--shadow:0 1px 2px #0000000a, 0 8px 24px #0000000a;--lift:0 2px 4px #0000000d, 0 14px 32px #00000014;--code-bg:#f7f6f2;--code-bar:#efede6;--code-ink:#1c1a17;--code-muted:#6b665c;--tok-kw:#5b3fd6;--tok-str:#0f7b3f;--tok-num:#b4530e;--tok-com:#6b665c;--out-bg:#efede6;--topbar-h:56px;--wrap:72rem;--gutter:20px;--serif:Fraunces, Georgia, "Times New Roman", serif;--sans:Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;background:var(--page);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;min-height:100vh;font-size:16px;line-height:1.6}@media (prefers-color-scheme:dark){.course-shell{--page:#14130f;--surface:#1d1c18;--ink:#ece8df;--ink-muted:#a8a297;--border:#2f2d27;--faint:#25231e;--accent:#8b85ff;--accent-ink:#c9c5ff;--accent-soft:#25233f;--accent-line:#4a4680;--on-accent:#14130f;--without-bg:#2a1715;--without-border:#5c2e29;--without-ink:#f4a9a0;--with-bg:#10261b;--with-border:#245c3f;--with-ink:#7fd9a4;--hood-bg:#1e1b33;--hood-border:#3d3870;--hood-ink:#c9c5ff;--mist-bg:#2a220e;--mist-border:#5e4a1c;--mist-ink:#f0cd7a;--shadow:0 1px 2px #0000004d, 0 8px 24px #0003;--lift:0 2px 4px #0000004d, 0 14px 32px #00000059;--code-bg:#1d1c18;--code-bar:#26241e;--code-ink:#ece8df;--code-muted:#a39d90;--tok-kw:#b8aefc;--tok-str:#9fdcae;--tok-num:#f4b98a;--tok-com:#a39d90;--out-bg:#26241e}}.course-shell a{color:var(--accent)}.course-shell :focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.course-topbar{z-index:50;height:var(--topbar-h);padding:0 max(var(--gutter), calc((100% - var(--wrap)) / 2 + var(--gutter)));background:var(--page);border-bottom:1px solid var(--border);align-items:center;gap:20px;display:flex;position:sticky;top:0}.course-topbar a{color:var(--ink-muted);font-size:14px;font-weight:500;text-decoration:none}.course-topbar a:hover{color:var(--ink)}.course-topbar .course-home{font-family:var(--serif);color:var(--ink);margin-right:auto;font-size:18px;font-weight:600}.course-frame{max-width:var(--wrap);padding:0 var(--gutter);margin:0 auto;display:block}@media (width>=640px){.course-shell{--gutter:24px}}.course-main{min-width:0}.course-side{top:var(--topbar-h);z-index:40;background:var(--page);position:sticky}.course-side-bar{justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.course-contents-btn{font:600 14px var(--sans);color:var(--ink);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:10px;padding:8px 14px}.course-side-mini{color:var(--ink-muted);font-size:13px}.course-side-panel{padding-bottom:24px}.course-side-head{padding:22px 20px 16px;position:relative}.course-side-title{font-family:var(--serif);color:var(--ink);margin:0 28px 14px 0;font-size:19px;font-weight:600;line-height:1.25}.course-side-count{color:var(--ink-muted);margin:8px 0 0;font-size:13px}.course-side-close,.course-scrim{display:none}.course-side-nav{padding:0 10px}.course-side-module summary{color:var(--ink);cursor:pointer;border-radius:10px;align-items:center;gap:10px;padding:10px;font-size:14px;font-weight:600;list-style:none;display:flex}.course-side-module summary::-webkit-details-marker{display:none}.course-side-module summary:hover{background:var(--faint)}.course-mod-num{background:var(--accent-soft);width:24px;height:24px;color:var(--accent-ink);border-radius:7px;flex:none;place-items:center;font-size:12px;font-weight:600;display:inline-grid}.course-side-module ul{margin:0 0 8px;padding:0;list-style:none}.course-side-module li a{min-height:32px;font:500 13.5px/1.4 var(--sans);color:var(--ink-muted);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;margin:2px 0;padding:6px 10px 6px 36px;text-decoration:none;display:grid}.course-side-module li a:hover{background:var(--faint);color:var(--ink)}.course-side-ltitle{white-space:nowrap;text-overflow:ellipsis;min-width:0;margin-block:-.2em;padding-block:.2em;overflow:hidden}.course-side-module li a.is-draft{color:var(--ink-muted)}.course-side-module li a.is-current,.course-side-module li a.is-current:hover{background:var(--accent-soft);color:var(--accent-ink)}.course-tick{color:var(--ink-muted);font-size:13px}.course-bar{background:var(--border);border-radius:999px;height:6px;overflow:hidden}.course-bar>span{background:var(--accent);border-radius:999px;height:100%;display:block}@media (width>=900px){.course-frame{grid-template-columns:300px minmax(0,1fr);align-items:start;display:grid}.course-side{top:var(--topbar-h);height:calc(100vh - var(--topbar-h));background:var(--page);z-index:auto;scrollbar-width:none;border-bottom:0;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0,#000 28px calc(100% - 28px),#0000 100%);mask-image:linear-gradient(#0000 0,#000 28px calc(100% - 28px),#0000 100%)}.course-side-bar{display:none}.course-side-head{padding-top:26px}}@media (width<=899px){.course-side.is-open{z-index:90;border:0;height:auto;position:fixed;inset:0}.course-side-panel{background:var(--page);visibility:hidden;width:min(88vw,320px);transition:transform .2s,visibility .2s;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-104%)}.course-side.is-open .course-side-panel{visibility:visible;transform:none}.course-side-close{border:1px solid var(--border);background:var(--page);width:32px;height:32px;color:var(--ink);cursor:pointer;border-radius:8px;place-items:center;display:inline-grid;position:absolute;top:14px;right:14px}.course-scrim{cursor:pointer;background:#14130f73;border:0;width:100%;display:block;position:absolute;inset:0}}.course-lesson{overflow-wrap:break-word;min-width:0;max-width:760px;color:var(--ink);margin:0 auto;padding:48px 0 120px;font-size:17.5px;line-height:1.7}.course-lesson p{margin:0}.course-pill{background:var(--accent-soft);color:var(--accent);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin:0;padding:6px 12px;font-size:12px;font-weight:600;line-height:1.2;display:inline-block}.course-num{color:var(--accent);font-size:15px;font-weight:600;margin:22px 0 0!important}.course-title{font-family:var(--serif);letter-spacing:-.01em;color:var(--ink);margin:6px 0 0;font-size:44px;font-weight:600;line-height:1.1}.course-lead{color:var(--ink-muted);font-size:21px;line-height:1.5;margin:18px 0 0!important}.course-meta{color:var(--ink-muted);flex-wrap:wrap;gap:10px;margin-top:20px;font-size:14px;display:flex}.course-progress{background:var(--border);border-radius:999px;height:4px;margin-top:14px;overflow:hidden}.course-progress>span{background:var(--accent);border-radius:999px;height:100%;display:block}.course-draft{border:1px dashed var(--border);color:var(--ink-muted);border-radius:12px;padding:16px 20px;margin-top:28px!important}.course-section{background:var(--surface);border:1px solid var(--border);min-width:0;max-width:100%;box-shadow:var(--shadow);border-radius:16px;margin-top:32px;padding:28px}.course-sec-head{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.course-sec-num{background:var(--accent);width:28px;height:28px;color:var(--on-accent);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:600;display:inline-grid}.course-sec-label{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:13px;font-weight:600;line-height:1.3;margin:3px 0 0!important}.course-sec-title{font-family:var(--serif);color:var(--ink);margin:2px 0 0;font-size:24px;font-weight:600;line-height:1.25}.course-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.course-box{border:1px solid var(--border);background:var(--surface);border-radius:12px;min-width:0;padding:18px 20px}.course-box.is-without{background:var(--without-bg);border-color:var(--without-border)}.course-box.is-with{background:var(--with-bg);border-color:var(--with-border)}.course-box-label{letter-spacing:.06em;text-transform:uppercase;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex;margin:0 0 8px!important}.course-box.is-without .course-box-label{color:var(--without-ink)}.course-box.is-with .course-box-label,.course-box-label.is-use{color:var(--with-ink)}.course-box-label.is-skip{color:var(--without-ink)}.course-check-list{margin:0;padding:0;list-style:none}.course-check-list li{padding-left:24px;font-size:16px;line-height:1.6;position:relative}.course-check-list li+li{margin-top:8px}.course-check-list.is-use li:before{content:"✓";color:var(--with-ink);font-weight:700;position:absolute;left:0}.course-check-list.is-skip li:before{content:"✕";color:var(--without-ink);font-weight:700;position:absolute;left:0}.course-steps{min-width:0;margin:0;padding:0;list-style:none}.course-step{border-top:1px solid var(--border);padding:22px 0}.course-step:first-child{border-top:0;padding-top:0}.course-step:last-child{padding-bottom:0}.course-step-label{color:var(--ink-muted);font-size:13px;margin:0!important}.course-step-title{font:600 18px/1.4 var(--sans);color:var(--ink);margin:4px 0 0}.course-step-detail{color:var(--ink);font-size:17.5px;line-height:1.65;margin:6px 0 0!important}.course-flow{flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;display:flex}.course-flow-item{align-items:center;gap:10px;display:inline-flex}.course-flow-box{overflow-wrap:anywhere;border:1px solid var(--accent-line);background:var(--accent-soft);max-width:100%;color:var(--accent-ink);border-radius:999px;padding:8px 16px;font-size:15px;font-weight:500}.course-flow-arrow{color:var(--ink-muted);font-size:18px}.course-section.is-bare{box-shadow:none;background:0 0;border:0;margin-top:32px;padding:0}.course-row{border:1px solid var(--border);background:var(--surface);border-radius:12px;align-items:center;gap:12px;padding:12px 14px;display:flex}.course-row-icon{color:var(--ink-muted);flex:none}.course-row-text{color:var(--ink);flex:1;font-size:16px}.course-button.is-small{box-shadow:none;border-radius:9px;padding:7px 12px;font-size:14px}.course-button{border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);font:600 16px/1.2 var(--sans);cursor:pointer;border-radius:12px;align-items:center;gap:8px;padding:12px 20px;text-decoration:none;transition:transform .15s,box-shadow .15s,background-color .15s;display:inline-flex;box-shadow:0 1px 2px #00000014}.course-button:hover{box-shadow:var(--lift);color:var(--on-accent);transform:translateY(-1px)}.course-button.is-secondary{background:var(--surface);color:var(--ink);border-color:var(--border);box-shadow:none}.course-button.is-secondary:hover{color:var(--ink)}.course-shell a.course-button{color:var(--on-accent)}.course-shell a.course-button.is-secondary{color:var(--ink)}.course-code{border:1px solid var(--border);background:var(--code-bg);min-width:0;max-width:100%;color:var(--code-ink);border-radius:12px;overflow:hidden}.course-code-bar{border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:8px 16px 8px 24px;display:flex}.course-code-label{font:500 13px var(--sans);color:var(--code-muted)}.course-copy{border:1px solid var(--border);color:var(--code-ink);font:500 13px var(--sans);cursor:pointer;background:0 0;border-radius:7px;margin-left:auto;padding:3px 10px}.course-copy:hover{background:var(--faint)}.course-code-pre{max-width:100%;font:15px/1.75 var(--mono);color:var(--code-ink);margin:0;padding:20px 24px;overflow-x:auto}.course-code-pre code{font:inherit;counter-reset:line}.course-code-line{counter-increment:line;white-space:pre;display:block}.course-code-line:before{content:counter(line);text-align:right;width:2em;color:var(--code-muted);-webkit-user-select:none;user-select:none;margin-right:1.2em;font-size:12px;display:inline-block}.course-code .tok-kw{color:var(--tok-kw)}.course-code .tok-str{color:var(--tok-str)}.course-code .tok-num{color:var(--tok-num)}.course-code .tok-com{color:var(--tok-com)}.course-output{min-width:0;max-width:100%;margin-top:14px}.course-output-label{color:var(--ink-muted);font-size:13px;margin:0 0 6px!important}.course-output-pre{background:var(--out-bg);max-width:100%;color:var(--ink);font:15px/1.75 var(--mono);white-space:pre-wrap;border-radius:12px;margin:0;padding:16px 24px;overflow-x:auto}.course-hood-p{margin:0 0 14px!important}.course-example{border:1px solid var(--hood-border);background:var(--surface);border-radius:12px;margin:18px 0 0;overflow:hidden}.course-example>div{grid-template-columns:minmax(0,1fr);gap:4px;padding:12px 16px;display:grid}.course-example>div+div{border-top:1px solid var(--hood-border)}.course-example dt{color:var(--ink-muted);font-size:14px;font-weight:600}.course-example dd{margin:0}.course-example code{font:14.5px var(--mono);color:var(--ink);overflow-wrap:anywhere}.course-mistakes{border:1px solid var(--mist-border);background:var(--mist-bg);color:var(--ink);border-radius:12px;margin:0;padding:18px 20px;list-style:none}.course-mistakes li{padding-left:30px;position:relative}.course-mistakes li+li{margin-top:10px}.course-mistakes li:before{content:"⚠";color:var(--mist-ink);position:absolute;left:0}.course-words{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;margin:0;display:grid}.course-word{border:1px solid var(--border);background:var(--page);border-radius:12px;padding:14px 16px}.course-word dt{color:var(--ink);font-size:16px;font-weight:600}.course-word dd{color:var(--ink-muted);margin:4px 0 0;font-size:15.5px;line-height:1.55}.course-pager{grid-template-columns:1fr 1fr;gap:16px;margin-top:48px;display:grid}.course-pager>span{display:block}.course-pager-link{border:1px solid var(--border);background:var(--surface);min-height:96px;box-shadow:var(--shadow);color:var(--ink);border-radius:16px;flex-direction:column;gap:8px;padding:22px 24px;text-decoration:none;transition:transform .15s,box-shadow .15s;display:flex}.course-pager-link.is-next{text-align:right;align-items:flex-end}.course-pager-link:hover{box-shadow:var(--lift);transform:translateY(-2px)}.course-pager-dir{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);font-size:13px;font-weight:600}.course-pager-title{font-family:var(--serif);color:var(--ink);font-size:20px;font-weight:600;line-height:1.3}.course-modal{border:1px solid var(--border);background:var(--surface);width:min(760px,100vw - 48px);max-width:none;max-height:calc(100vh - 48px);color:var(--ink);border-radius:14px;margin:auto;padding:0;overflow:hidden;box-shadow:0 30px 80px #0000004d}.course-modal::backdrop{background:#14130f80}.course-modal-inner{flex-direction:column;min-width:0;max-height:calc(100vh - 48px);display:flex}.course-modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px 10px 24px;display:flex}.course-modal-title{font:600 15px var(--sans);color:var(--ink)}.course-modal-x{border:1px solid var(--border);width:30px;height:30px;color:var(--ink);cursor:pointer;background:0 0;border-radius:8px;place-items:center;font-size:13px;display:inline-grid}.course-modal-body{min-width:0;max-width:100%;padding:20px 24px 28px;font-size:16px;line-height:1.65;overflow:auto}.course-modal-h{font:600 18px/1.4 var(--sans);color:var(--ink);margin:28px 0 10px!important}.course-modal-gap{height:20px}@media (width<=640px){.course-modal{border:0;border-radius:0;width:100vw;max-width:100vw;height:100%;max-height:none;margin:0}.course-modal[open]{flex-direction:column;display:flex}.course-modal-inner{height:100%;max-height:none}.course-modal-body{flex:1;padding:18px 16px 32px}.course-modal-head{padding:12px 14px 12px 18px}}.course-muted{color:var(--ink-muted)}.course-index{isolation:isolate;max-width:1040px;margin:0 auto;padding:0 0 110px;position:relative}.course-hero{padding:64px 0 52px;position:relative}.course-hero:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(closest-side,#4f46e517,#0000);height:420px;position:absolute;top:-40px;left:0;right:0}.course-hero-title{max-width:16ch;font-family:var(--serif);letter-spacing:-.02em;color:var(--ink);margin:0;font-size:56px;font-weight:600;line-height:1.04}.course-hero-sub{max-width:62ch;color:var(--ink-muted);margin:22px 0 0;font-size:19px;line-height:1.6}.course-hero-note{max-width:62ch;color:var(--ink-muted);margin:10px 0 0;font-size:15.5px}.course-hero-actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.course-mod-grid{grid-template-columns:1fr;gap:20px;display:grid}.course-mod{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:16px;padding:28px 28px 24px;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.course-mod:hover{box-shadow:var(--lift);transform:translateY(-2px)}.course-mod-big{font-family:var(--serif);color:var(--faint);pointer-events:none;font-size:120px;font-weight:700;line-height:1;position:absolute;top:6px;right:18px}.course-mod-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:13px;font-weight:600;margin:0!important}.course-mod-title{font-family:var(--serif);color:var(--ink);max-width:80%;margin:6px 0 0;font-size:24px;font-weight:600;line-height:1.25;position:relative}.course-mod-summary{color:var(--ink-muted);font-size:16px;line-height:1.6;position:relative;margin:10px 0 0!important}.course-mod-list{border-top:1px solid var(--border);margin:18px 0 0;padding:0;list-style:none;position:relative}.course-mod-list li{border-bottom:1px solid var(--border)}.course-mod-list a{color:var(--ink);border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 -6px;padding:10px 6px;font-size:15.5px;line-height:1.4;text-decoration:none;display:flex}.course-mod-list a:hover{background:var(--page)}.course-mod-lnum{min-width:2.2em;color:var(--ink-muted);font-variant-numeric:tabular-nums}.course-mod-ltitle{flex:1;min-width:0}.course-mod-seen{color:var(--with-ink);font-weight:600}.course-soon{color:var(--ink-muted);font-size:12.5px;font-style:italic}.course-mod-progress{color:var(--ink-muted);align-items:center;gap:12px;margin-top:18px;font-size:14px;display:flex;position:relative}.course-mod-progress .course-bar{flex:1}@media (width>=760px){.course-mod-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=599px){.course-lesson{padding:28px 0 96px;font-size:17px}.course-title{font-size:32px}.course-lead{font-size:19px}.course-section{margin-top:24px;padding:22px 18px}.course-sec-title{font-size:21px}.course-pair,.course-pager{grid-template-columns:1fr}.course-pager-link.is-next{text-align:left;align-items:flex-start}.course-index{padding:0 0 80px}.course-hero{padding:36px 0}.course-hero-title{font-size:36px}.course-hero-sub{font-size:17px}.course-mod{padding:22px 20px 20px}.course-mod-big{font-size:84px}.course-code-pre{font-size:13.5px}.course-modal-title{font-size:20px}}@media (width>=600px){.course-example>div{grid-template-columns:220px 1fr;align-items:baseline;gap:16px}}@media (prefers-reduced-motion:reduce){.course-shell *,.course-shell :before,.course-shell :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.viz{--viz-2:#b7791f;--viz-3:#2a9d8f;--viz-4:#8a8476;box-sizing:border-box;border:1px solid var(--border);background:var(--surface);min-width:0;color:var(--ink);border-radius:12px;margin:18px 0 0;padding:20px}@media (prefers-color-scheme:dark){.viz{--viz-2:#e3a857;--viz-3:#5cc2b2;--viz-4:#a8a297}}.viz-caption{font:400 14px/1.5 var(--sans);color:var(--ink-muted);margin:16px 0 0!important}.viz-bars{flex-direction:column;gap:14px;display:flex}.viz-bar-label{font:500 14px/1.4 var(--sans);color:var(--ink);display:block}.viz-bar-line{align-items:center;gap:10px;margin-top:6px;display:flex}.viz-bar-fill{background:var(--accent-line);border-radius:6px;flex:none;min-width:3px;height:18px;display:block}.viz-bar.is-hi .viz-bar-fill{background:var(--accent)}.viz-bar-value{font:500 14px/1 var(--sans);font-variant-numeric:tabular-nums;color:var(--ink-muted);white-space:nowrap}.viz-bar.is-hi .viz-bar-value{color:var(--accent-ink)}.viz-svg{width:100%;max-width:480px;height:auto;display:block;overflow:visible}.viz-axis{stroke:var(--border);stroke-width:1px}.viz-grid{stroke:var(--border);stroke-width:1px;stroke-dasharray:2 3}.viz-tick{font:400 11px var(--sans);fill:var(--ink-muted)}.viz-label{font:500 11px var(--sans);fill:var(--ink)}.viz-label.is-hi{fill:var(--accent-ink);font-weight:600}.viz-dot.is-plain{fill:var(--ink-muted)}.viz-dot.is-hi{fill:var(--accent)}.viz-dot.is-g1{fill:var(--viz-2)}.viz-dot.is-g2{fill:var(--viz-3)}.viz-dot.is-g3{fill:var(--viz-4)}.viz-link{stroke:var(--accent);stroke-width:1.2px;stroke-dasharray:3 3}.viz-line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.viz-legend{font:400 14px/1.4 var(--sans);color:var(--ink-muted);flex-wrap:wrap;gap:6px 16px;margin:0 0 12px;padding:0;list-style:none;display:flex}.viz-swatch{vertical-align:0;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.viz-swatch.is-g1{background:var(--viz-2)}.viz-swatch.is-g2{background:var(--viz-3)}.viz-swatch.is-g3{background:var(--viz-4)}.viz-table-wrap{min-width:0;max-width:100%;overflow-x:auto}.viz-table{border-collapse:collapse;width:100%;font:400 14px/1.45 var(--sans);font-variant-numeric:tabular-nums}.viz-table th,.viz-table td{text-align:left;vertical-align:top;white-space:normal;overflow-wrap:break-word;border-bottom:1px solid var(--border);padding:9px 10px}.viz-table td{min-width:5.5em}.viz-table code{overflow-wrap:anywhere}.viz-table th{color:var(--ink-muted);font-weight:600}.viz-table td{color:var(--ink)}.viz-table tr.is-hi td{background:var(--accent-soft);color:var(--accent-ink)}.viz-flow{flex-wrap:wrap;gap:10px 8px;margin:0;padding:0;list-style:none;display:flex}.viz-flow-item{align-items:center;gap:8px;display:inline-flex}.viz-flow-box{overflow-wrap:anywhere;border:1px solid var(--accent-line);background:var(--accent-soft);max-width:100%;color:var(--accent-ink);font:500 14px/1.3 var(--sans);border-radius:999px;padding:7px 14px}.viz-flow-arrow{color:var(--ink-muted);font-size:16px}.viz-chips{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.viz-chip{border:1px solid var(--border);background:var(--faint);max-width:100%;font:400 14px/1.35 var(--sans);color:var(--ink);border-radius:10px;flex-direction:column;padding:7px 12px;display:inline-flex}.viz-chip.is-hi{border-color:var(--accent-line);background:var(--accent-soft);color:var(--accent-ink)}.viz-chip-text{overflow-wrap:anywhere;font-weight:500}.viz-chip-note{color:var(--ink-muted);font-size:13px}.viz-chip.is-hi .viz-chip-note{color:var(--accent-ink)}.viz-compare{grid-template-columns:1fr;gap:12px;display:grid}.viz-col{border:1px solid var(--border);background:var(--page);border-radius:10px;padding:14px 16px}.viz-col-title{font:600 15px/1.4 var(--sans);color:var(--ink);margin:0!important}.viz-col-list{font:400 14px/1.5 var(--sans);color:var(--ink);margin:8px 0 0;padding-left:18px}.viz-col-list li+li{margin-top:4px}@media (width>=560px){.viz-compare{grid-template-columns:1fr 1fr}}@media (width<=520px){.viz-flow{flex-direction:column;align-items:flex-start}.viz-flow-item{flex-direction:column;align-items:flex-start;gap:4px}.viz-flow-arrow{margin-left:14px;transform:rotate(90deg)}}.viz-snip{min-width:0;max-width:100%;margin-top:16px}.viz-snip-bar{border-bottom:1px solid var(--border);justify-content:flex-end;padding:4px 8px;display:flex}.viz-snip-copy{color:var(--code-muted);border-color:#0000;margin:0;padding:1px 8px;font-size:12px;line-height:1.6}.viz-snip-copy:hover{color:var(--code-ink)}.viz-snip-pre{min-width:0;max-width:100%;font:14px/1.6 var(--mono);color:var(--code-ink);margin:0;padding:14px 16px;overflow-x:auto}.viz-snip-line{white-space:pre;display:block}.viz-snip .course-output{border-top:1px solid var(--border);min-width:0;max-width:100%;margin:0;padding:10px 16px 14px}.viz-snip .course-output-label{font-size:12px}.viz-snip .course-output-pre{font-size:13px}.course-steps .course-step{border-top:0;padding:0}.course-steps .course-step+.course-step{margin-top:28px}.course-steps .course-step-title{font:600 18px/1.4 var(--sans);margin:0}.learn-next{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);border-radius:1rem;padding:1.25rem 1.25rem 1.375rem;transition:border-color .2s,transform .2s;display:block}a.learn-next:hover{border-color:#25736f}@supports (color:color-mix(in lab, red, red)){a.learn-next:hover{border-color:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 45%, var(--color-ui-line,#1e232e))}}a.learn-next:hover{transform:translateY(-3px)}a.learn-next:focus-visible{outline:2px solid var(--color-ui-accent,#2dd4bf);outline-offset:3px}.lesson{--lesson:var(--color-learn-1,#38bdf8)}.learn-rail{--rail-title-x:3.375rem;--rail-tint:#2dd4bf0f}@supports (color:color-mix(in lab, red, red)){.learn-rail{--rail-tint:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 6%, transparent)}}.learn-rail{--rail-meta:#98a2b3cc}@supports (color:color-mix(in lab, red, red)){.learn-rail{--rail-meta:color-mix(in oklab, var(--color-ui-dim,#98a2b3) 80%, transparent)}}.learn-rail{font-size:.875rem;line-height:1.4}@media (width>=900px){.learn-rail{overscroll-behavior:contain;scrollbar-width:thin;max-height:calc(100dvh - 3rem);padding:0 .5rem 0 0;position:sticky;top:1.5rem;overflow-y:auto}}.learn-rail-toggle,.learn-rail-fade{display:none}@media (width<=899.98px){.learn-rail-toggle{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);width:100%;min-height:2.75rem;color:var(--color-ui-fg,#eef2f7);text-align:left;border-radius:.75rem;align-items:center;gap:.75rem;padding:.5rem .875rem;font-size:.9375rem;font-weight:600;display:flex}.learn-rail-toggle-where{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-dim,#98a2b3);flex:auto;font-size:.75rem;font-weight:400;overflow:hidden}.learn-rail-toggle[aria-expanded=true] .learn-rail-chevron{transform:rotate(90deg)}.learn-rail-body[data-open=false]{display:none}.learn-rail-body[data-open=true]{margin-top:.75rem}}.learn-rail-toggle:focus-visible,.learn-rail-seg-btn:focus-visible,.learn-rail-phase:focus-visible,.learn-rail-stop:focus-visible,.learn-stop-chip:focus-visible,.learn-rail-item:focus-visible{outline:2px solid var(--color-ui-accent,#2dd4bf);outline-offset:2px}.learn-rail[data-more=true] .learn-rail-fade{pointer-events:none;background:linear-gradient(to bottom, transparent, var(--color-ui-bg,#07080b) 85%);height:3rem;margin-top:-3rem;display:block;position:sticky;bottom:0}.learn-rail-seg{background:var(--color-ui-raised,#13161f);border-radius:.625rem;gap:2px;padding:3px;display:flex}.learn-rail-seg-btn{min-height:2.25rem;font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;color:var(--color-ui-dim,#98a2b3);border-radius:.4375rem;flex:1 1 0;font-size:.75rem;transition:background-color .16s,color .16s}.learn-rail-seg-btn:hover{color:var(--color-ui-fg,#eef2f7)}.learn-rail-seg-btn[aria-pressed=true]{background:var(--color-ui-accent,#2dd4bf);color:var(--color-ui-bg,#07080b);font-weight:600}.learn-rail-progress{margin-top:.75rem;padding:0 .5rem}.learn-rail-progress-text{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-dim,#98a2b3);font-size:.8125rem;line-height:1.5}.learn-rail-bar{background:var(--color-ui-line,#1e232e);border-radius:1px;height:2px;margin-top:.625rem;overflow:hidden}.learn-rail-bar>span{background:var(--color-ui-accent,#2dd4bf);height:100%;transition:width .24s;display:block}.learn-rail-item{border-left:2px solid #0000;border-radius:.5rem;grid-template-columns:1.5rem 1fr;align-items:baseline;gap:.625rem;padding:.5rem .625rem;transition:background-color .16s,border-color .16s;display:grid}.learn-rail-item:hover{background:var(--color-ui-raised,#13161f)}.learn-rail-item[aria-current=page]{background:var(--rail-hue,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-rail-item[aria-current=page]{background:color-mix(in oklab, var(--rail-hue,#38bdf8) 9%, transparent)}}.learn-rail-item[aria-current=page]{border-left-color:var(--rail-hue,#38bdf8)}.learn-rail-n{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;color:var(--color-ui-dim,#98a2b3);font-size:.6875rem}.learn-rail-item[aria-current=page] .learn-rail-n{color:var(--rail-hue,#38bdf8)}.learn-rail-group{border-radius:.75rem;margin-top:.75rem;transition:background-color .16s}.learn-rail-group:first-child{margin-top:0}.learn-rail-group[data-open=true]{background:var(--rail-tint)}.learn-rail-phase{text-align:left;border-radius:.625rem;grid-template-columns:2.25rem minmax(0,1fr) .75rem;align-items:center;column-gap:.625rem;width:100%;min-height:2.5rem;padding:.5rem;transition:background-color .16s;display:grid}.learn-rail-phase:hover{background:var(--color-ui-raised,#13161f)}.learn-rail-group[data-open=true]>.learn-rail-phase{background:#2dd4bf24}@supports (color:color-mix(in lab, red, red)){.learn-rail-group[data-open=true]>.learn-rail-phase{background:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 14%, transparent)}}.learn-rail-group[data-open=true]>.learn-rail-phase:hover{background:#2dd4bf33}@supports (color:color-mix(in lab, red, red)){.learn-rail-group[data-open=true]>.learn-rail-phase:hover{background:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 20%, transparent)}}.learn-rail-group[data-open=true] .learn-rail-phase-title{color:var(--color-ui-accent,#2dd4bf)}.learn-rail-group[data-open=true] .learn-rail-badge{border-color:var(--color-ui-accent,#2dd4bf);color:var(--color-ui-accent,#2dd4bf)}.learn-rail-group[data-current=true] .learn-rail-badge{border-color:var(--color-ui-accent,#2dd4bf);background:var(--color-ui-accent,#2dd4bf);color:var(--color-ui-bg,#07080b);font-weight:600}:is(.learn-rail-stop[aria-current=page],.learn-rail-stop.active) .learn-rail-tag{background:var(--color-ui-accent,#2dd4bf);color:var(--color-ui-bg,#07080b);border-radius:999px;padding:.0625rem .375rem;font-weight:600}.learn-rail-group[data-open=true] .learn-rail-chevron{color:var(--color-ui-accent,#2dd4bf)}.learn-rail-badge{border:1px solid var(--color-ui-line-lit,#2b3240);text-align:center;width:2.25rem;font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;color:var(--color-ui-dim,#98a2b3);background:var(--color-ui-bg,#07080b);border-radius:999px;justify-self:start;padding:.125rem 0;font-size:.6875rem}.learn-rail-phase-text{flex-direction:column;gap:.125rem;min-width:0;display:flex}.learn-rail-phase-title{-webkit-line-clamp:2;color:var(--color-ui-fg,#eef2f7);overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.9375rem;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.learn-rail-phase-meta{white-space:normal;color:var(--rail-meta);font-size:.78125rem;line-height:1.4}.learn-rail-chevron{color:var(--color-ui-dim,#98a2b3);justify-self:center;font-size:.75rem;line-height:1;transition:transform .16s}.learn-rail-phase[aria-expanded=true] .learn-rail-chevron{transform:rotate(90deg)}.learn-rail-stops{padding:0 .25rem .5rem}.learn-rail-stop{color:var(--color-ui-fg,#eef2f7);border-left:2px solid #0000;border-radius:.5rem;grid-template-columns:2.25rem minmax(0,1fr) auto;align-items:start;column-gap:.625rem;padding:.4375rem .5rem .4375rem .125rem;font-size:.875rem;line-height:1.4;transition:background-color .16s,border-color .16s;display:grid}.learn-rail-stop:hover{background:var(--color-ui-raised,#13161f)}.learn-rail-stop:before{content:"";background:var(--rail-hue,var(--color-ui-accent,#2dd4bf));border-radius:50%;grid-area:1/1;place-self:start center;width:.4375rem;height:.4375rem;margin-top:.375rem}.learn-rail-stop[data-kind=build]:before{background:var(--color-ui-accent,#2dd4bf);border-radius:2px;box-shadow:0 0 0 1px #2dd4bf66}@supports (color:color-mix(in lab, red, red)){.learn-rail-stop[data-kind=build]:before{box-shadow:0 0 0 1px color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 40%, transparent)}}.learn-rail-stop-name{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;grid-area:1/2;display:-webkit-box;overflow:hidden}.learn-rail-end{white-space:nowrap;grid-area:1/3;align-items:center;gap:.375rem;display:inline-flex}.learn-rail-tag{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-dim,#98a2b3);white-space:nowrap;font-size:.6875rem;line-height:1.4}.learn-rail-planned{border:1px solid var(--color-ui-line,#232838);font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.04em;color:var(--color-ui-fg,#eef2f7);white-space:nowrap;border-radius:999px;padding:0 .3125rem;font-size:.625rem;line-height:1.5}:is(.learn-rail-stop[aria-current=page],.learn-rail-stop.active){border-left-color:var(--color-ui-accent,#2dd4bf);background:#2dd4bf17}@supports (color:color-mix(in lab, red, red)){:is(.learn-rail-stop[aria-current=page],.learn-rail-stop.active){background:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 9%, transparent)}}:is(.learn-rail-stop[aria-current=page],.learn-rail-stop.active){color:var(--color-ui-fg,#eef2f7);font-weight:600}.learn-step-title{scroll-margin-top:6rem}.learn-step{padding-left:3rem;position:relative}.learn-step-n{border:1px solid var(--lesson,#38bdf8);border-radius:9999px;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:flex;position:absolute;top:.125rem;left:0}@supports (color:color-mix(in lab, red, red)){.learn-step-n{border:1px solid color-mix(in oklab, var(--lesson,#38bdf8) 35%, var(--color-ui-line,#1e232e))}}.learn-step-n{background:var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-step-n{background:color-mix(in oklab, var(--lesson,#38bdf8) 10%, var(--color-ui-surface,#0d0f15))}}.learn-step-n{color:var(--lesson,#38bdf8);font-family:var(--font-mono,ui-monospace, monospace);font-size:.8125rem;font-weight:500}.learn-step:not(:last-child):before{content:"";background:linear-gradient(to bottom, var(--lesson,#38bdf8), var(--color-ui-line,#1e232e) 40%, transparent);width:1px;position:absolute;top:2.125rem;bottom:-2.5rem;left:.875rem}@supports (color:color-mix(in lab, red, red)){.learn-step:not(:last-child):before{background:linear-gradient(to bottom, color-mix(in oklab, var(--lesson,#38bdf8) 30%, transparent), var(--color-ui-line,#1e232e) 40%, transparent)}}.learn-fig{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);border-radius:.75rem;overflow:hidden}.learn-fig-head{border-bottom:1px solid var(--color-ui-line,#1e232e);padding:1rem 1.125rem .875rem}.learn-fig-body{padding:1.125rem}.learn-fig-source{border-top:1px dashed var(--color-ui-line,#1e232e);background:#07080b8c;padding:.75rem 1.125rem}@supports (color:color-mix(in lab, red, red)){.learn-fig-source{background:color-mix(in oklab, var(--color-ui-bg,#07080b) 55%, transparent)}}.learn-fig-source{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-faint,#5f6878);font-size:.6875rem;line-height:1.6}.learn-caveat{border:1px dashed var(--color-ui-line-lit,#2b3240);background:#0d0f1599;border-radius:.75rem}@supports (color:color-mix(in lab, red, red)){.learn-caveat{background:color-mix(in oklab, var(--color-ui-surface,#0d0f15) 60%, transparent)}}.learn-caveat{padding:1.125rem 1.25rem}.learn-term{color:var(--color-ui-fg,#eef2f7);border-bottom:1px dotted var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-term{border-bottom:1px dotted color-mix(in oklab, var(--lesson,#38bdf8) 60%, var(--color-ui-line-lit,#2b3240))}}.learn-term{cursor:help;font-style:normal}.learn-chart .grid{stroke:var(--color-ui-line,#1e232e);stroke-width:1px}.learn-chart .axis{stroke:var(--color-ui-line-lit,#2b3240);stroke-width:1px}.learn-chart text{font-family:var(--font-mono,ui-monospace, monospace);fill:var(--color-ui-faint,#5f6878)}.learn-chart .bar{fill:var(--lesson,#38bdf8)}.learn-chart .bar-muted{fill:var(--color-ui-line-lit,#2b3240)}.learn-chart .bar:hover,.learn-chart .bar-muted:hover{filter:brightness(1.25)}.run-cell{fill:#2a2d32}@supports (color:color-mix(in lab, red, red)){.run-cell{fill:color-mix(in oklab, var(--color-ui-fg,#eef2f7) 13%, var(--color-ui-surface,#0d0f15))}}.run-cell{stroke:var(--color-ui-line-lit,#2b3240)}.run-cell[data-pass=false]{fill:#8d424e}@supports (color:color-mix(in lab, red, red)){.run-cell[data-pass=false]{fill:color-mix(in oklab, var(--color-ui-danger,#fb7185) 55%, var(--color-ui-bg,#07080b))}}.run-cell[data-pass=false]{stroke:var(--color-ui-danger,#fb7185)}.veclab-handle{cursor:grab}.veclab-handle:active{cursor:grabbing}.veclab svg{touch-action:none}.learn-open{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);text-align:left;cursor:pointer;border-radius:.75rem;grid-template-columns:2.25rem 1fr auto;align-items:center;gap:.875rem;width:100%;margin:1.25rem 0;padding:.75rem .875rem;transition:border-color .18s,background-color .18s,transform .18s;display:grid}.learn-open:hover{border-color:var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-open:hover{border-color:color-mix(in oklab, var(--lesson,#38bdf8) 45%, var(--color-ui-line,#1e232e))}}.learn-open:hover{background:var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-open:hover{background:color-mix(in oklab, var(--lesson,#38bdf8) 6%, var(--color-ui-surface,#0d0f15))}}.learn-open:hover{transform:translateY(-1px)}.learn-open:focus-visible{outline:2px solid var(--lesson,#38bdf8);outline-offset:3px}.learn-open-mark{border:1px solid var(--lesson,#38bdf8);border-radius:.5rem;justify-content:center;align-items:center;width:2.25rem;height:2.25rem;display:flex}@supports (color:color-mix(in lab, red, red)){.learn-open-mark{border:1px solid color-mix(in oklab, var(--lesson,#38bdf8) 30%, var(--color-ui-line,#1e232e))}}.learn-open-mark{background:var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.learn-open-mark{background:color-mix(in oklab, var(--lesson,#38bdf8) 10%, transparent)}}.learn-open-mark{color:var(--lesson,#38bdf8);font-family:var(--font-mono,ui-monospace, monospace);font-size:.6875rem}.learn-open-text{flex-direction:column;gap:.1875rem;min-width:0;display:flex}.learn-open-title{color:var(--color-ui-fg,#eef2f7);font-size:.875rem}.learn-open-path{font-family:var(--font-mono,ui-monospace, monospace);text-overflow:ellipsis;white-space:nowrap;color:var(--color-ui-faint,#5f6878);font-size:.6875rem;overflow:hidden}.learn-open-go{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ui-faint,#5f6878);font-size:.6875rem}.learn-open:hover .learn-open-go{color:var(--lesson,#38bdf8)}.learn-walk{max-width:62rem}.learn-walk-h{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ui-faint,#5f6878);font-size:.6875rem}.lesson{--snip-accent:var(--lesson,#38bdf8)}.learn-map-grid{grid-template-columns:1fr auto 1fr auto 1fr;align-items:stretch;gap:.5rem;display:grid}.learn-map-edge{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-faint,#5f6878);font-size:.6875rem}.learn-map-edge:before{content:"↓ "}.learn-map-stem{background:var(--color-ui-line-lit,#2b3240);width:1px;height:.875rem;margin-left:1.25rem;display:block}.learn-map-brace{border-top:1px dashed var(--color-ui-line-lit,#2b3240);border-right:1px dashed var(--color-ui-line-lit,#2b3240);border-left:1px dashed var(--color-ui-line-lit,#2b3240);border-radius:.25rem .25rem 0 0;height:.625rem;margin-bottom:.5rem;display:block}.said{border-top:1px solid var(--color-ui-line,#1e232e);padding-top:1.5rem}.said-quote{border-left:2px solid var(--lesson,#38bdf8);max-width:62ch;margin:1rem 0 0;padding-left:1.25rem}@supports (color:color-mix(in lab, red, red)){.said-quote{border-left:2px solid color-mix(in oklab, var(--lesson,#38bdf8) 55%, var(--color-ui-line,#1e232e))}}.said-quote{color:var(--color-ui-fg,#eef2f7);font-size:1.0625rem;line-height:1.75}.said-quote strong{font-family:var(--font-mono,ui-monospace, monospace);letter-spacing:-.01em;font-size:.9375em;font-weight:500}.matrix-open{color:var(--color-ui-fg,#eef2f7);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:.5rem;padding:0;transition:color .16s;display:inline-flex}.matrix-open:hover{color:var(--lesson,#38bdf8)}.matrix-open:focus-visible{outline:2px solid var(--lesson,#38bdf8);outline-offset:3px;border-radius:.25rem}.matrix-open-mark{border:1px solid var(--lesson,#38bdf8);flex:none;justify-content:center;align-items:center;width:1.125rem;height:1.125rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.matrix-open-mark{border:1px solid color-mix(in oklab, var(--lesson,#38bdf8) 45%, transparent)}}.matrix-open-mark{color:var(--lesson,#38bdf8);font-family:var(--font-mono,ui-monospace, monospace);border-radius:999px;font-size:.625rem;line-height:1;transition:background-color .16s}.matrix-open:hover .matrix-open-mark{background:var(--lesson,#38bdf8)}@supports (color:color-mix(in lab, red, red)){.matrix-open:hover .matrix-open-mark{background:color-mix(in oklab, var(--lesson,#38bdf8) 14%, transparent)}}:root{--color-learn-1:#38bdf8;--color-learn-2:#818cf8;--color-learn-3:#c084fc;--color-learn-4:#e879f9;--color-learn-5:#fb923c}.lesson-card{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);border-radius:1rem;padding:1.25rem 1.25rem 1.375rem;transition:border-color .2s,transform .2s;display:block}a.lesson-card:hover{border-color:#25736f}@supports (color:color-mix(in lab, red, red)){a.lesson-card:hover{border-color:color-mix(in oklab, var(--color-ui-accent,#2dd4bf) 45%, var(--color-ui-line,#1e232e))}}a.lesson-card:hover{transform:translateY(-3px)}a.lesson-card:focus-visible{outline:2px solid var(--color-ui-accent,#2dd4bf);outline-offset:3px}.cal-label{letter-spacing:.01em;color:var(--steps-built,#818cf8);font-size:.875rem;font-weight:600}.cal-label[data-tone=learn]{color:var(--steps-accent,#7dd3fc)}.cal-label[data-tone=quiet]{color:var(--color-ui-faint,#5f6878)}.cal-phases{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem;display:grid}@media (width>=40rem){.cal-phases{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width>=64rem){.cal-phases{grid-template-columns:repeat(7,minmax(0,1fr));align-items:stretch;gap:0}}.cal-phase{text-align:left;border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);border-radius:.875rem;grid-template-rows:auto auto 1fr;gap:.375rem;padding:.875rem .875rem 1rem;transition:background .2s,border-color .2s;display:grid;position:relative}@media (width>=64rem){.cal-phase{border-bottom-width:0;border-radius:.875rem .875rem 0 0;margin-inline-start:-1px}.cal-phase:first-child{margin-inline-start:0}}.cal-phase:hover{background:var(--color-ui-raised,#13161f)}.cal-phase[aria-selected=true]{z-index:1;border-color:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-phase[aria-selected=true]{border-color:color-mix(in oklab, var(--steps-built,#818cf8) 55%, var(--color-ui-line,#1e232e))}}.cal-phase[aria-selected=true]{background:var(--color-ui-raised,#13161f)}.cal-phase[aria-selected=true]:before{content:"";background:var(--steps-built,#818cf8);inset-inline:.875rem;border-radius:3px;height:3px;position:absolute;top:-1px}.cal-phase-n{color:var(--color-ui-faint,#5f6878);font-size:.8125rem;font-weight:600}.cal-phase-label{color:var(--color-ui-dim,#b3bdcc);font-size:1rem;font-weight:600;line-height:1.25}.cal-phase[aria-selected=true] .cal-phase-label,.cal-phase:hover .cal-phase-label{color:var(--color-ui-fg,#e6ebf2)}.cal-phase-status{color:var(--steps-built,#818cf8);align-self:end;gap:.375rem;font-size:.8125rem;display:grid}.cal-pips{gap:3px;display:flex}.cal-pips>span{background:var(--steps-built,#818cf8);border-radius:4px;flex:1;max-width:1.5rem;height:4px}.cal-phasepanel{border:1px solid var(--color-ui-line,#1e232e);background:linear-gradient(180deg, var(--color-ui-raised,#13161f) 0, var(--color-ui-bg,#0a0c11) 22rem);border-radius:.875rem;padding:1.5rem 1rem 2rem}@media (width>=40rem){.cal-phasepanel{padding:2rem 1.75rem 2.5rem}}@media (width>=64rem){.cal-phasepanel{border-top-width:0;border-radius:0 0 .875rem .875rem;padding:2.5rem 2.25rem 2.75rem}}.cal-step{border:1px solid var(--color-ui-line,#1e232e);background:var(--color-ui-surface,#0d0f15);border-radius:1rem;padding:1.25rem 1rem 1.5rem;scroll-margin-top:1.5rem}@media (width>=40rem){.cal-step{padding:1.75rem 1.75rem 2rem}}.cal-step-head{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.25rem 1rem;display:grid}.cal-step-n{border:2px solid var(--steps-built,#818cf8);background:var(--steps-built,#818cf8);border-radius:999px;grid-row:span 2;place-items:center;min-width:2.75rem;height:2.75rem;padding-inline:.375rem;display:grid}@supports (color:color-mix(in lab, red, red)){.cal-step-n{background:color-mix(in oklab, var(--steps-built,#818cf8) 16%, transparent)}}.cal-step-n{color:var(--color-ui-fg,#e6ebf2);font-size:.875rem;font-weight:700}.cal-step-title{letter-spacing:-.005em;color:var(--color-ui-fg,#e6ebf2);font-size:1.3125rem;font-weight:700;line-height:1.3}.cal-step-meta{flex-wrap:wrap;align-items:center;gap:.375rem .5rem;display:flex}.cal-pill{border:1px solid var(--color-ui-line-lit,#3a4760);color:var(--color-ui-dim,#b3bdcc);white-space:nowrap;border-radius:999px;align-items:center;gap:.375rem;padding:.125rem .625rem;font-size:.8125rem;line-height:1.5;display:inline-flex}.cal-pill[data-tone=done]{border-color:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-pill[data-tone=done]{border-color:color-mix(in oklab, var(--steps-built,#818cf8) 55%, transparent)}}.cal-pill[data-tone=done]{background:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-pill[data-tone=done]{background:color-mix(in oklab, var(--steps-built,#818cf8) 12%, transparent)}}.cal-pill[data-tone=done]{color:var(--steps-built,#818cf8)}.cal-pill[data-tone=learn]{border-color:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-pill[data-tone=learn]{border-color:color-mix(in oklab, var(--steps-accent,#7dd3fc) 55%, transparent)}}.cal-pill[data-tone=learn]{color:var(--steps-accent,#7dd3fc)}.cal-pill[data-tone=pending]{color:var(--color-ui-faint,#5f6878);border-style:dashed}.cal-step-body{gap:1.5rem;margin-top:1.5rem;display:grid}@media (width>=40rem){.cal-step-body{padding-left:3.75rem}}.cal-part>h4{margin-bottom:.375rem}.cal-part p,.cal-prose p{max-width:68ch;color:var(--color-ui-dim,#b3bdcc);font-size:1.0625rem;line-height:1.7}.cal-part p+p,.cal-prose p+p{margin-top:.75rem}.cal-part strong,.cal-prose strong,.cal-lesson strong,.cal-because strong{color:var(--color-ui-fg,#e6ebf2);font-weight:600}.cal-lesson{border:1px solid var(--steps-accent,#7dd3fc);border-radius:.75rem}@supports (color:color-mix(in lab, red, red)){.cal-lesson{border:1px solid color-mix(in oklab, var(--steps-accent,#7dd3fc) 35%, transparent)}}.cal-lesson{background:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-lesson{background:color-mix(in oklab, var(--steps-accent,#7dd3fc) 6%, transparent)}}.cal-lesson{padding:1rem 1.125rem 1.125rem}.cal-lesson>h4{align-items:center;gap:.5rem;margin-bottom:.5rem;display:flex}.cal-lesson p{max-width:66ch;color:var(--color-ui-dim,#b3bdcc);font-size:1rem;line-height:1.7}.cal-lesson p+p{margin-top:.625rem}.cal-because{border-left:2px solid var(--steps-accent,#7dd3fc);max-width:68ch}@supports (color:color-mix(in lab, red, red)){.cal-because{border-left:2px solid color-mix(in oklab, var(--steps-accent,#7dd3fc) 50%, transparent)}}.cal-because{color:var(--color-ui-dim,#b3bdcc);padding:.25rem 0 .25rem 1rem;font-size:1rem;line-height:1.7}.cal-terms{color:var(--color-ui-faint,#5f6878);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.875rem;display:flex}.cal-term{border:1px solid var(--color-ui-line-lit,#3a4760);color:var(--color-ui-dim,#b3bdcc);border-radius:999px;padding:.125rem .625rem;transition:color .16s,border-color .16s}.cal-term:hover{border-color:var(--steps-accent,#7dd3fc);color:var(--color-ui-fg,#e6ebf2)}.cal-fig-cap{color:var(--color-ui-fg,#e6ebf2);flex-wrap:wrap;align-items:center;gap:.375rem .625rem;padding-bottom:.625rem;font-size:.9375rem;font-weight:600;display:flex}.cal-fig-src{font-family:var(--font-mono,ui-monospace, monospace);color:var(--color-ui-faint,#5f6878);font-size:.75rem;font-weight:400}.cal-fig .snip-frame{margin:0}.cal-raw{border:1px solid var(--color-ui-line,#1e232e);background:var(--snip-bg,var(--color-ui-surface,#0d0f15));font-family:var(--font-mono,ui-monospace, monospace);color:#d4dae3;white-space:pre;border-radius:.75rem;padding:.875rem 1rem;font-size:.875rem;line-height:1.7;overflow-x:auto}.cal-raw mark{background:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-raw mark{background:color-mix(in oklab, var(--steps-accent,#7dd3fc) 26%, transparent)}}.cal-raw mark{color:var(--color-ui-fg,#e6ebf2);border-radius:.1875rem;padding:.0625rem .1875rem}.cal-table{border-collapse:separate;border-spacing:0;border:1px solid var(--color-ui-line,#1e232e);border-radius:.75rem;width:100%;font-size:.9375rem;overflow:hidden}.cal-table th,.cal-table td{text-align:left;vertical-align:top;border-top:1px solid var(--color-ui-line,#1e232e);padding:.625rem .875rem;line-height:1.55}.cal-table thead th{background:var(--color-ui-raised,#13161f);color:var(--color-ui-faint,#5f6878);border-top:0;font-size:.8125rem;font-weight:600}.cal-table td{color:var(--color-ui-dim,#b3bdcc)}.cal-table td:first-child{color:var(--color-ui-fg,#e6ebf2)}.cal-table td[data-num]{font-family:var(--font-mono,ui-monospace, monospace);text-align:right;white-space:nowrap}.cal-table tr[data-lit=true] td{background:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-table tr[data-lit=true] td{background:color-mix(in oklab, var(--steps-built,#818cf8) 9%, transparent)}}.cal-table tr[data-lit=true] td{color:var(--color-ui-fg,#e6ebf2)}.cal-table td code{font-family:var(--font-mono,ui-monospace, monospace);overflow-wrap:normal;white-space:nowrap;font-size:.85em}.cal-numbers{flex-wrap:wrap;gap:1rem 2.5rem;display:flex}.cal-number-v{letter-spacing:-.01em;color:var(--color-ui-fg,#e6ebf2);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700;line-height:1.1}.cal-number-l{max-width:22ch;color:var(--color-ui-faint,#5f6878);margin-top:.25rem;font-size:.875rem;line-height:1.45}.cal-fignote{max-width:68ch;color:var(--color-ui-faint,#5f6878);margin-top:.625rem;font-size:.9375rem;line-height:1.65}.cal-fignote strong{color:var(--color-ui-dim,#b3bdcc);font-weight:600}.cal-map{align-items:stretch;gap:.5rem;display:grid}@media (width>=64rem){.cal-map{grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:0}}.cal-node{border:1px solid var(--color-ui-line-lit,#3a4760);background:var(--color-ui-surface,#0d0f15);border-radius:.875rem;align-content:start;gap:.375rem;padding:.875rem 1rem 1rem;display:grid}.cal-node[data-side=ours]{border-color:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-node[data-side=ours]{border-color:color-mix(in oklab, var(--steps-built,#818cf8) 60%, transparent)}}.cal-node[data-side=ours]{background:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-node[data-side=ours]{background:color-mix(in oklab, var(--steps-built,#818cf8) 7%, var(--color-ui-surface,#0d0f15))}}.cal-node[data-side=person]{background:0 0;border-style:dashed}.cal-node-name{color:var(--color-ui-fg,#e6ebf2);font-size:1rem;font-weight:700;line-height:1.3}.cal-node-who{color:var(--color-ui-faint,#5f6878);font-size:.8125rem}.cal-node[data-side=ours] .cal-node-who{color:var(--steps-built,#818cf8)}.cal-node-holds{color:var(--color-ui-dim,#b3bdcc);margin-top:.25rem;font-size:.875rem;line-height:1.5}.cal-arrow{text-align:center;color:var(--steps-accent,#7dd3fc);align-content:center;place-items:center;gap:.125rem;padding:.125rem 0;font-size:.75rem;line-height:1.3;display:grid}.cal-arrow-head{font-size:1.125rem;line-height:1}.cal-arrow-head:before{content:"↓"}@media (width>=64rem){.cal-arrow{width:5.25rem;padding:0 .25rem}.cal-arrow-head:before{content:"→"}}.cal-arrow[data-line=true]{position:relative}@media (width>=64rem){.cal-arrow[data-line=true]:after{content:"";border-left:2px dashed #eef2f759;position:absolute;top:-.75rem;bottom:-.75rem;left:50%}@supports (color:color-mix(in lab, red, red)){.cal-arrow[data-line=true]:after{border-left:2px dashed color-mix(in oklab, var(--color-ui-fg,#e6ebf2) 35%, transparent)}}.cal-arrow[data-line=true]:after{z-index:-1}}.cal-arrow[data-line=true]>span:last-child{background:var(--color-ui-bg,#0a0c11);padding-block:.25rem;position:relative}.cal-map-key{color:var(--color-ui-faint,#5f6878);flex-wrap:wrap;gap:.5rem 1.25rem;font-size:.875rem;display:flex}.cal-swatch{vertical-align:-.0625rem;border:1px solid var(--color-ui-line-lit,#3a4760);background:var(--color-ui-surface,#0d0f15);border-radius:.25rem;width:.75rem;height:.75rem;margin-right:.375rem;display:inline-block}.cal-swatch[data-side=ours]{border-color:var(--steps-built,#818cf8);background:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-swatch[data-side=ours]{background:color-mix(in oklab, var(--steps-built,#818cf8) 20%, var(--color-ui-surface,#0d0f15))}}.cal-hood-text{max-width:66ch;color:var(--color-ui-dim,#b3bdcc);font-size:1rem;line-height:1.7}.cal-prose code,.cal-step code,.cal-hood-text code,.cal-because code{font-family:var(--font-mono,ui-monospace, monospace);background:#13161fcc;border-radius:.3125rem;padding:.0625rem .3125rem;font-size:.9em}@supports (color:color-mix(in lab, red, red)){.cal-prose code,.cal-step code,.cal-hood-text code,.cal-because code{background:color-mix(in oklab, var(--color-ui-raised,#13161f) 80%, transparent)}}.cal-prose code,.cal-step code,.cal-hood-text code,.cal-because code{color:var(--color-ui-fg,#e6ebf2);overflow-wrap:anywhere}.cal-hood-trigger{text-align:left;border:1px solid var(--color-ui-line-lit,#3a4760);background:var(--color-ui-raised,#13161f);border-radius:.75rem;align-items:center;gap:1rem;width:100%;padding:.875rem 1rem;transition:border-color .16s;display:flex}.cal-hood-trigger:hover{border-color:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-hood-trigger:hover{border-color:color-mix(in oklab, var(--steps-accent,#7dd3fc) 60%, transparent)}}.cal-hood-trigger:focus-visible{outline:2px solid var(--steps-accent,#7dd3fc);outline-offset:3px}.cal-hood-icon{background:var(--steps-accent,#7dd3fc);border-radius:.5rem;flex-shrink:0;place-items:center;width:2.25rem;height:2.25rem;display:grid}@supports (color:color-mix(in lab, red, red)){.cal-hood-icon{background:color-mix(in oklab, var(--steps-accent,#7dd3fc) 12%, transparent)}}.cal-hood-icon{color:var(--steps-accent,#7dd3fc)}.cal-hood-body{flex:1;min-width:0;display:block}.cal-hood-title{color:var(--color-ui-fg,#e6ebf2);font-size:.9375rem;font-weight:600;display:block}.cal-hood-blurb{color:var(--color-ui-dim,#b3bdcc);font-size:.9375rem;line-height:1.375;display:block}.cal-hood-open{color:var(--steps-accent,#7dd3fc);flex-shrink:0;font-size:.875rem;font-weight:600;transition:color .16s}.cal-hood-trigger:hover .cal-hood-open{color:var(--color-ui-fg,#e6ebf2)}.cal-hood-head-title{color:var(--color-ui-fg,#e6ebf2);font-size:1rem;font-weight:600}.cal-hood-head-sub{color:var(--color-ui-faint,#5f6878);margin-top:.125rem;font-size:.875rem}.cal-hood-section-title{color:var(--color-ui-fg,#e6ebf2);font-size:1.0625rem;font-weight:700}.cal-phase-title{letter-spacing:-.025em;color:var(--color-ui-fg,#e6ebf2);font-size:1.5rem;font-weight:700;line-height:1.25}@media (width>=48rem){.cal-phase-title{font-size:1.75rem}}.cal-phase-result{border:1px solid var(--color-ui-line-lit,#3a4760);background:var(--color-ui-surface,#0d0f15);border-radius:.75rem;margin-top:1.5rem;padding:.875rem 1rem}.cal-step[data-state=planned]{background:#0d0f158c}@supports (color:color-mix(in lab, red, red)){.cal-step[data-state=planned]{background:color-mix(in oklab, var(--color-ui-surface,#0d0f15) 55%, transparent)}}.cal-step[data-state=planned]{border-style:dashed}.cal-step[data-state=next] .cal-step-n{border-color:var(--steps-accent,#7dd3fc);color:var(--color-ui-fg,#e6ebf2)}.cal-step[data-state=done] .cal-step-n{background:var(--steps-built,#818cf8)}@supports (color:color-mix(in lab, red, red)){.cal-step[data-state=done] .cal-step-n{background:color-mix(in oklab, var(--steps-built,#818cf8) 16%, transparent)}}.cal-pill[data-tone=next]{border-color:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-pill[data-tone=next]{border-color:color-mix(in oklab, var(--steps-accent,#7dd3fc) 55%, transparent)}}.cal-pill[data-tone=next]{color:var(--steps-accent,#7dd3fc)}.cal-pill[data-tone=planned]{color:var(--color-ui-faint,#5f6878);border-style:dashed}.cal-lesson[data-planned=true]{border-style:dashed;border-color:var(--color-ui-line-lit,#3a4760);background:0 0}.cal-lesson[data-planned=true] p{color:var(--color-ui-dim,#b3bdcc)}.cal-phase[data-built=false]{border-style:dashed}.cal-meter{background:var(--color-ui-line,#1e232e);border-radius:4px;height:4px;display:block;overflow:hidden}.cal-meter>span{background:var(--steps-built,#818cf8);border-radius:4px;height:100%;display:block}.cal-waits{border:1px dashed var(--color-ui-line-lit,#3a4760);border-radius:.75rem;margin-top:1.5rem;padding:.875rem 1rem}.cal-waits-list{gap:.375rem;margin-top:.5rem;display:grid}.cal-waits-list li{color:var(--color-ui-dim,#b3bdcc);gap:.75rem;font-size:1rem;line-height:1.6;display:flex}.cal-waits-list li>span:first-child{color:var(--color-ui-faint,#5f6878)}.cal-wire-box{border:1px solid var(--color-ui-line,#1e232e);background:var(--snip-bg,var(--color-ui-bg,#0a0c11));border-radius:.75rem;padding:.5rem 1rem}.cal-wire{grid-template-columns:minmax(0,1fr);align-items:start;gap:.125rem .75rem;padding:.5rem 0;display:grid}@media (width>=40rem){.cal-wire{grid-template-columns:5.5rem minmax(0,1fr)}}.cal-wire+.cal-wire{border-top:1px solid #1e232e99}@supports (color:color-mix(in lab, red, red)){.cal-wire+.cal-wire{border-top:1px solid color-mix(in oklab, var(--color-ui-line,#1e232e) 60%, transparent)}}.cal-wire-dir{color:var(--steps-built,#818cf8);font-size:.8125rem;font-weight:600;line-height:1.7}.cal-wire[data-dir=in] .cal-wire-dir{color:var(--steps-accent,#7dd3fc)}.cal-wire-body{font-family:var(--font-mono,ui-monospace, monospace);color:#d4dae3;white-space:pre;font-size:.875rem;line-height:1.7;overflow-x:auto}.cal-wire-body mark{background:var(--steps-accent,#7dd3fc)}@supports (color:color-mix(in lab, red, red)){.cal-wire-body mark{background:color-mix(in oklab, var(--steps-accent,#7dd3fc) 26%, transparent)}}.cal-wire-body mark{color:var(--color-ui-fg,#e6ebf2);border-radius:.1875rem;padding:.0625rem .1875rem}.phase-stop{scroll-margin-top:5rem}.learn-stop-chip{border:1px solid var(--color-ui-line,#232838);min-height:2rem;color:var(--color-ui-dim,#98a2b3);border-radius:999px;align-items:center;padding:.25rem .625rem;transition:background-color .16s,border-color .16s,color .16s;display:inline-flex}.learn-stop-chip:hover{color:var(--color-ui-fg,#eef2f7);border-color:var(--chip-hue,var(--color-ui-accent,#2dd4bf))}.learn-stop-chip[data-kind=gap]{border-style:dashed}.learn-stop-chip[aria-current=page]{color:var(--color-ui-fg,#eef2f7);border-color:var(--chip-hue,var(--color-ui-accent,#2dd4bf));background:var(--chip-hue,#2dd4bf)}@supports (color:color-mix(in lab, red, red)){.learn-stop-chip[aria-current=page]{background:color-mix(in oklab, var(--chip-hue,var(--color-ui-accent,#2dd4bf)) 14%, transparent)}}html{background:var(--color-ui-bg);color:var(--color-ui-fg);-webkit-font-smoothing:antialiased;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{background-image:radial-gradient(60rem 30rem at 15% -10%,#2dd4bf12,#0000 60%),radial-gradient(50rem 25rem at 95% 0,#60a5fa0d,#0000 60%);background-repeat:no-repeat}:root{--title-1:#2dd4bf;--title-2:#60a5fa;--title-3:#a78bfa;--title-4:#f472b6;--ui-progress:linear-gradient(90deg, var(--color-hop-1), var(--color-hop-3), var(--color-hop-4), var(--color-hop-5), var(--color-hop-6))}.case-card{border:1px solid var(--color-ui-line);background:var(--color-ui-surface);border-radius:1rem;padding:1.25rem 1.25rem 1.375rem;transition:border-color .2s,transform .2s;display:block}a.case-card:hover{border-color:#25736f}@supports (color:color-mix(in lab, red, red)){a.case-card:hover{border-color:color-mix(in oklab, var(--color-ui-accent) 45%, var(--color-ui-line))}}a.case-card:hover{transform:translateY(-3px)}a.case-card:focus-visible{outline:2px solid var(--color-ui-accent);outline-offset:3px}.case-card--elsewhere{background:0 0;border-style:dashed}.hub-wrap{width:100%}.hub{width:100%;position:relative}.hub--desk{display:none}.hub--mobile{aspect-ratio:350/520}@media (width>=48rem){.hub--desk{aspect-ratio:1000/440;max-width:1000px;margin:0 auto;display:block}.hub--mobile{display:none}}.hub-svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.hub-glow{fill:#2dd4bf17}@supports (color:color-mix(in lab, red, red)){.hub-glow{fill:color-mix(in oklab, var(--color-ui-accent) 9%, transparent)}}.hub-glow{filter:blur(18px)}.hub-fibre{fill:none;stroke:var(--color-ui-dim);stroke-width:1px;stroke-opacity:.18;animation:9s ease-in-out infinite hub-fibre}.hub-fibre--far{stroke-opacity:.1;stroke-dasharray:2 4}@keyframes hub-fibre{0%,4%{stroke-opacity:.18}9%{stroke-opacity:.85}26%,to{stroke-opacity:.18}}.hub-base{fill:none;stroke:var(--color-ui-line-lit);stroke-width:1px;stroke-opacity:.8}.hub-pulse{fill:none;stroke-linecap:round;animation-duration:8s;animation-timing-function:cubic-bezier(.5,0,.5,1);animation-iteration-count:infinite}.hub-pulse--out{stroke:var(--color-ui-dim);stroke-width:1.5px;stroke-dasharray:8 92;animation-name:hub-out}.hub-pulse--back{stroke:var(--tone);stroke-width:2px;stroke-dasharray:12 88;animation-name:hub-back}@keyframes hub-out{0%{stroke-dashoffset:100px;opacity:0}4%{opacity:.9}16%{stroke-dashoffset:0;opacity:.9}20%,to{stroke-dashoffset:0;opacity:0}}@keyframes hub-back{0%{stroke-dashoffset:0;opacity:0}4%{opacity:1}18%{stroke-dashoffset:100px;opacity:1}24%,to{stroke-dashoffset:100px;opacity:0}}.hub-edge{transition:opacity .24s}.hub-card{border:1px solid var(--color-ui-line);background:var(--color-ui-surface);color:var(--color-ui-fg);border-radius:1rem;flex-direction:column;gap:.3rem;padding:.7rem .85rem;text-decoration:none;transition:border-color .2s,box-shadow .2s,opacity .24s;display:flex;position:absolute;transform:translate(-50%,-50%)}.hub-card--core{border-color:#246a68;align-items:center;width:10rem;padding:.8rem}@supports (color:color-mix(in lab, red, red)){.hub-card--core{border-color:color-mix(in oklab, var(--color-ui-accent) 40%, var(--color-ui-line))}}.hub-logo{border-radius:12px;width:44px;height:44px}.hub-core-name{font-family:var(--font-mono);letter-spacing:-.01em;font-weight:600}.hub-card--spoke{width:14rem}.hub-card-top{align-items:center;gap:.45rem;display:flex}.hub-card-name{font-family:var(--font-mono);font-size:.95rem;font-weight:600}.hub-card-sub{color:var(--color-ui-faint);font-size:.8125rem}.hub-card-note{color:var(--color-ui-faint);font-size:.75rem}.hub-card--spoke.is-off{background:0 0;border-style:dashed}.hub-card--spoke:hover,.hub-card--spoke:focus-visible{border-color:var(--tone);outline:none}.hub-card--spoke.is-active{border-color:var(--tone);box-shadow:0 0 0 1px var(--tone), 0 0 24px -6px var(--tone)}a.hub-card--spoke:focus-visible{outline:2px solid var(--color-ui-accent);outline-offset:3px}.hub--mobile .hub-card--core{width:8.5rem;padding:.6rem}.hub--mobile .hub-logo{width:36px;height:36px}.hub--mobile .hub-card--spoke{width:9.25rem;padding:.6rem .7rem}.hub--mobile .hub-card-name{font-size:.85rem}.hub--mobile .hub-card-sub{font-size:.75rem}@media (prefers-reduced-motion:reduce){.hub-pulse{display:none}.hub-fibre{stroke-opacity:.3;animation:none}.hub-edge,.hub-card,a.case-card{transition:none}a.case-card:hover,a.hub-card--spoke:hover{transform:none}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
