@import "tailwindcss";@custom-variant dark (&:where(.dark, .dark *));@source "../imports/**/*.{ts,tsx,js,jsx}";@theme inline{--font-sans:"IBM Plex Sans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-display:"Space Grotesk","IBM Plex Sans",ui-sans-serif,system-ui,sans-serif;--font-mono:"IBM Plex Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--color-background:hsl(var(--background));--color-foreground:hsl(var(--foreground));--color-card:hsl(var(--card));--color-card-foreground:hsl(var(--card-foreground));--color-popover:hsl(var(--popover));--color-popover-foreground:hsl(var(--popover-foreground));--color-primary:hsl(var(--primary));--color-primary-foreground:hsl(var(--primary-foreground));--color-secondary:hsl(var(--secondary));--color-secondary-foreground:hsl(var(--secondary-foreground));--color-muted:hsl(var(--muted));--color-muted-foreground:hsl(var(--muted-foreground));--color-accent:hsl(var(--accent));--color-accent-foreground:hsl(var(--accent-foreground));--color-destructive:hsl(var(--destructive));--color-destructive-foreground:hsl(var(--destructive-foreground));--color-destructive-subtle:hsl(var(--destructive-subtle));--color-border:hsl(var(--border));--color-input:hsl(var(--input));--color-ring:hsl(var(--ring));--color-brand:hsl(var(--brand));--color-brand-foreground:hsl(var(--brand-foreground));--color-brand-subtle:hsl(var(--brand-subtle));--color-success:hsl(var(--success));--color-success-foreground:hsl(var(--success-foreground));--color-success-subtle:hsl(var(--success-subtle));--color-warning:hsl(var(--warning));--color-warning-foreground:hsl(var(--warning-foreground));--color-warning-subtle:hsl(var(--warning-subtle));--color-info:hsl(var(--info));--color-info-foreground:hsl(var(--info-foreground));--color-info-subtle:hsl(var(--info-subtle));--color-surface-1:hsl(var(--surface-1));--color-surface-2:hsl(var(--surface-2));--color-surface-3:hsl(var(--surface-3));--color-terminal:hsl(var(--terminal));--color-terminal-foreground:hsl(var(--terminal-foreground));--color-terminal-muted:hsl(var(--terminal-muted));--color-terminal-border:hsl(var(--terminal-border));--color-terminal-brand:hsl(var(--terminal-brand));--color-terminal-success:hsl(var(--terminal-success));--color-terminal-warning:hsl(var(--terminal-warning));--color-terminal-destructive:hsl(var(--terminal-destructive));--color-terminal-info:hsl(var(--terminal-info));--color-sidebar:hsl(var(--sidebar-background));--color-sidebar-foreground:hsl(var(--sidebar-foreground));--color-sidebar-primary:hsl(var(--sidebar-primary));--color-sidebar-primary-foreground:hsl(var(--sidebar-primary-foreground));--color-sidebar-accent:hsl(var(--sidebar-accent));--color-sidebar-accent-foreground:hsl(var(--sidebar-accent-foreground));--color-sidebar-border:hsl(var(--sidebar-border));--color-sidebar-ring:hsl(var(--sidebar-ring));--radius-xs:calc(var(--radius) - 2px);--radius-sm:calc(var(--radius) - 2px);--radius-md:var(--radius);--radius-lg:calc(var(--radius) + 2px);--radius-xl:calc(var(--radius) + 4px);--radius-2xl:calc(var(--radius) + 8px);--radius-3xl:calc(var(--radius) + 14px);--shadow-xs:var(--elevation-0);--shadow-sm:var(--elevation-1);--shadow-md:var(--elevation-2);--shadow-lg:var(--elevation-3);--shadow-xl:var(--elevation-4);--shadow-2xl:var(--elevation-4);--ease-out:var(--easing-out);--ease-in:var(--easing-in);--ease-in-out:var(--easing-in-out);--ease-spring:var(--easing-spring);--default-transition-duration:var(--duration-base);--default-transition-timing-function:var(--easing-out);--animate-shimmer:shimmer 1.6s var(--easing-in-out) infinite;--animate-fade-in:tw-enter var(--duration-base) var(--easing-out) both;--animate-progress:progress-slide 1.4s var(--easing-in-out) infinite}:root{--safe-top:max(env(safe-area-inset-top),0px);--safe-right:max(env(safe-area-inset-right),0px);--safe-bottom:max(env(safe-area-inset-bottom),0px);--safe-left:max(env(safe-area-inset-left),0px);--app-bottom-nav-height:4rem;--app-header-height:3rem;--radius:0.375rem;--duration-fast:120ms;--duration-base:180ms;--duration-slow:280ms;--duration-lazy:420ms;--easing-out:cubic-bezier(0.2,0,0,1);--easing-in:cubic-bezier(0.4,0,1,1);--easing-in-out:cubic-bezier(0.45,0,0.15,1);--easing-spring:cubic-bezier(0.22,1,0.36,1);--background:30 20% 96%;--foreground:24 10% 10%;--card:30 30% 99%;--card-foreground:24 10% 10%;--popover:30 30% 99%;--popover-foreground:24 10% 10%;--surface-1:30 30% 99%;--surface-2:30 18% 97.5%;--surface-3:30 30% 99%;--primary:24 10% 10%;--primary-foreground:30 20% 97%;--secondary:28 14% 92%;--secondary-foreground:24 10% 10%;--muted:28 14% 92%;--muted-foreground:25 8% 42%;--accent:28 16% 93.5%;--accent-foreground:24 10% 10%;--brand:236 74% 53%;--brand-foreground:0 0% 100%;--brand-subtle:236 80% 95%;--destructive:6 72% 46%;--destructive-foreground:0 0% 100%;--destructive-subtle:6 80% 95%;--success:152 62% 31%;--success-foreground:0 0% 100%;--success-subtle:150 50% 92%;--warning:28 90% 36%;--warning-foreground:0 0% 100%;--chart-regular:236 74% 53%;--chart-exam:28 90% 36%;--warning-subtle:36 90% 91%;--info:205 85% 40%;--info-foreground:0 0% 100%;--info-subtle:205 85% 93%;--border:28 12% 87%;--input:28 12% 82%;--ring:236 74% 53%;--skeleton:28 14% 90%;--sidebar-background:24 10% 10%;--sidebar-foreground:30 20% 96%;--sidebar-primary:236 90% 72%;--sidebar-primary-foreground:24 10% 10%;--sidebar-accent:24 8% 17%;--sidebar-accent-foreground:30 20% 97%;--sidebar-border:24 8% 16%;--sidebar-ring:236 90% 72%;--terminal:30 11% 7%;--terminal-foreground:38 15% 86%;--terminal-muted:30 8% 60%;--terminal-border:30 8% 18%;--terminal-brand:236 90% 72%;--terminal-success:152 50% 52%;--terminal-warning:36 90% 60%;--terminal-destructive:6 70% 58%;--terminal-info:205 85% 66%;--shadow-tint:24 20% 10%;--elevation-0:0 1px 2px hsl(var(--shadow-tint)/0.04);--elevation-1:0 1px 2px hsl(var(--shadow-tint)/0.05),0 1px 3px -1px hsl(var(--shadow-tint)/0.05);--elevation-2:0 4px 12px -2px hsl(var(--shadow-tint)/0.1),0 2px 4px -2px hsl(var(--shadow-tint)/0.06);--elevation-3:0 12px 32px -8px hsl(var(--shadow-tint)/0.18),0 4px 10px -4px hsl(var(--shadow-tint)/0.08);--elevation-4:0 28px 64px -16px hsl(var(--shadow-tint)/0.28),0 8px 20px -8px hsl(var(--shadow-tint)/0.12);--xy-background-color:hsl(var(--background));--xy-background-pattern-color:#d7d1cc;--xy-controls-button-background-color:hsl(var(--card));--xy-controls-button-background-color-hover:hsl(var(--accent));--xy-controls-button-border-color:hsl(var(--border));--xy-controls-button-color:hsl(var(--foreground));--xy-controls-box-shadow:var(--elevation-2);--xy-minimap-background-color:hsl(var(--card));--xy-minimap-mask-background-color:hsl(var(--background)/0.7);--xy-edge-stroke:#afa7a1;--xy-edge-stroke-selected:hsl(var(--brand));--xy-node-border:1px solid hsl(var(--border));--xy-node-background-color:hsl(var(--card));--xy-node-color:hsl(var(--foreground));--xy-node-boxshadow-selected:0 0 0 2px hsl(var(--brand)/0.55);--xy-selection-background-color:hsl(var(--brand)/0.08);--xy-selection-border:1px dotted hsl(var(--brand)/0.7);--xy-handle-background-color:hsl(var(--muted-foreground));--xy-handle-border-color:hsl(var(--card));--xy-attribution-background-color:hsl(var(--card)/0.9)}.dark{--background:20 7% 8%;--foreground:30 12% 92%;--card:20 6% 11%;--card-foreground:30 12% 92%;--popover:20 6% 14%;--popover-foreground:30 12% 92%;--surface-1:20 6% 11%;--surface-2:20 6% 13%;--surface-3:20 6% 14.5%;--primary:30 12% 92%;--primary-foreground:24 10% 10%;--secondary:20 6% 17%;--secondary-foreground:30 12% 92%;--muted:20 6% 16%;--muted-foreground:25 6% 62%;--accent:20 6% 17%;--accent-foreground:30 12% 92%;--brand:236 90% 72%;--brand-foreground:24 10% 10%;--brand-subtle:236 40% 19%;--destructive:6 70% 58%;--destructive-foreground:0 0% 100%;--destructive-subtle:6 40% 16%;--success:152 50% 52%;--success-foreground:24 10% 10%;--success-subtle:152 35% 14%;--warning:36 90% 60%;--warning-foreground:24 10% 10%;--chart-regular:236 90% 72%;--chart-exam:32 84% 44%;--warning-subtle:34 45% 15%;--info:205 85% 66%;--info-foreground:24 10% 10%;--info-subtle:205 45% 17%;--border:20 6% 18%;--input:20 6% 24%;--ring:236 90% 72%;--skeleton:20 6% 22%;--sidebar-background:20 8% 5.5%;--sidebar-foreground:30 12% 92%;--sidebar-primary:236 90% 72%;--sidebar-primary-foreground:24 10% 10%;--sidebar-accent:20 6% 13%;--sidebar-accent-foreground:30 12% 92%;--sidebar-border:20 6% 13%;--sidebar-ring:236 90% 72%;--terminal:30 11% 7%;--terminal-foreground:38 15% 86%;--terminal-muted:30 8% 60%;--terminal-border:30 8% 18%;--terminal-brand:236 90% 72%;--terminal-success:152 50% 52%;--terminal-warning:36 90% 60%;--terminal-destructive:6 70% 58%;--terminal-info:205 85% 66%;--shadow-tint:20 30% 2%;--elevation-0:0 0 0 1px hsl(var(--border)/0.6);--elevation-1:0 0 0 1px hsl(var(--border)/0.7),0 1px 2px hsl(var(--shadow-tint)/0.5);--elevation-2:0 0 0 1px hsl(var(--border)),0 6px 16px -4px hsl(var(--shadow-tint)/0.7);--elevation-3:0 0 0 1px hsl(var(--border)),0 16px 40px -8px hsl(var(--shadow-tint)/0.85);--elevation-4:0 0 0 1px hsl(var(--border)),0 32px 80px -16px hsl(var(--shadow-tint)/0.95);--xy-background-pattern-color:#363230;--xy-edge-stroke:#6c6560;--xy-minimap-mask-background-color:hsl(var(--background)/0.75)}.react-flow .react-flow__attribution{background:hsl(var(--card)/.9);color:hsl(var(--muted-foreground))}.react-flow .react-flow__attribution a{color:hsl(var(--muted-foreground))}@media (display-mode:standalone){:root{--app-bottom-nav-height:3rem}}@layer base{#react-target,body,html{height:100%;min-height:100%}*{border-color:hsl(var(--border));scrollbar-color:hsl(var(--foreground)/.18) transparent;scrollbar-width:thin}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:var(--font-sans);text-rendering:optimizeLegibility}body{-webkit-text-size-adjust:100%;text-size-adjust:100%;font-feature-settings:"cv05","ss01";background-color:hsl(var(--background));color:hsl(var(--foreground));margin:0;min-height:100svh}h1,h2,h3{text-wrap:balance;font-family:var(--font-display);letter-spacing:-.015em}code,kbd,pre,samp{font-feature-settings:normal;font-family:var(--font-mono)}::selection{background-color:hsl(var(--brand)/.22)}dialog{border:none;margin:auto;padding:0}[role=button],a,button{touch-action:manipulation}[role=button],[role=menuitem],[role=option],[role=tab],button{cursor:pointer}[aria-disabled=true],button:disabled{cursor:not-allowed}}@media (max-width:767px){input,select,textarea{font-size:16px}}@keyframes tw-enter{0%{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))}}@keyframes tw-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))}}@keyframes shimmer{to{transform:translateX(100%)}}@keyframes gallop-track{to{transform:translateX(-50%)}}@keyframes progress-slide{0%{transform:translateX(-100%) scaleX(.4)}50%{transform:translateX(20%) scaleX(.6)}to{transform:translateX(120%) scaleX(.4)}}@utility animate-in{animation:tw-enter var(--duration-base) var(--easing-out) both}@utility animate-out{animation:tw-exit var(--duration-fast) var(--easing-in) both}@utility animate-in-slow{animation:tw-enter var(--duration-slow) var(--easing-spring) both}@utility fade-in-0{--tw-enter-opacity:0}@utility fade-out-0{--tw-exit-opacity:0}@utility zoom-in-95{--tw-enter-scale:0.95}@utility zoom-in-90{--tw-enter-scale:0.9}@utility zoom-out-95{--tw-exit-scale:0.95}@utility slide-in-from-top-1{--tw-enter-translate-y:-0.25rem}@utility slide-in-from-top-2{--tw-enter-translate-y:-0.5rem}@utility slide-in-from-top-4{--tw-enter-translate-y:-1rem}@utility slide-in-from-bottom-1{--tw-enter-translate-y:0.25rem}@utility slide-in-from-bottom-2{--tw-enter-translate-y:0.5rem}@utility slide-in-from-bottom-4{--tw-enter-translate-y:1rem}@utility slide-in-from-bottom-8{--tw-enter-translate-y:2rem}@utility slide-in-from-left-2{--tw-enter-translate-x:-0.5rem}@utility slide-in-from-right-2{--tw-enter-translate-x:0.5rem}@utility slide-out-to-top-2{--tw-exit-translate-y:-0.5rem}@utility slide-out-to-bottom-2{--tw-exit-translate-y:0.5rem}@utility slide-out-to-bottom-4{--tw-exit-translate-y:1rem}@utility slide-out-to-left-2{--tw-exit-translate-x:-0.5rem}@utility slide-out-to-right-2{--tw-exit-translate-x:0.5rem}@utility stagger-in{&>*{--tw-enter-opacity:0;--tw-enter-translate-y:0.375rem;animation:tw-enter var(--duration-slow) var(--easing-spring) both}&>:nth-child(2){animation-delay:30ms}&>:nth-child(3){animation-delay:60ms}&>:nth-child(4){animation-delay:90ms}&>:nth-child(5){animation-delay:.12s}&>:nth-child(6){animation-delay:.15s}&>:nth-child(7){animation-delay:.18s}&>:nth-child(n+8){animation-delay:.21s}}@utility skeleton-shimmer{background-color:hsl(var(--skeleton));overflow:hidden;position:relative;&:after{animation:shimmer 1.6s var(--easing-in-out) infinite;background:linear-gradient(90deg,transparent 0,hsl(var(--foreground)/.07) 50%,transparent 100%);content:"";inset:0;position:absolute;transform:translateX(-100%)}}@utility duration-fast{transition-duration:var(--duration-fast)}@utility duration-base{transition-duration:var(--duration-base)}@utility duration-slow{transition-duration:var(--duration-slow)}@utility duration-lazy{transition-duration:var(--duration-lazy)}@utility pressable{transition-duration:var(--duration-fast);transition-property:transform,background-color,border-color,color,box-shadow,opacity;transition-timing-function:var(--easing-out);&:active:not(:disabled){transform:scale(.98)}}@utility focus-ring{outline:2px solid transparent;outline-offset:2px;&:focus-visible{outline-color:hsl(var(--ring))}}@utility focus-ring-inset{outline:2px solid transparent;outline-offset:-2px;&:focus-visible{outline-color:hsl(var(--ring))}}@utility focus-ring-input{outline:none;transition:border-color var(--duration-fast) var(--easing-out),box-shadow var(--duration-fast) var(--easing-out);&:focus-visible,&:focus-within{border-color:hsl(var(--ring));box-shadow:0 0 0 3px hsl(var(--ring)/.22)}&[aria-invalid=true]{border-color:hsl(var(--destructive))}&[aria-invalid=true]:focus-visible,&[aria-invalid=true]:focus-within{border-color:hsl(var(--destructive));box-shadow:0 0 0 3px hsl(var(--destructive)/.2)}}@utility glass{background-color:hsl(var(--background)/.94);@supports (backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px)){-webkit-backdrop-filter:saturate(160%) blur(14px);backdrop-filter:saturate(160%) blur(14px);background-color:hsl(var(--background)/.8)}}@utility glass-sidebar{background-color:hsl(var(--sidebar-background))}@utility terminal-surface{--ring:var(--terminal-brand);background-color:hsl(var(--terminal));border-color:hsl(var(--terminal-border));color:hsl(var(--terminal-foreground));color-scheme:dark;scrollbar-color:hsl(var(--terminal-foreground)/.25) transparent;& ::selection{background-color:hsl(var(--terminal-brand)/.35)}}@utility page-loader-track{border-radius:9999px;display:block;height:2px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(90deg,transparent,#000 20%,#000 80%,transparent);overflow:hidden;&:after{animation:gallop-track .6s linear infinite;background:repeating-linear-gradient(90deg,hsl(var(--foreground)/.35) 0 .75rem,transparent .75rem 1.5rem);content:"";display:block;height:100%;width:200%}}@utility surface-grid{background-image:radial-gradient(hsl(var(--foreground)/.09) 1px,transparent 1px);background-size:22px 22px}@utility text-display{font-family:var(--font-display);letter-spacing:-.015em}@utility text-data{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-.01em}@utility scrollbar-none{scrollbar-width:none;&::-webkit-scrollbar{display:none}}@layer utilities{.app-shell{height:100vh;height:100svh;height:100dvh}.safe-top{padding-top:var(--safe-top)}.safe-bottom-nav{height:calc(var(--app-bottom-nav-height) + var(--safe-bottom));padding-bottom:var(--safe-bottom);transform:translateZ(0)}.app-main-shell{padding-bottom:calc(var(--app-bottom-nav-height) + var(--safe-bottom) + .75rem);scroll-padding-bottom:calc(var(--app-bottom-nav-height) + var(--safe-bottom) + .75rem)}.app-header-offset{top:calc(var(--app-header-height) + var(--safe-top))}}@media (min-width:768px){.app-main-shell{padding-bottom:1.5rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-delay:0ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.skeleton-shimmer:after{display:none}.page-loader-track:after{animation:none}}