@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms); --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms); animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms); animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms); --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px); --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px); --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)/100); --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)/100); --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%); --tw-enter-scale: calc(--value(ratio)); --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%); --tw-enter-scale: calc(--value(ratio)*-1); --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%); --tw-exit-scale: calc(--value(ratio)); --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%); --tw-exit-scale: calc(--value(ratio)*-1); --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg); --tw-enter-rotate: calc(--value(ratio)*360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg); --tw-enter-rotate: calc(--value(ratio)*-360deg); --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg); --tw-exit-rotate: calc(--value(ratio)*360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg); --tw-exit-rotate: calc(--value(ratio)*-360deg); --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-y: calc(--value(ratio)*-100%); --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-y: calc(--value(ratio)*100%); --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-enter-translate-x: calc(--value(ratio)*100%); --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-enter-translate-x: calc(--value(ratio)*-100%); --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-y: calc(--value(ratio)*-100%); --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-y: calc(--value(ratio)*100%); --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1);}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%); --tw-exit-translate-x: calc(--value(ratio)*100%); --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%); --tw-exit-translate-x: calc(--value(ratio)*-100%); --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1); }}:root{--flow:var(--documents);--flow-soft:color-mix(in oklab, var(--documents) 45%, transparent);--flow-strong:var(--documents-strong);--dash:var(--mg-slate-300)}.dark{--dash:color-mix(in oklab, var(--mg-violet-200) 35%, transparent)}@layer components{.flow-line{fill:none;stroke:var(--flow);stroke-width:1.2px}.flow-dash{fill:none;stroke:var(--dash);stroke-width:1.2px;stroke-dasharray:5 5;animation:1.6s linear infinite dash}.flow-dot{fill:var(--flow);stroke:var(--flow)}.flow-port{fill:var(--background);stroke:var(--flow);stroke-width:1.2px}.flow-card{fill:var(--card);stroke:var(--border)}.flow-pill{fill:color-mix(in oklab, var(--mg-magenta-500) 9%, transparent)}.flow-solid{fill:var(--flow-strong)}.flow-text{fill:var(--foreground);font-family:var(--font-sans);font-size:13px}.flow-text-accent{fill:var(--flow-strong);font-family:var(--font-sans);font-size:13px;font-weight:500}.flow-text-inverse{fill:var(--primary-foreground);font-family:var(--font-sans);font-size:14px;font-weight:500}.flow-mono{fill:var(--muted-foreground);font-family:var(--font-mono);font-size:11px}.flow-glow{transform-origin:50%;transform-box:fill-box;animation:2.4s ease-in-out infinite pulse}.data-line{fill:none;stroke:var(--data);stroke-width:1.2px}.data-dot{fill:var(--data)}.data-port{fill:var(--background);stroke:var(--data);stroke-width:1.2px}.data-pill{fill:color-mix(in oklab, var(--mg-violet-500) 9%, transparent)}.data-text{fill:var(--data);font-family:var(--font-sans);font-size:13px;font-weight:500}.zone-doc{fill:color-mix(in oklab, var(--mg-magenta-500) 3%, transparent);stroke:var(--flow-soft);stroke-dasharray:4 6}.zone-data{fill:color-mix(in oklab, var(--mg-violet-500) 3%, transparent);stroke:color-mix(in oklab, var(--mg-violet-500) 35%, transparent);stroke-dasharray:4 6}.zone-label{font-family:var(--font-mono);letter-spacing:.14em;font-size:11px}.stage-bg{background:radial-gradient(120% 60% at 50% 115%, var(--glow) 0%, transparent 55%), linear-gradient(180deg, var(--hero-tint), var(--background) 30%)}.faint-line{fill:none;stroke:var(--flow-soft);stroke-width:1.2px}.violet-line{fill:none;stroke:color-mix(in oklab, var(--mg-violet-500) 40%, transparent);stroke-width:1.2px}.shield{fill:var(--data);filter:drop-shadow(0 12px 18px color-mix(in oklab, var(--mg-violet-500) 40%, transparent))}.shield-mark{fill:none;stroke:var(--primary-foreground);stroke-width:2.5px}.hex-outline{fill:var(--background);stroke:var(--flow-soft);stroke-width:1.3px}.hex-inner-line{fill:none;stroke:oklch(100% 0 0/.7);stroke-width:1.2px}.hex-inner-dash{fill:none;stroke:oklch(100% 0 0/.6);stroke-dasharray:3 4}.bubble{fill:var(--card);filter:drop-shadow(0 4px 10px color-mix(in oklab, var(--mg-violet-700) 12%, transparent))}.avatar-ring{fill:none;stroke:var(--card);stroke-width:4px}.tag-solid-text{fill:var(--primary-foreground);font-family:var(--font-sans);font-size:15px;font-weight:500}.page-frame{background:radial-gradient(90% 45% at 50% 112%, var(--glow) 0%, transparent 60%), linear-gradient(180deg, var(--hero-tint), var(--background) 35%)}.core-pulse{fill:none;stroke:var(--flow);stroke-width:1px;animation:3.2s ease-in-out infinite corePulse}.card-icon{fill:color-mix(in oklab, var(--mg-violet-500) 10%, transparent);stroke:color-mix(in oklab, var(--mg-violet-500) 50%, transparent);stroke-width:.8px}.chip{fill:var(--muted)}.eyebrow{background:linear-gradient(color-mix(in oklab, var(--card) 80%, transparent), color-mix(in oklab, var(--card) 80%, transparent)) padding-box, linear-gradient(120deg, color-mix(in oklab, var(--brand) 55%, transparent), color-mix(in oklab, var(--story-doc) 45%, transparent), color-mix(in oklab, var(--brand) 20%, transparent)) border-box;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 1px 0 color-mix(in oklab, var(--card) 90%, transparent) inset, 0 8px 24px -12px color-mix(in oklab, var(--brand) 45%, transparent);border:1px solid #0000}.eyebrow-badge{background:linear-gradient(135deg, var(--brand), var(--story-doc));color:var(--primary-foreground)}.eyebrow-text{background:linear-gradient(90deg, var(--foreground), color-mix(in oklab, var(--brand) 80%, var(--foreground)));color:#0000;-webkit-background-clip:text;background-clip:text}.hero-bg{background:linear-gradient(180deg, var(--hero-tint) 0%, var(--background) 45%, var(--glow) 82%, var(--story-from) 100%)}.story-bg{background:linear-gradient(180deg, var(--story-from) 0%, var(--story-mid) 40%, var(--story-to) 100%)}.dot-grid{background-image:radial-gradient(oklch(100% 0 0/.1) 1px,#0000 1px);background-size:22px 22px}.dot-grid-light{background-image:radial-gradient(oklch(55% .15 295/.18) 1px,#0000 1px);background-size:22px 22px}.quote-bg{background:linear-gradient(180deg, var(--story-to) 0%, var(--mg-violet-800) 45%, var(--story-mid) 100%)}.uc-bg{background:linear-gradient(180deg, var(--story-mid) 0px, var(--story-from) 140px, var(--glow) 260px, var(--hero-tint) 420px, var(--hero-tint) 100%)}.uc-group{border-left:2px solid color-mix(in oklab, var(--brand) 80%, transparent);padding-left:.6rem;line-height:1}.uc-card{background:color-mix(in oklab, var(--background) 80%, transparent);border:1px solid color-mix(in oklab, var(--foreground) 10%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:transform .35s,border-color .35s,box-shadow .35s,background .35s,opacity .35s}.uc-card:hover{border-color:color-mix(in oklab, var(--brand) 30%, transparent);transform:translateY(-2px)}.uc-card-active{background:linear-gradient(var(--background), var(--background)) padding-box, linear-gradient(120deg, var(--brand), var(--story-doc), color-mix(in oklab, var(--brand) 40%, transparent)) border-box;box-shadow:0 14px 40px -18px color-mix(in oklab, var(--brand) 55%, transparent);border:1px solid #0000}.uc-tile{fill:var(--brand);stroke:none}.uc-tile-doc{fill:var(--documents)}.uc-row-doc{box-shadow:inset 2px 0 0 var(--story-doc)}.uc-dim{opacity:.6}.uc-dim:hover{opacity:1}.uc-connector{background:linear-gradient(180deg, var(--story-doc), transparent)}.uc-card-active:hover{transform:none}.uc-card.uc-card-active:hover{background:linear-gradient(var(--background), var(--background)) padding-box, linear-gradient(120deg, var(--brand), var(--story-doc), color-mix(in oklab, var(--brand) 40%, transparent)) border-box;border-color:#0000}.text-story-doc{color:var(--story-doc)}.uc-hero{background:linear-gradient(180deg, var(--background) 0%, color-mix(in oklab, var(--brand) 9%, var(--background)) 60%, var(--background) 100%)}.uc-frost{background:color-mix(in oklab, var(--background) 78%, transparent);border:1px solid color-mix(in oklab, var(--brand) 14%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 30px 60px -30px color-mix(in oklab, var(--brand) 35%, transparent)}.uc-frost-dark{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:oklch(100% 0 0/.07);border:1px solid oklch(100% 0 0/.16)}.uc-row{color:var(--primary-foreground);background:oklch(100% 0 0/.06)}.uc-row-flag{background:color-mix(in oklab, var(--story-doc) 16%, transparent);color:var(--primary-foreground);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--story-doc) 55%, transparent)}.uc-impact{background:color-mix(in oklab, var(--flow) 12%, transparent);color:var(--flow)}.s-line{fill:none;stroke:oklch(100% 0 0/.55);stroke-width:1.4px}.s-line-faint{fill:none;stroke:oklch(100% 0 0/.22);stroke-width:1.2px}.s-doc{fill:none;stroke:var(--story-doc);stroke-width:1.4px}.s-data{fill:none;stroke:var(--story-data);stroke-width:1.4px}.s-dot-doc{fill:var(--story-doc)}.s-dot-data{fill:var(--story-data)}.s-port{fill:var(--story-mid);stroke:oklch(100% 0 0/.8);stroke-width:1.4px}.s-chip{fill:oklch(100% 0 0/.1);stroke:oklch(100% 0 0/.25);stroke-width:1px}.s-chip-dark{fill:oklch(20% .08 280/.55);stroke:oklch(100% 0 0/.18)}.s-chip-solid{fill:oklch(100% 0 0/.92)}.s-text{fill:oklch(100% 0 0);font-family:var(--font-sans);font-size:14px}.s-text-ink{fill:var(--brand);font-family:var(--font-sans);font-size:14px;font-weight:500}.s-mono{fill:oklch(100% 0 0/.7);font-family:var(--font-mono);font-size:12px}.s-hex-fill{fill:var(--flow-strong);stroke:var(--flow-strong);stroke-width:12px;stroke-linejoin:round}.s-hex-line{fill:none;stroke:oklch(100% 0 0/.7);stroke-width:1.4px;stroke-linejoin:round}.s-shield{fill:oklch(100% 0 0/.96);filter:drop-shadow(0 16px 30px oklch(20% .2 280/.5))}.s-shield-mark{fill:none;stroke:var(--brand);stroke-width:3px;stroke-linejoin:round}.s-dash{fill:none;stroke:oklch(100% 0 0/.3);stroke-dasharray:3 4}.s-mess{fill:none;stroke:var(--story-data);stroke-opacity:.38;stroke-width:1px;stroke-dasharray:2 5}.s-dots{fill:none;stroke:var(--story-doc);stroke-width:3.5px;stroke-linecap:round;stroke-dasharray:0 9}.s-group{fill:oklch(100% 0 0/.04);stroke:var(--story-doc);stroke-opacity:.45;stroke-dasharray:4 4}.s-data-flow{fill:none;stroke:var(--story-data);stroke-opacity:.75;stroke-width:1.6px;stroke-linecap:round;stroke-dasharray:0 7}.s-link-data{stroke:var(--story-data);stroke-opacity:.45;stroke-width:1px;stroke-dasharray:2 4}.s-link-doc{stroke:var(--story-doc);stroke-opacity:.55;stroke-width:1px;stroke-dasharray:2 4}.s-chip-node{fill:oklch(22% .1 280/.7)}.s-blur{filter:blur(.9px);opacity:.6}.s-doc-flow{fill:none;stroke:var(--story-doc);stroke-opacity:.85;stroke-width:1.8px;stroke-linecap:round;stroke-dasharray:0 7}.s-clean{fill:none;stroke:oklch(100% 0 0/.85);stroke-width:2px}.hex-nav{clip-path:polygon(18px 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,18px 100%,0 50%);filter:drop-shadow(0 1px 2px oklch(30% .1 295/.12))}.hex-btn{clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%)}.uc-impact-dark{color:var(--story-doc);background:color-mix(in oklab, var(--story-doc) 14%, transparent);box-shadow:inset 0 0 0 1px color-mix(in oklab, var(--story-doc) 45%, transparent)}.hex-glow{animation:8s ease-in-out infinite hexGlow}@media (prefers-reduced-motion:reduce){.hex-glow{opacity:.55;animation:none}}}@keyframes dash{to{stroke-dashoffset:-20px}}@keyframes pulse{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.9;transform:scale(1.6)}}@keyframes corePulse{0%,to{opacity:0}50%{opacity:.5}}.uc-focus>*{transition:filter .35s,opacity .35s,transform .35s cubic-bezier(.22,1,.36,1)}@media (hover:hover){.uc-focus:has(>:hover)>:not(:hover){filter:blur(var(--focus-blur-softer));opacity:.45;transform:scale(.98)}.uc-focus:has(>:hover)>:hover{transform:scale(1.02)}.uc-focus-list>li>a{transition:filter .35s,opacity .35s,transform .35s cubic-bezier(.22,1,.36,1)}.uc-focus-list:has(>li:hover)>li:not(:hover)>a{filter:blur(var(--focus-blur-softer));opacity:.45;transform:scale(.98)}.uc-focus-list:has(>li:hover)>li:hover>a{transform:translate(6px)}}@layer utilities{.focus-soft{filter:blur(1.2px);opacity:.6;transition:filter .4s,opacity .4s}.focus-softer{filter:blur(2.2px);opacity:.4;transition:filter .4s,opacity .4s}:is(a,button,[role=button],summary):is(:hover,:focus-visible) :is(.focus-soft,.focus-softer),:is(a,button,[role=button],summary):is(.focus-soft,.focus-softer):is(:hover,:focus-visible){filter:none;opacity:1}}@keyframes hexGlow{0%,to{opacity:.2}50%{opacity:.85}}@custom-variant dark (&:is(.dark *));@theme inline{--font-sans: "Anek Latin", system-ui, sans-serif; --font-mono: "JetBrains Mono", ui-monospace, monospace; --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px); --radius-2xl: calc(var(--radius) + 8px); --radius-3xl: calc(var(--radius) + 12px); --blur-soft: var(--focus-blur-soft); --blur-softer: var(--focus-blur-softer); --shadow-brand: 0 14px 40px -18px color-mix(in oklab, var(--brand) 55%, transparent); --shadow-frost: 0 30px 60px -30px color-mix(in oklab, var(--brand) 35%, transparent); --color-background: var(--background); --color-foreground: var(--foreground); --color-card: var(--card); --color-card-foreground: var(--card-foreground); --color-popover: var(--popover); --color-popover-foreground: var(--popover-foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); --color-secondary: var(--secondary); --color-secondary-foreground: var(--secondary-foreground); --color-muted: var(--muted); --color-muted-foreground: var(--muted-foreground); --color-accent: var(--accent); --color-accent-foreground: var(--accent-foreground); --color-destructive: var(--destructive); --color-destructive-foreground: var(--destructive-foreground); --color-border: var(--border); --color-input: var(--input); --color-ring: var(--ring);  --color-brand: var(--brand); --color-brand-foreground: var(--brand-foreground); --color-documents: var(--documents); --color-documents-strong: var(--documents-strong); --color-data: var(--data); --color-glow: var(--glow); --color-story-from: var(--story-from); --color-story-mid: var(--story-mid); --color-story-to: var(--story-to); --color-story-doc: var(--story-doc); --color-story-data: var(--story-data);  --color-mg-violet-50: var(--mg-violet-50); --color-mg-violet-100: var(--mg-violet-100); --color-mg-violet-200: var(--mg-violet-200); --color-mg-violet-300: var(--mg-violet-300); --color-mg-violet-400: var(--mg-violet-400); --color-mg-violet-500: var(--mg-violet-500); --color-mg-violet-600: var(--mg-violet-600); --color-mg-violet-700: var(--mg-violet-700); --color-mg-violet-800: var(--mg-violet-800); --color-mg-violet-900: var(--mg-violet-900); --color-mg-violet-950: var(--mg-violet-950); --color-mg-magenta-50: var(--mg-magenta-50); --color-mg-magenta-100: var(--mg-magenta-100); --color-mg-magenta-200: var(--mg-magenta-200); --color-mg-magenta-300: var(--mg-magenta-300); --color-mg-magenta-400: var(--mg-magenta-400); --color-mg-magenta-500: var(--mg-magenta-500); --color-mg-magenta-600: var(--mg-magenta-600); --color-mg-magenta-700: var(--mg-magenta-700); --color-mg-magenta-800: var(--mg-magenta-800); --color-mg-magenta-900: var(--mg-magenta-900); --color-mg-magenta-950: var(--mg-magenta-950); --color-mg-slate-50: var(--mg-slate-50); --color-mg-slate-100: var(--mg-slate-100); --color-mg-slate-200: var(--mg-slate-200); --color-mg-slate-300: var(--mg-slate-300); --color-mg-slate-400: var(--mg-slate-400); --color-mg-slate-500: var(--mg-slate-500); --color-mg-slate-600: var(--mg-slate-600); --color-mg-slate-700: var(--mg-slate-700); --color-mg-slate-800: var(--mg-slate-800); --color-mg-slate-900: var(--mg-slate-900); --color-mg-slate-950: var(--mg-slate-950);}:root{--mg-violet-50:#eeebfd;--mg-violet-100:#dcd6fb;--mg-violet-200:#b9aef8;--mg-violet-300:#9685f4;--mg-violet-400:#735df1;--mg-violet-500:#5034ed;--mg-violet-600:#402abe;--mg-violet-700:#301f8e;--mg-violet-800:#20155f;--mg-violet-900:#100a2f;--mg-violet-950:#080518;--mg-magenta-50:#f9edf9;--mg-magenta-100:#f3dbf3;--mg-magenta-200:#e6b7e6;--mg-magenta-300:#da94da;--mg-magenta-400:#cd70cd;--mg-magenta-500:#c14cc1;--mg-magenta-600:#9a3d9a;--mg-magenta-700:#742e74;--mg-magenta-800:#4d1e4d;--mg-magenta-900:#270f27;--mg-magenta-950:#130813;--mg-slate-50:#f8fafc;--mg-slate-100:#f1f5f9;--mg-slate-200:#e2e8f0;--mg-slate-300:#cbd5e1;--mg-slate-400:#94a3b8;--mg-slate-500:#64748b;--mg-slate-600:#475569;--mg-slate-700:#334155;--mg-slate-800:#1e293b;--mg-slate-900:#0f172a;--mg-slate-950:#020617;--radius:.625rem;--stroke:1.2px;--focus-blur-soft:1.5px;--focus-blur-softer:3px;--background:var(--mg-slate-50);--foreground:var(--mg-slate-900);--card:#fff;--card-foreground:var(--mg-slate-900);--popover:#fff;--popover-foreground:var(--mg-slate-900);--primary:var(--mg-violet-500);--primary-foreground:#fff;--secondary:var(--mg-slate-100);--secondary-foreground:var(--mg-slate-800);--muted:var(--mg-slate-100);--muted-foreground:var(--mg-slate-500);--accent:var(--mg-violet-50);--accent-foreground:var(--mg-violet-700);--destructive:oklch(57.7% .245 27.325);--destructive-foreground:#fff;--border:var(--mg-slate-200);--input:var(--mg-slate-200);--ring:var(--mg-violet-400);--brand:var(--mg-violet-500);--brand-foreground:#fff;--documents:var(--mg-magenta-500);--documents-strong:var(--mg-magenta-600);--data:var(--mg-violet-500);--glow:var(--mg-violet-300);--story-from:var(--mg-violet-400);--story-mid:var(--mg-violet-600);--story-to:var(--mg-violet-900);--story-doc:var(--mg-magenta-300);--story-data:var(--mg-violet-200);--hero-tint:var(--mg-violet-50)}.dark{--background:var(--mg-violet-950);--foreground:var(--mg-slate-50);--card:var(--mg-violet-900);--card-foreground:var(--mg-slate-50);--popover:var(--mg-violet-900);--popover-foreground:var(--mg-slate-50);--primary:var(--mg-violet-400);--primary-foreground:#fff;--secondary:var(--mg-violet-800);--secondary-foreground:var(--mg-slate-100);--muted:var(--mg-violet-800);--muted-foreground:var(--mg-slate-400);--accent:var(--mg-violet-800);--accent-foreground:var(--mg-violet-100);--destructive:oklch(70.4% .191 22.216);--border:oklab(100% 0 5.96046e-8/.12);--input:oklab(100% 0 5.96046e-8/.16);--ring:var(--mg-violet-300);--brand:var(--mg-violet-400);--documents:var(--mg-magenta-400);--documents-strong:var(--mg-magenta-300);--data:var(--mg-violet-300);--hero-tint:var(--mg-violet-900);--glow:var(--mg-violet-700);--story-from:var(--mg-violet-800);--story-mid:var(--mg-violet-700);--story-to:var(--mg-violet-950);--story-doc:var(--mg-magenta-400);--story-data:var(--mg-violet-300)}@layer base{*{border-color:var(--color-border)}html{font-family:var(--font-sans)}body{background-color:var(--color-background);color:var(--color-foreground);-webkit-font-smoothing:antialiased}}@utility hero-bg{background: linear-gradient(180deg, var(--hero-tint) 0%, var(--background) 45%, var(--glow) 82%, var(--story-from) 100%);}@utility story-bg{background: linear-gradient(180deg, var(--story-from) 0%, var(--story-mid) 40%, var(--story-to) 100%);}@utility quote-bg{background: linear-gradient(180deg, var(--story-to) 0%, var(--mg-violet-800) 45%, var(--story-mid) 100%);}@utility page-frame{background: radial-gradient(90% 45% at 50% 112%, var(--glow) 0%, transparent 60%), linear-gradient(180deg, var(--hero-tint), var(--background) 35%);}@utility dot-grid{background-image: radial-gradient(oklab(100% 0 5.96046e-8/.1) 1px, transparent 1px); background-size: 22px 22px;}@utility dot-grid-light{background-image: radial-gradient(color-mix(in oklab, var(--brand) 18%, transparent) 1px, transparent 1px); background-size: 22px 22px;}@utility text-gradient{background: linear-gradient(90deg, var(--foreground), color-mix(in oklab, var(--brand) 80%, var(--foreground))); -webkit-background-clip: text; background-clip: text; color: transparent;}@utility brand-gradient{background: linear-gradient(135deg, var(--brand), var(--story-doc));}@utility gradient-border{background: linear-gradient(var(--card), var(--card)) padding-box, linear-gradient(120deg, var(--brand), var(--story-doc), color-mix(in oklab, var(--brand) 40%, transparent)) border-box; border: 1px solid transparent;}@utility glass-pill{background: linear-gradient(color-mix(in oklab, var(--card) 80%, transparent), color-mix(in oklab, var(--card) 80%, transparent)) padding-box, linear-gradient(120deg, color-mix(in oklab, var(--brand) 55%, transparent), color-mix(in oklab, var(--story-doc) 45%, transparent), color-mix(in oklab, var(--brand) 20%, transparent)) border-box; border: 1px solid transparent; backdrop-filter: blur(12px); box-shadow: 0 8px 24px -12px color-mix(in oklab, var(--brand) 45%, transparent);}@utility flow-line{fill: none; stroke: var(--documents); stroke-width: var(--stroke);}@utility data-line{fill: none; stroke: var(--data); stroke-width: var(--stroke);}@utility flow-port{fill: var(--background); stroke: var(--documents); stroke-width: var(--stroke);}@utility data-port{fill: var(--background); stroke: var(--data); stroke-width: var(--stroke);}@utility flow-dot{fill: var(--documents);}@utility data-dot{fill: var(--data);}@utility flow-dash{fill: none; stroke: var(--mg-slate-300); stroke-width: var(--stroke); stroke-dasharray: 5 5; animation: mg-dash 1.6s linear infinite;}@utility hex-glow{animation: mg-hex-glow 6s ease-in-out infinite;}@keyframes mg-dash{to{stroke-dashoffset:-20px}}@keyframes mg-hex-glow{0%,to{opacity:.25}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.flow-dash,.hex-glow{animation:none}}
