@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&family=Space+Grotesk:wght@500;600;700&family=Fraunces:opsz,wght@9..144,400;9..144,500&display=swap";.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.inset-x-0{left:0;right:0}.inset-y-0{top:0;bottom:0}.-bottom-12{bottom:-3rem}.-left-12{left:-3rem}.-right-12{right:-3rem}.-top-12{top:-3rem}.bottom-0{bottom:0}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-2{left:.5rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1{right:.25rem}.right-2{right:.5rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2{top:.5rem}.top-3\.5{top:.875rem}.top-4{top:1rem}.top-\[1px\]{top:1px}.top-\[50\%\]{top:50%}.top-\[60\%\]{top:60%}.top-full{top:100%}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[1\]{z-index:1}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-3\.5{margin-left:.875rem;margin-right:.875rem}.mx-auto{margin-left:auto;margin-right:auto}.my-0\.5{margin-top:.125rem;margin-bottom:.125rem}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-ml-4{margin-left:-1rem}.-mt-4{margin-top:-1rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.ml-1{margin-left:.25rem}.ml-auto{margin-left:auto}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-24{margin-top:6rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.size-4{width:1rem;height:1rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[var\(--radix-navigation-menu-viewport-height\)\]{height:var(--radix-navigation-menu-viewport-height)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-96{max-height:24rem}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-0{min-height:0px}.min-h-\[80px\]{min-height:80px}.min-h-\[90px\]{min-height:90px}.min-h-screen{min-height:100vh}.min-h-svh{min-height:100svh}.w-0{width:0px}.w-1{width:.25rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-3\/4{width:75%}.w-4{width:1rem}.w-5{width:1.25rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-9{width:2.25rem}.w-\[--sidebar-width\]{width:var(--sidebar-width)}.w-\[100px\]{width:100px}.w-\[1px\]{width:1px}.w-auto{width:auto}.w-full{width:100%}.w-max{width:-moz-max-content;width:max-content}.w-px{width:1px}.min-w-0{min-width:0px}.min-w-5{min-width:1.25rem}.min-w-\[12rem\]{min-width:12rem}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-2xl{max-width:42rem}.max-w-\[--skeleton-width\]{max-width:var(--skeleton-width)}.max-w-lg{max-width:32rem}.max-w-max{max-width:-moz-max-content;max-width:max-content}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.grow-0{flex-grow:0}.basis-full{flex-basis:100%}.caption-bottom{caption-side:bottom}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-px{--tw-translate-x: -1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-px{--tw-translate-x: 1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate: 45deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-y{resize:vertical}.resize{resize:both}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-4{gap:1rem}.gap-x-5{-moz-column-gap:1.25rem;column-gap:1.25rem}.gap-y-7{row-gap:1.75rem}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.break-words{overflow-wrap:break-word}.rounded-\[2px\]{border-radius:2px}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-t-\[10px\]{border-top-left-radius:10px;border-top-right-radius:10px}.rounded-tl-sm{border-top-left-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-2{border-width:2px}.border-\[1\.5px\]{border-width:1.5px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-solid{border-style:solid}.border-dashed{border-style:dashed}.border-\[--color-border\]{border-color:var(--color-border)}.border-border\/50{border-color:hsl(var(--border) / .5)}.border-destructive{border-color:hsl(var(--destructive))}.border-destructive\/50{border-color:hsl(var(--destructive) / .5)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-sidebar-border{border-color:hsl(var(--sidebar-border))}.border-transparent{border-color:transparent}.border-vira-accent{border-color:var(--accent)}.border-vira-border{border-color:var(--border)}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-\[--color-bg\]{background-color:var(--color-bg)}.bg-accent{background-color:hsl(var(--accent))}.bg-background{background-color:hsl(var(--background))}.bg-black\/80{background-color:#000c}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-foreground{background-color:hsl(var(--foreground))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sidebar{background-color:hsl(var(--sidebar-background))}.bg-sidebar-border{background-color:hsl(var(--sidebar-border))}.bg-transparent{background-color:transparent}.bg-vira-accent{background-color:var(--accent)}.bg-vira-hover{background-color:var(--hover-bg)}.fill-current{fill:currentColor}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-7{padding:1.75rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pl-2\.5{padding-left:.625rem}.pl-4{padding-left:1rem}.pl-8{padding-left:2rem}.pr-2{padding-right:.5rem}.pr-2\.5{padding-right:.625rem}.pr-8{padding-right:2rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.align-middle{vertical-align:middle}.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.font-sans{font-family:Inter,ui-sans-serif,system-ui,sans-serif}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.8rem\]{font-size:.8rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.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)}.leading-loose{line-height:2}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-accent-foreground{color:hsl(var(--accent-foreground))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-foreground\/50{color:hsl(var(--foreground) / .5)}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sidebar-foreground{color:hsl(var(--sidebar-foreground))}.text-sidebar-foreground\/70{color:hsl(var(--sidebar-foreground) / .7)}.text-vira-accent{color:var(--accent)}.text-vira-accent-pending{color:var(--accent-pending)}.text-vira-fg{color:var(--text-primary)}.text-vira-muted{color:var(--text-secondary)}.text-vira-subtle{color:var(--text-tertiary)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-90{opacity:.9}.shadow-\[0_0_0_1px_hsl\(var\(--sidebar-border\)\)\]{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-border));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-2{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-ring{--tw-ring-color: hsl(var(--ring))}.ring-sidebar-ring{--tw-ring-color: hsl(var(--sidebar-ring))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.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,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[margin\,opa\]{transition-property:margin,opa;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-200{transition-duration:.2s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{transition-timing-function:linear}@keyframes 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)) rotate(var(--tw-enter-rotate, 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))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.fade-in-80{--tw-enter-opacity: .8}.zoom-in-95{--tw-enter-scale: .95}.duration-1000{animation-duration:1s}.duration-200{animation-duration:.2s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.ease-linear{animation-timing-function:linear}.running{animation-play-state:running}*{box-sizing:border-box}img,video{max-width:100%;height:auto}table{width:100%;border-collapse:collapse}.text-overflow{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body{overflow-x:hidden;width:100%}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}@media (min-width: 768px){.container{padding:0 2rem}}@media (min-width: 1280px){.container{padding:0 4rem}}:root{--bg-color: #f6f7f5;--surface: #ffffff;--surface-2: #fafbfb;--text-primary: #0e1417;--text-secondary: #4b5760;--text-tertiary: #8b959c;--accent: #17856a;--accent-soft: rgba(23, 133, 106, .1);--accent-deploying: #4b6f93;--accent-pending: #8a949c;--brand: #17856a;--border: #e3e7e8;--border-strong: #ccd3d4;--hover-bg: #ecefef;--glow: rgba(23, 133, 106, .2);--header-height: 80px;--mobile-breakpoint: 320px;--tablet-breakpoint: 768px;--desktop-breakpoint: 1280px}[data-theme=dark]{--bg-color: #0b0f10;--surface: #111922;--surface-2: #0d141b;--text-primary: #e9eef3;--text-secondary: #9aa7b2;--text-tertiary: #57646f;--accent: #2dd4a7;--accent-soft: rgba(45, 212, 167, .12);--accent-deploying: #6c89a6;--accent-pending: #6b7884;--brand: #2dd4a7;--border: #1d2731;--border-strong: #2b3744;--hover-bg: #151d26;--glow: rgba(45, 212, 167, .24)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-color);color:var(--text-primary);font-family:Inter,sans-serif;font-size:clamp(16px,2.5vw,18px);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2;color:var(--text-primary)}h1{font-size:clamp(2rem,5vw,4rem)}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.875rem)}h4{font-size:clamp(1.125rem,2.5vw,1.5rem)}h5{font-size:clamp(1rem,2vw,1.25rem)}h6{font-size:clamp(.875rem,1.5vw,1.125rem)}::-moz-selection{background-color:var(--text-primary);color:var(--bg-color)}::selection{background-color:var(--text-primary);color:var(--bg-color)}.mono{font-family:JetBrains Mono,Courier New,monospace}.header{position:fixed;top:0;left:0;right:0;height:80px;border-bottom:1px solid var(--border);background-color:color-mix(in srgb,var(--bg-color) 88%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px);z-index:1000;padding:0 4rem;transition:all .3s ease}[data-theme=dark] .header{background-color:color-mix(in srgb,var(--bg-color) 90%,transparent)}@media (max-width: 1024px){.header{padding:0 2rem}}@media (max-width: 768px){.header{height:auto;min-height:70px;padding:1rem 1.25rem}.header-inner{flex-direction:row;align-items:center;justify-content:space-between}.logo-text{display:none}}@media (max-width: 480px){.header{min-height:60px;padding:.75rem 1rem}}.header-inner{max-width:1200px;margin:0 auto;height:100%;width:100%;display:flex;justify-content:space-between;align-items:center;gap:1rem}@media (max-width: 768px){.header-inner{gap:.75rem}}@media (max-width: 480px){.header-inner{gap:.5rem}}.logo{display:flex;align-items:center;gap:.75rem;color:var(--text-primary);font-weight:600;letter-spacing:.1em}.logo-icon{font-size:1.2rem}.logo-text{font-size:1rem}.metrics-bar{position:fixed;top:80px;left:0;right:0;height:45px;background-color:var(--bg-color);border-bottom:1px solid var(--border);z-index:999;padding:0 4rem;transition:all .3s ease}@media (max-width: 1024px){.metrics-bar{padding:0 2rem}}@media (max-width: 768px){.metrics-bar{position:static;height:auto;padding:1rem 1.25rem}.metrics-inner{flex-direction:row;align-items:center;justify-content:space-between;gap:.5rem;flex-wrap:wrap}.system-label-new{flex-direction:column;gap:.25rem;font-size:.55rem;flex:1}.system-metrics-new{flex:2;justify-content:flex-end;gap:.75rem;font-size:.45rem;flex-wrap:wrap}}@media (max-width: 480px){.metrics-bar{padding:.75rem 1rem}.metrics-inner{flex-direction:column;align-items:flex-start;gap:.75rem}.system-label-new{font-size:.5rem}.system-metrics-new{gap:.5rem;font-size:.4rem;justify-content:flex-start}}.metrics-inner{max-width:1200px;margin:0 auto;height:100%;display:flex;justify-content:space-between;align-items:center}.system-label-new{display:flex;gap:1.5rem;font-size:.65rem;color:var(--text-tertiary);text-transform:uppercase;flex-wrap:wrap}@media (max-width: 1024px){.system-label-new{gap:1rem}}@media (max-width: 768px){.system-label-new{gap:.75rem;font-size:.6rem}}@media (max-width: 480px){.system-label-new{gap:.5rem;font-size:.55rem}}.system-metrics-new{display:flex;gap:2rem;font-size:.6rem;color:var(--text-tertiary);text-transform:uppercase;font-family:JetBrains Mono,monospace;flex-wrap:wrap}@media (max-width: 1024px){.system-metrics-new{gap:1.5rem;font-size:.55rem}}@media (max-width: 768px){.system-metrics-new{gap:1rem;font-size:.5rem;flex-wrap:wrap}}@media (max-width: 480px){.system-metrics-new{gap:.75rem;font-size:.45rem;line-height:1.4}}@media (max-width: 768px){.metrics-bar{position:static;height:auto;padding:1rem 1.25rem;display:block}.metrics-inner{flex-direction:column;align-items:flex-start;gap:.5rem}.header{height:auto;padding:1rem 1.25rem}.header-inner{flex-direction:row;align-items:center;justify-content:space-between}.logo-text{display:none}}.metric-val{color:var(--text-primary);font-weight:500}.nav{display:flex;align-items:center;gap:2.25rem;flex-wrap:wrap}@media (max-width: 1280px){.nav{gap:2rem}}@media (max-width: 1024px){.nav{gap:1.5rem}}@media (max-width: 768px){.nav{gap:1rem;flex:1;justify-content:center}}@media (max-width: 480px){.nav{gap:.75rem}}.nav button{background:none;border:none;border-bottom:1px solid transparent;padding:.75rem .5rem;font-family:JetBrains Mono,monospace;font-size:clamp(.7rem,1.5vw,.78rem);color:var(--text-secondary);cursor:pointer;letter-spacing:-.02em;transition:all .15s ease;min-height:44px;min-width:44px;text-align:center;display:inline-block}@media (max-width: 768px){.nav button{padding:.875rem .75rem;font-size:.75rem;min-height:48px}}@media (max-width: 480px){.nav button{padding:.75rem .5rem;font-size:.7rem}}.theme-toggle{background:transparent;color:var(--text-secondary);border:1px solid var(--border);padding:.75rem 1.25rem;font-size:clamp(.7rem,1.5vw,.75rem);font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s ease;white-space:nowrap;font-family:Inter,sans-serif;min-height:44px;min-width:44px}@media (max-width: 768px){.theme-toggle{padding:.875rem 1.5rem;font-size:.75rem;min-height:48px}}@media (max-width: 480px){.theme-toggle{padding:.75rem 1rem;font-size:.7rem}}.theme-toggle:hover{color:var(--text-primary);border-color:var(--text-primary);background:var(--hover-bg)}.theme-toggle:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.nav button{background:none;border:none;border-bottom:1px solid transparent;padding:0 0 .2rem;font-family:JetBrains Mono,monospace;font-size:.78rem;color:var(--text-secondary);cursor:pointer;letter-spacing:-.02em;transition:all .15s ease;white-space:nowrap;min-height:44px;display:flex;align-items:center}@media (max-width: 480px){.nav button{font-size:.7rem;padding:.5rem 0}}.nav button:hover{color:var(--text-primary)}.nav button:focus{outline:none;border-bottom:1px solid var(--accent);color:var(--accent);background:#4a756b0d}.nav button:active{color:var(--accent);border-bottom-color:var(--accent);background:#4a756b1a}.page-wrapper{padding-top:125px}@media (max-width: 1024px){.page-wrapper{padding-top:110px}}@media (max-width: 768px){.page-wrapper{padding-top:20px}}@media (max-width: 480px){.page-wrapper{padding-top:15px}}.hero-section{position:relative;min-height:calc(100vh - 125px);padding:clamp(4rem,8vw,10rem) clamp(2rem,4vw,6rem);overflow:hidden;display:flex;align-items:center;margin-bottom:clamp(2rem,4vw,4rem)}.hero-inner{width:100%;margin:0 auto;padding:0 clamp(4rem,8vw,16rem);display:flex;justify-content:space-between;align-items:center;gap:clamp(2rem,4vw,8rem);position:relative;z-index:1}@media (min-width: 1025px){.hero-section{min-height:calc(100vh - 125px)}.hero-inner{flex-direction:row;text-align:left}}@media (max-width: 1024px){.hero-section{min-height:calc(100vh - 110px);padding:3rem 1.5rem}.hero-inner{flex-direction:column;gap:2rem;padding:0 2rem;text-align:center}}@media (max-width: 768px){.hero-section{min-height:calc(100vh - 200px);padding:2rem 1.25rem;margin-bottom:2rem}.hero-inner{flex-direction:column;gap:1.5rem;padding:0 1rem;text-align:center}}@media (max-width: 480px){.hero-section{min-height:auto;padding:1.5rem 1rem;margin-bottom:1.5rem}.hero-inner{gap:1rem;padding:0 .5rem}}.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px);background-size:50px 50px;opacity:.3;z-index:0;mask-image:radial-gradient(circle at right center,white,transparent 70%);-webkit-mask-image:radial-gradient(circle at right center,white,transparent 70%);pointer-events:none}.hero-radar{position:absolute;top:-50%;left:-50%;right:-50%;bottom:-50%;background:conic-gradient(from 0deg,transparent 70%,rgba(74,117,107,.12) 100%);animation:radar-spin 8s linear infinite;border-radius:50%;pointer-events:none}@keyframes radar-spin{to{transform:rotate(360deg)}}.hero-content{max-width:clamp(300px,50vw,600px);display:flex;flex-direction:column;gap:clamp(1.5rem,3vw,3.5rem);align-items:flex-start;margin-left:clamp(2rem,4vw,8rem)}@media (max-width: 1024px){.hero-content{align-items:center;margin-left:0}}@media (max-width: 768px){.hero-content{gap:1.5rem}}.hero-main-group{display:flex;flex-direction:column;gap:3.5rem}@media (max-width: 768px){.hero-main-group{gap:1.25rem}}.hero-status{font-size:.72rem;text-transform:uppercase;color:var(--text-tertiary);display:none;font-family:JetBrains Mono,monospace}.hero-title{font-size:clamp(3.5rem,8vw,8rem);font-weight:600;letter-spacing:-.05em;margin:0;line-height:1.2;position:relative;color:var(--text-primary)}.hero-title.glitch{animation:glitch 3s step-end infinite}.hero-title.glitch:before,.hero-title.glitch:after{content:"VIRA\aHACKS";white-space:pre;position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-color);opacity:0}.hero-title.glitch:hover:before,.hero-title.glitch:hover:after{opacity:1}.hero-title.glitch:before{left:2px;text-shadow:-2px 0 #ff00c1;clip:rect(44px,450px,56px,0);animation:glitch-anim 5s infinite linear alternate-reverse}.hero-title.glitch:after{left:-2px;text-shadow:-2px 0 #00fff9,2px 2px #ff00c1;animation:glitch-anim2 1s infinite linear alternate-reverse}@keyframes glitch-anim{0%,80%,to{opacity:0;clip:rect(0,0,0,0)}81%,99%{opacity:1;clip:rect(31px,9999px,94px,0);transform:skew(.85deg)}85%{clip:rect(70px,9999px,71px,0);transform:skew(.24deg)}90%{clip:rect(29px,9999px,83px,0);transform:skew(.53deg)}95%{clip:rect(61px,9999px,82px,0);transform:skew(.44deg)}}@keyframes glitch-anim2{0%,80%,to{opacity:0;clip:rect(0,0,0,0)}81%,99%{opacity:1;clip:rect(44px,9999px,60px,0);transform:skew(.25deg)}85%{clip:rect(64px,9999px,91px,0);transform:skew(.69deg)}90%{clip:rect(41px,9999px,74px,0);transform:skew(.3deg)}95%{clip:rect(99px,9999px,61px,0);transform:skew(.39deg)}}.hero-sub{font-family:JetBrains Mono,monospace;font-size:clamp(.875rem,1.5vw,1rem);color:var(--text-secondary);max-width:clamp(250px,40vw,400px);line-height:1.5;border-left:2px solid var(--accent);padding-left:2rem}@media (max-width: 480px){.hero-sub{font-size:.85rem}}.hero-btn{background:var(--text-primary);color:var(--bg-color);border:none;padding:clamp(.75rem,1.5vw,1rem) clamp(1.25rem,2.5vw,2rem);font-size:clamp(.8rem,1.5vw,.9rem);font-weight:500;border-radius:4px;cursor:pointer;transition:all .15s ease;display:inline-flex;align-items:center;gap:.5rem;min-height:44px;min-width:44px;white-space:nowrap}@media (max-width: 768px){.hero-btn{padding:.875rem 1.5rem;font-size:.85rem;min-height:48px;margin:0 auto}}@media (max-width: 480px){.hero-btn{padding:.75rem 1.25rem;font-size:.8rem;width:100%;max-width:200px;justify-content:center}}.hero-btn:hover{background:var(--text-secondary);transform:translateY(-1px)}.hero-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero-visual{display:flex;justify-content:flex-end;max-width:520px}@media (max-width: 600px){.hero-visual,.demo-container{display:none}.hero-section{padding:6rem 1.25rem 4rem}}@media (max-width: 1024px){.hero-visual{width:100%;max-width:100%;justify-content:center}}.demo-container{width:100%;max-width:clamp(280px,60vw,600px);background:#1e1e1e;border-radius:8px;overflow:hidden;box-shadow:0 8px 32px #0000001a;transition:all .3s ease;animation:subtleBounce 3s ease-in-out infinite}@keyframes subtleBounce{0%,to{transform:translateY(0);box-shadow:0 8px 32px #0000001a}50%{transform:translateY(-8px);box-shadow:0 16px 48px #00000026}}[data-theme=dark] .demo-container{background:#2d2d2d;box-shadow:0 12px 40px #0000004d}[data-theme=dark] .demo-container:hover{box-shadow:0 20px 60px #0006}@media (max-width: 1024px){.demo-container{max-width:500px}}@media (max-width: 768px){.demo-container{max-width:100%;margin:0 -1rem}}@media (max-width: 480px){.demo-container{border-radius:0;margin:0 -1rem}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.demo-header{background:#333;padding:clamp(6px,1.5vw,8px) clamp(12px,3vw,16px);display:flex;align-items:center;gap:clamp(6px,1.5vw,8px);border-bottom:1px solid #444}[data-theme=dark] .demo-header{background:#1a1a1a;border-bottom:1px solid #333}.demo-dot{width:10px;height:10px;border-radius:50%}.demo-dot.red{background:#ff5f56}.demo-dot.yellow{background:#ffbd2e}.demo-dot.green{background:#27c93f}.demo-content{padding:clamp(.75rem,2vw,1.5rem);font-size:clamp(.7rem,1.5vw,.82rem);color:#d4d4d4;line-height:1.6;overflow-x:auto;text-align:left!important}[data-theme=dark] .demo-content{color:#b0b0b0}@media (max-width: 1024px){.demo-content{font-size:clamp(.7rem,1.5vw,.78rem);padding:clamp(.75rem,2vw,1.25rem)}}@media (max-width: 768px){.demo-content{font-size:clamp(.7rem,1.5vw,.75rem);padding:clamp(.75rem,2vw,1rem)}}@media (max-width: 480px){.demo-content{font-size:clamp(.7rem,1.5vw,.7rem);padding:clamp(.75rem,2vw,.75rem);line-height:1.5}}.code-keyword{color:#569cd6}.code-func{color:#dcdcaa}.code-str{color:#ce9178}.code-comment{color:#6a9955}.code-const{color:#4fc1ff}.main-content{max-width:1200px;margin:0 auto;padding:0 4rem}@media (max-width: 1024px){.main-content{padding:0 2rem}}@media (max-width: 768px){.main-content{padding:0 1.25rem}}@media (max-width: 480px){.main-content{padding:0 1rem}}.content-section{min-height:calc(100vh - 200px);display:flex;flex-direction:column;justify-content:flex-start;padding:4rem 0;border-bottom:1px solid var(--border);scroll-margin-top:125px}@media (max-width: 1024px){.content-section{padding:3rem 0;min-height:calc(100vh - 180px)}}@media (max-width: 768px){.content-section{padding:2.5rem 0;min-height:auto;scroll-margin-top:80px}}@media (max-width: 480px){.content-section{padding:2rem 0;scroll-margin-top:70px}}.section-title{font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-secondary);margin-bottom:2rem;font-weight:500;font-family:JetBrains Mono,monospace}.hero-section{min-height:calc(100vh - 125px);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:2rem 0}@media (max-width: 768px){.hero-section{min-height:calc(100vh - 200px);padding:1rem 0;align-items:flex-start}}@media (max-width: 480px){.hero-section{min-height:auto;padding:1.5rem 0}}.map-wrapper-large{width:100%;margin:3rem 0;display:flex;justify-content:center}@media (max-width: 1024px){.map-wrapper-large{margin:2rem 0}}@media (max-width: 768px){.map-wrapper-large{margin:1.5rem 0}}@media (max-width: 480px){.map-wrapper-large{margin:1rem 0}}.map-container-enhanced{width:100%;max-width:clamp(300px,90vw,1400px);height:clamp(300px,60vh,770px);position:relative;background:var(--bg-color);border:1px solid var(--border);border-radius:4px;margin:0 auto}@media (min-width: 1280px){.map-container-enhanced{max-width:1400px;height:770px}}@media (max-width: 1024px){.map-container-enhanced{height:600px;max-width:100%;border-radius:8px}}@media (max-width: 768px){.map-container-enhanced{height:500px;border-radius:0;margin:0 -1rem;max-width:calc(100% + 2rem)}}@media (max-width: 480px){.map-container-enhanced{height:400px;border:none;margin:0 -1rem;max-width:calc(100% + 2rem)}}.interactive-map{width:100%;height:auto}.map-geo{fill:#f2f2f2;stroke:#888;stroke-width:1px;transition:all .2s ease;outline:none}.map-geo:hover{fill:#f0f0f0}.map-geo:focus{outline:none}[data-theme=dark] .map-geo{fill:#2a2a2a;stroke:#555}[data-theme=dark] .map-geo:hover{fill:#333}[data-theme=dark] .map-geo:focus{outline:none}.map-marker{cursor:pointer;transition:all .3s ease;stroke:#fff;stroke-width:2px;pointer-events:auto}[data-theme=dark] .map-marker{stroke:#f0f0f0}@media (max-width: 768px){.map-marker{stroke-width:3px}}@media (max-width: 480px){.map-marker{stroke-width:4px}}.map-marker.active{fill:var(--accent)}.map-marker.pending{fill:var(--accent-pending)}.map-marker:hover{r:10;opacity:1}.map-marker-pulse{pointer-events:none;fill:none;stroke-width:1.5;animation:mapPulse 2s infinite}.map-marker-pulse.active{stroke:var(--accent)}.map-marker-pulse.pending{stroke:var(--accent-pending)}@keyframes mapPulse{0%{r:8;opacity:.8}to{r:24;opacity:0}}.node-dialog{position:absolute;bottom:2rem;left:2rem;width:320px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0000001f;z-index:100;overflow:hidden}[data-theme=dark] .node-dialog{background:#2a2a2a;box-shadow:0 8px 32px #0000004d}@media (max-width: 1024px){.node-dialog{width:280px;left:1rem;bottom:1rem}}@media (max-width: 768px){.node-dialog{width:calc(100% - 2.5rem);bottom:1.25rem;left:1.25rem;right:1.25rem}}@media (max-width: 480px){.node-dialog{width:calc(100% - 1rem);bottom:.5rem;left:.5rem;right:.5rem;border-radius:0}}@keyframes dialogFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.dialog-header{padding:.75rem 1rem;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;background:var(--bg-color)}.dialog-id{font-family:JetBrains Mono,monospace;font-size:.7rem;color:var(--text-tertiary)}.dialog-close{background:none;border:none;font-size:1.25rem;cursor:pointer;color:var(--text-tertiary);line-height:1}.dialog-body{padding:1.25rem}.dialog-title{font-size:1.1rem;margin-bottom:.25rem;color:var(--text-primary)}.dialog-loc{font-size:.75rem;color:var(--text-tertiary);margin-bottom:1rem}.dialog-status-tag{font-size:.7rem;margin-bottom:1rem;display:inline-block}.dialog-status-tag span.active{color:var(--accent)}.dialog-status-tag span.pending{color:var(--accent-pending)}.dialog-metrics{background:var(--bg-color);padding:.75rem;margin-bottom:1rem;border-left:2px solid var(--accent)}.metric-row{display:flex;justify-content:space-between;font-size:.7rem;margin-bottom:.25rem}.metric-row .val{color:var(--text-primary);font-weight:500}.dialog-info{font-size:.85rem;line-height:1.4;margin-bottom:1.25rem;color:var(--text-secondary)}.dialog-link{display:block;font-family:JetBrains Mono,monospace;font-size:.75rem;color:var(--accent);text-decoration:none;border:1px solid var(--accent);padding:.5rem;text-align:center;transition:all .2s ease}.dialog-link:hover{background:var(--accent);color:#fff}@media (max-width: 768px){.node-dialog{width:calc(100% - 2.5rem);bottom:1.25rem;top:auto;left:1.25rem;transform:none}}.node-list{display:flex;flex-direction:column;border-top:1px solid var(--border)}.node-item{display:flex;justify-content:space-between;align-items:center;padding:.85rem 0;border-bottom:1px solid var(--border);transition:padding .15s}.node-item:hover{background-color:var(--hover-bg);padding-left:.5rem;padding-right:.5rem;margin-left:-.5rem;margin-right:-.5rem}.node-name{font-weight:500;font-size:.9rem}.node-loc{font-size:.72rem;color:var(--text-secondary);margin-top:.15rem;font-family:JetBrains Mono,monospace}.status-indicator{display:flex;align-items:center;font-size:.68rem;letter-spacing:.03em;text-transform:uppercase;color:var(--text-secondary);font-family:JetBrains Mono,monospace;flex-shrink:0}.dot{width:6px;height:6px;background-color:var(--text-tertiary);margin-right:8px}.dot.active{background-color:var(--accent)}.dot.deploying{background-color:var(--accent-deploying)}.dot.pending{background-color:var(--accent-pending)}.map-container{position:relative;width:100%;aspect-ratio:16 / 10;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--bg-color)}.pulse-svg{transform-origin:center;transform-box:fill-box;animation:svg-pulse 2s infinite}@keyframes svg-pulse{0%{transform:scale(1);opacity:.8;stroke-width:1px}to{transform:scale(3);opacity:0;stroke-width:.5px}}.map-node-svg-label-group{opacity:0;transition:opacity .1s ease;pointer-events:none}g:hover .map-node-svg-label-group{opacity:1}.deployments-table{width:100%;border-collapse:collapse;text-align:left}.deployments-table th{font-family:JetBrains Mono,monospace;font-size:.68rem;font-weight:400;color:var(--text-tertiary);border-bottom:1px solid var(--border);padding:.75rem .5rem;text-transform:uppercase}.deployments-table td{padding:.85rem .5rem;border-bottom:1px solid var(--hover-bg);font-size:.82rem;color:var(--text-secondary)}.deployments-table tr:hover td{background-color:var(--hover-bg);color:var(--text-primary)}.deploy-status{font-family:JetBrains Mono,monospace;font-size:.68rem;text-transform:uppercase}.deploy-status.completed{color:#888}.deploy-status.live{color:var(--accent)}.deploy-status.scheduled{color:var(--accent-deploying)}@media (max-width: 768px){.hide-mobile{display:none}.deployments-table td,.deployments-table th{padding:.65rem .35rem;font-size:.72rem}}.nodes-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}@media (max-width: 1024px){.nodes-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.nodes-grid{grid-template-columns:1fr}}.node-card{border:1px solid var(--border);padding:1.25rem;background-color:transparent;transition:background-color .15s}.node-card.active{border-color:var(--accent)}.node-card.pending{border-color:var(--accent-pending)}.node-card:hover{background-color:var(--hover-bg)}.card-name{font-weight:500;font-size:.92rem;color:var(--text-primary);margin-bottom:.2rem}.card-school{font-size:.72rem;color:var(--text-secondary);margin-bottom:1.25rem;font-family:JetBrains Mono,monospace}.card-meta{display:flex;justify-content:space-between;font-size:.62rem;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;font-family:JetBrains Mono,monospace;border-top:1px dotted var(--border);padding-top:.75rem}.access-container{max-width:600px;background:#fff;border:1px solid var(--border);border-radius:4px}.contact-success{padding:3rem;text-align:center;font-size:.85rem;line-height:1.8;color:var(--text-secondary)}.access-header{padding:1rem 1.5rem;font-family:Inter,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;border-bottom:1px solid var(--border);background:var(--bg-color)}.access-form{display:flex;flex-direction:column;gap:1.25rem}.form-group{display:flex;flex-direction:column;gap:.35rem}.form-group label{font-family:JetBrains Mono,monospace;font-size:.68rem;color:var(--text-secondary);text-transform:lowercase}.form-input{background:transparent;border:1px solid var(--border);padding:.6rem .75rem;font-size:.82rem;color:var(--text-primary);font-family:JetBrains Mono,monospace;outline:none;border-radius:0;appearance:none;-webkit-appearance:none;-moz-appearance:none}.form-input:focus{border-color:var(--text-primary);background:var(--hover-bg)}select.form-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer}.btn-submit{background:var(--text-primary);color:var(--bg-color);border:none;padding:.8rem;font-family:JetBrains Mono,monospace;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;margin-top:.75rem;transition:opacity .15s}.btn-submit:hover{opacity:.8}.btn-submit:active{transform:translateY(1px)}button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 768px){.nav button,.hero-btn,.btn-submit{min-height:48px;min-width:48px}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.footer{max-width:1200px;margin:0 auto;padding:3rem 4rem 1.5rem;display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;font-size:.78rem;color:var(--text-tertiary);letter-spacing:.05em;border-top:1px solid var(--border)}@media (max-width: 1024px){.footer{padding:2.5rem 2rem 1.5rem;gap:1.5rem}}@media (max-width: 768px){.footer{grid-template-columns:1fr;gap:.75rem;padding:2rem 1.25rem 1rem}}@media (max-width: 480px){.footer{padding:1.5rem 1rem 1rem;gap:.5rem}}.footer a{color:var(--text-tertiary);text-decoration:none;border-bottom:1px dotted transparent}.footer a:hover{color:var(--text-secondary);border-bottom-color:var(--text-secondary)}.text-right{text-align:right}.text-center{text-align:center}@media (max-width: 768px){.text-right,.text-center{text-align:left}}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.flicker-data{animation:occasional-flicker 10s infinite}@keyframes occasional-flicker{0%,94%,96%,to{opacity:1}95%{opacity:.1}97%{opacity:.7}98%{opacity:.2}}.hero-title{font-family:Space Grotesk,Inter,sans-serif;letter-spacing:-.055em;line-height:.95}.metrics-bar{background-color:color-mix(in srgb,var(--bg-color) 92%,transparent);backdrop-filter:saturate(140%) blur(14px);-webkit-backdrop-filter:saturate(140%) blur(14px)}.net-field{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.9;-webkit-mask-image:radial-gradient(140% 135% at 50% 46%,transparent 6%,#000 68%);mask-image:radial-gradient(140% 135% at 50% 46%,transparent 6%,#000 68%)}[data-theme=dark] .net-field{opacity:1}.hero-radar{display:none}.hero-bg{opacity:.55;-webkit-mask-image:radial-gradient(120% 90% at 72% 45%,#000 10%,transparent 72%);mask-image:radial-gradient(120% 90% at 72% 45%,#000 10%,transparent 72%)}.hero-status{display:inline-flex!important;align-items:center;gap:.55rem;width:-moz-fit-content;width:fit-content;padding:0;border:none;background:none;color:var(--accent);font-size:.66rem;letter-spacing:.18em;text-transform:uppercase}.hero-status .dot.active{width:7px;height:7px;border-radius:50%;background:var(--accent);animation:pulse-dot 2.4s ease-out infinite}@keyframes pulse-dot{0%{box-shadow:0 0 0 0 var(--glow)}70%{box-shadow:0 0 0 7px transparent}to{box-shadow:0 0 0 0 transparent}}@media (max-width: 1024px){.hero-status{margin:0 auto}}.hero-btn{background:var(--accent);color:#fff;border-radius:9px;font-weight:600;transition:transform .22s cubic-bezier(.2,.7,.2,1),box-shadow .22s ease;box-shadow:0 6px 20px -10px var(--glow)}.hero-btn:hover{background:var(--accent);transform:translateY(-2px);box-shadow:0 14px 34px -10px var(--glow)}.hero-btn:active{transform:translateY(0)}[data-theme=dark] .hero-btn{color:#04130d}.section-title{display:flex;align-items:center;gap:.65rem;color:var(--text-tertiary)}.section-title:before{content:"";width:20px;height:1px;background:linear-gradient(90deg,var(--accent),transparent)}.node-card{border-radius:12px;background:var(--surface-2);transition:transform .28s cubic-bezier(.2,.7,.2,1),border-color .28s ease,box-shadow .28s ease,background .28s ease}.node-card:hover{transform:translateY(-2px);border-color:var(--accent);background:var(--surface);box-shadow:none}.node-card.active{border-color:color-mix(in srgb,var(--accent) 55%,var(--border))}.map-container-enhanced{border:none;background:transparent;border-radius:0;overflow:visible;height:auto}.map-marker.active{filter:drop-shadow(0 0 5px var(--glow))}.map-arc{fill:none;stroke:var(--accent);stroke-width:1.6;opacity:.7;stroke-linecap:round;stroke-dasharray:3 8;animation:arc-flow 1.3s linear infinite;filter:drop-shadow(0 0 3px var(--glow))}@keyframes arc-flow{to{stroke-dashoffset:-22}}.nav button.theme-toggle{background:transparent!important;color:var(--text-tertiary);border:1px solid var(--border)!important;border-radius:var(--radius-sm);padding:.42rem .75rem;font-family:JetBrains Mono,monospace;font-size:.7rem;letter-spacing:.02em;text-transform:lowercase;transition:color .15s ease,border-color .15s ease}.nav button.theme-toggle:hover{color:var(--accent);border-color:var(--accent)!important;background:transparent!important}.nav button.theme-toggle:focus,.nav button.theme-toggle:focus-visible,.nav button.theme-toggle:active{outline:none;background:transparent!important}.node-dialog{border-radius:12px;background:var(--surface);border-color:var(--border-strong);box-shadow:0 10px 30px -20px #00000073}.demo-container{animation:none;border-radius:12px;border:1px solid var(--border-strong);box-shadow:none}.search-demo{width:100%;background:var(--surface);border:1px solid var(--border-strong);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px -34px #0000008c;text-align:left}.search-bar{display:flex;align-items:center;gap:.7rem;padding:.95rem 1.1rem;border-bottom:1px solid var(--border)}.search-icon{color:var(--text-tertiary);flex:0 0 auto}.search-field{display:inline-flex;align-items:center;flex:1 1 auto;min-width:0;cursor:text}.search-typer{display:inline-grid;flex:0 1 auto;min-width:0;font-family:JetBrains Mono,monospace;font-size:.92rem}.search-typer:after,.search-typer>.search-input{grid-area:1 / 1;font:inherit}.search-typer:after{content:attr(data-value);visibility:hidden;white-space:pre;overflow:hidden}.search-input{width:100%;min-width:2ch;background:transparent;border:none;outline:none;padding:0;color:var(--text-primary)}.search-input::-moz-placeholder{color:var(--text-tertiary)}.search-input::placeholder{color:var(--text-tertiary)}.search-caret{flex:0 0 auto;width:2px;height:1.1em;margin-left:3px;background:var(--accent);animation:caret-blink 1.1s steps(1) infinite}.search-bar:focus-within .search-caret{opacity:0;animation:none}@keyframes caret-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}@media (prefers-reduced-motion: reduce){.search-caret{animation:none}}.search-kbd{flex:0 0 auto;font-family:JetBrains Mono,monospace;font-size:.62rem;color:var(--text-tertiary);border:1px solid var(--border);border-radius:5px;padding:.15rem .42rem}.search-results{padding:.4rem 0}.search-label{font-family:JetBrains Mono,monospace;font-size:.58rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-tertiary);padding:.45rem 1.1rem .4rem}.search-row{display:flex;align-items:center;gap:.7rem;width:100%;padding:.6rem 1.1rem;background:transparent;border:none;text-align:left;font:inherit;cursor:pointer;transition:background .12s ease}.search-row:hover,.search-row:focus-visible{background:var(--surface-2);outline:none}.search-empty{padding:.9rem 1.1rem 1.1rem;font-family:JetBrains Mono,monospace;font-size:.74rem;color:var(--text-secondary)}.search-empty-cta{background:transparent;border:none;padding:0;cursor:pointer;font:inherit;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.search-row .dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto}.search-row .dot.active{background:var(--accent);box-shadow:0 0 0 3px var(--glow)}.search-row .dot.pending{background:var(--text-tertiary)}.sr-name{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:.85rem;color:var(--text-primary);white-space:nowrap}.sr-loc{font-family:JetBrains Mono,monospace;font-size:.66rem;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sr-meta{margin-left:auto;font-family:JetBrains Mono,monospace;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);flex:0 0 auto}.search-foot{display:flex;gap:1.25rem;padding:.7rem 1.1rem;border-top:1px solid var(--border);font-family:JetBrains Mono,monospace;font-size:.56rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary)}@media (max-width: 480px){.sr-loc{display:none}}::-moz-selection{background:var(--accent);color:var(--bg-color)}::selection{background:var(--accent);color:var(--bg-color)}html{scrollbar-width:thin;scrollbar-color:var(--border-strong) transparent}::-webkit-scrollbar{width:11px;height:11px}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:999px;border:3px solid var(--bg-color)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}.vira-glitch{position:relative;display:inline-block}.vira-glitch:before,.vira-glitch:after{content:"VIRA";position:absolute;top:0;left:0;width:100%;background:var(--bg-color);opacity:0;pointer-events:none}.vira-glitch:before{left:3px;text-shadow:-2px 0 #ff2e88;animation:glitch-anim 5s infinite linear alternate-reverse}.vira-glitch:after{left:-3px;text-shadow:2px 0 var(--accent);animation:glitch-anim2 2.4s infinite linear alternate-reverse}@keyframes rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.hero-title{animation:rise .9s cubic-bezier(.2,.7,.2,1) .12s backwards}.hero-sub{animation:rise .9s cubic-bezier(.2,.7,.2,1) .26s backwards}.hero-center .hero-btn{animation:rise .9s cubic-bezier(.2,.7,.2,1) .4s backwards}.hero-product{animation:rise 1s cubic-bezier(.2,.7,.2,1) .52s backwards}@media (prefers-reduced-motion: reduce){.hero-title,.hero-sub,.hero-center .hero-btn,.hero-product,.content-section>div{animation:none!important;opacity:1!important;transform:none!important}.map-arc,.hero-status .dot.active,.vira-glitch:before,.vira-glitch:after{animation:none}.vira-glitch:before,.vira-glitch:after{opacity:0}}.hero-section{flex-direction:column;gap:clamp(2.5rem,5vw,4rem)}.hero-center{position:relative;z-index:2;width:100%;max-width:760px;margin:0 auto;padding:0 1.5rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:clamp(1.25rem,2.6vw,2rem)}.hero-center .hero-title{text-align:center}.hero-center .hero-sub{border-left:none;padding-left:0;text-align:center;max-width:48ch;margin:0;color:var(--text-secondary)}.hero-product{position:relative;z-index:2;width:100%;max-width:880px;margin:0 auto;padding:0 1.5rem}.op-active-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(118px,auto);gap:clamp(.75rem,1.4vw,1rem);margin-bottom:clamp(1.5rem,3vw,2.25rem)}.op-card{border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:clamp(1.1rem,2.2vw,1.5rem);display:flex;flex-direction:column;justify-content:space-between;gap:1.25rem;transition:border-color .2s ease,transform .2s ease}.op-card:hover{border-color:var(--accent);transform:translateY(-2px)}.op-founder{grid-column:span 2;grid-row:span 2;background:var(--accent);border-color:var(--accent);color:#fff;justify-content:flex-end}[data-theme=dark] .op-founder{color:#04130d}.op-status{font-family:JetBrains Mono,monospace;font-size:.6rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-tertiary);display:inline-flex;align-items:center;gap:.4rem}.op-founder .op-status{color:inherit;opacity:.8}.op-name{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:1.05rem;color:var(--text-primary)}.op-founder .op-name{color:inherit;font-size:clamp(1.5rem,3vw,2rem)}.op-school{font-family:JetBrains Mono,monospace;font-size:.68rem;color:var(--text-secondary);margin-top:.2rem}.op-founder .op-school{color:inherit;opacity:.85}.op-uptime{font-family:JetBrains Mono,monospace;font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-tertiary);margin-top:.65rem}.op-founder .op-uptime{color:inherit;opacity:.78}.op-queue{border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:clamp(1.25rem,2.4vw,1.75rem)}.op-queue-head{font-family:JetBrains Mono,monospace;font-size:.66rem;text-transform:uppercase;letter-spacing:.14em;color:var(--text-secondary);display:flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.op-queue-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 clamp(1rem,2vw,2rem)}.op-chip{display:flex;flex-direction:column;padding:.65rem 0;border-top:1px solid var(--border)}.op-chip .c-name{font-size:.85rem;color:var(--text-primary)}.op-chip .c-school{font-family:JetBrains Mono,monospace;font-size:.62rem;color:var(--text-tertiary);margin-top:.12rem}@media (max-width: 760px){.op-active-grid{grid-template-columns:1fr 1fr}.op-founder{grid-column:span 2;grid-row:span 1}.op-queue-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.op-active-grid{grid-template-columns:1fr}.op-founder{grid-column:span 1}.op-queue-grid{grid-template-columns:1fr}}.code-comment{color:#6b7785}.code-keyword,.code-func{color:#aab4bf}.code-str{color:#c2cad2}.code-const,.code-number{color:#e6ebf0}.code-accent{color:var(--accent)}.vira-logo-svg circle{stroke:var(--accent)}.vira-logo-svg line{stroke:var(--accent)}.section-header{margin-bottom:clamp(2rem,4vw,3rem)}.section-eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:JetBrains Mono,monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--text-tertiary);margin-bottom:.85rem}.section-eyebrow:before{content:"";width:18px;height:1px;background:var(--accent)}.section-subhead{font-family:Space Grotesk,Inter,sans-serif;font-weight:600;font-size:clamp(1.8rem,3.8vw,2.6rem);line-height:1;letter-spacing:-.05em;color:var(--text-primary);max-width:20ch;margin:0}.section-note{margin-top:.7rem;max-width:52ch;font-family:JetBrains Mono,monospace;font-size:.72rem;line-height:1.5;letter-spacing:.02em;color:var(--text-tertiary)}.content-section{min-height:0;padding-top:clamp(4.5rem,9vw,7rem);padding-bottom:clamp(4.5rem,9vw,7rem)}.stat-ticker{background:transparent;border:none;overflow:hidden;padding:clamp(1.4rem,2.6vw,2.1rem) 0;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 30%,#000 70%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 30%,#000 70%,transparent 100%)}.ticker-viewport{display:flex;width:-moz-max-content;width:max-content;animation:ticker-scroll 50s linear infinite;will-change:transform}.stat-ticker:hover .ticker-viewport{animation-play-state:paused}.ticker-track{display:flex;flex:0 0 auto}.ticker-item{display:inline-flex;align-items:baseline;gap:.55rem;padding:0 clamp(1.4rem,2.8vw,2.75rem)}.ticker-value{font-family:Space Grotesk,sans-serif;font-weight:700;font-size:clamp(1.25rem,2vw,1.5rem);letter-spacing:-.03em;color:var(--text-primary)}.ticker-label{font-family:JetBrains Mono,monospace;font-weight:500;font-size:.68rem;text-transform:uppercase;letter-spacing:.13em;color:var(--text-secondary);white-space:nowrap}@keyframes ticker-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (prefers-reduced-motion: reduce){.ticker-viewport{animation:none}}.bento-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:minmax(148px,auto);gap:clamp(.75rem,1.4vw,1rem)}.bento-tile{border:1px solid var(--border);border-radius:14px;background:var(--surface-2);padding:clamp(1.25rem,2.4vw,1.75rem);display:flex;flex-direction:column;justify-content:space-between;gap:1.5rem;transition:border-color .22s ease,transform .22s ease}.bento-tile:hover{border-color:var(--accent);transform:translateY(-2px)}.bento-a{grid-column:span 4;grid-row:span 2;background:var(--accent);border-color:var(--accent);color:#fff}[data-theme=dark] .bento-a{color:#04130d}.bento-b,.bento-c{grid-column:span 2}.bento-d,.bento-e{grid-column:span 3}.bento-eyebrow{font-family:JetBrains Mono,monospace;font-size:.64rem;text-transform:uppercase;letter-spacing:.16em;color:var(--text-tertiary)}.bento-a .bento-eyebrow{color:inherit;opacity:.72}.bento-title{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:clamp(1.1rem,2vw,1.4rem);letter-spacing:-.02em;line-height:1.12;color:var(--text-primary);margin-bottom:.5rem}.bento-a .bento-title{color:inherit;font-size:clamp(1.6rem,3vw,2.2rem)}.bento-copy{font-size:.88rem;line-height:1.5;color:var(--text-secondary);margin:0}.bento-a .bento-copy{color:inherit;opacity:.86;max-width:30ch}@media (max-width: 760px){.bento-grid{grid-template-columns:1fr}.bento-a,.bento-b,.bento-c,.bento-d,.bento-e{grid-column:span 1;grid-row:span 1}}.finale-slab{position:relative;overflow:hidden;border-top:1px solid var(--border);background:radial-gradient(125% 150% at 50% 0%,color-mix(in srgb,var(--accent) 34%,#04130d) 0%,#04130d 58%,var(--bg-color) 100%)}.finale-inner{max-width:820px;margin:0 auto;padding:clamp(5rem,11vw,9rem) 1.5rem;text-align:center;position:relative;z-index:1}.finale-eyebrow{font-family:JetBrains Mono,monospace;font-size:.7rem;text-transform:uppercase;letter-spacing:.18em;color:#7ff0cf;margin-bottom:1.5rem}.finale-stat{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:clamp(2.4rem,6vw,4.25rem);line-height:1.02;letter-spacing:-.04em;color:#f3fbf8;margin:0}.finale-stat .dim{color:#f3fbf880}.finale-line{margin:1.4rem auto 2.25rem;max-width:44ch;font-size:1rem;line-height:1.6;color:#f3fbf8d1}.finale-cta{display:inline-flex;align-items:center;gap:.5rem;background:#f3fbf8;color:#04130d;border:none;border-radius:9px;padding:.85rem 1.6rem;font-weight:600;font-size:.9rem;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.finale-cta:hover{transform:translateY(-2px);box-shadow:0 16px 44px -14px #0000008c}@media (prefers-reduced-motion: reduce){.finale-cta:hover{transform:none}}.bento-a{justify-content:flex-end;gap:1rem}.finale-bignum{font-family:Space Grotesk,sans-serif;font-weight:600;font-size:clamp(4rem,12vw,8rem);line-height:.95;letter-spacing:-.05em;color:#f3fbf8}.finale-substat{margin-top:1rem;font-family:JetBrains Mono,monospace;font-size:.78rem;text-transform:uppercase;letter-spacing:.14em;color:#f3fbf8b3}#about.content-section{padding-top:clamp(3rem,5vw,4.5rem)}:root,[data-theme=dark]{--radius: 3px;--radius-sm: 2px}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}.op-card,.op-queue,.bento-tile,.node-card,.search-demo,.node-dialog,.demo-container{border-radius:var(--radius);border-width:1px;border-style:solid}.search-demo,.node-dialog,.demo-container{border-color:var(--border)}.op-card,.op-queue,.bento-tile,.node-card,.demo-container{box-shadow:none}.search-demo{box-shadow:0 16px 40px -34px #00000073}.node-dialog{box-shadow:0 16px 40px -32px #00000080}button,input,textarea,select,.theme-toggle,.search-kbd,.dialog-link{border-radius:var(--radius-sm)}.map-arc{stroke-width:1.2}.dialog-info{border-left-width:1px}.hero-title{letter-spacing:-.06em}.bento-title,.op-name,.sr-name,.dialog-title,.finale-bignum,.ticker-value{letter-spacing:-.04em}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.file\:text-foreground::file-selector-button{color:hsl(var(--foreground))}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);top:-.5rem;right:-.5rem;bottom:-.5rem;left:-.5rem}.after\:inset-y-0:after{content:var(--tw-content);top:0;bottom:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-1:after{content:var(--tw-content);width:.25rem}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.first\:rounded-l-md:first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.first\:border-l:first-child{border-left-width:1px}.last\:rounded-r-md:last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.focus-within\:relative:focus-within{position:relative}.focus-within\:z-20:focus-within{z-index:20}.hover\:border-vira-accent:hover{border-color:var(--accent)}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary:hover{background-color:hsl(var(--primary))}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-secondary:hover{background-color:hsl(var(--secondary))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-sidebar-accent:hover{background-color:hsl(var(--sidebar-accent))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-muted-foreground:hover{color:hsl(var(--muted-foreground))}.hover\:text-primary-foreground:hover{color:hsl(var(--primary-foreground))}.hover\:text-primary\/90:hover{color:hsl(var(--primary) / .9)}.hover\:text-sidebar-accent-foreground:hover{color:hsl(var(--sidebar-accent-foreground))}.hover\:text-vira-accent:hover{color:var(--accent)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:shadow-\[0_0_0_1px_hsl\(var\(--sidebar-accent\)\)\]:hover{--tw-shadow: 0 0 0 1px hsl(var(--sidebar-accent));--tw-shadow-colored: 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:hsl(var(--sidebar-border))}.focus\:border-vira-accent:focus{border-color:var(--accent)}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:bg-primary:focus{background-color:hsl(var(--primary))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:text-primary-foreground:focus{color:hsl(var(--primary-foreground))}.focus\:opacity-100:focus{opacity:1}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-sidebar-ring:focus-visible{--tw-ring-color: hsl(var(--sidebar-ring))}.focus-visible\:ring-offset-1:focus-visible{--tw-ring-offset-width: 1px}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:bg-sidebar-accent:active{background-color:hsl(var(--sidebar-accent))}.active\:text-sidebar-accent-foreground:active{color:hsl(var(--sidebar-accent-foreground))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.group\/menu-item:focus-within .group-focus-within\/menu-item\:opacity-100{opacity:1}.group\/menu-item:hover .group-hover\/menu-item\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group.destructive .group-\[\.destructive\]\:border-muted\/40{border-color:hsl(var(--muted) / .4)}.group.toaster .group-\[\.toaster\]\:border-border{border-color:hsl(var(--border))}.group.toast .group-\[\.toast\]\:bg-muted{background-color:hsl(var(--muted))}.group.toast .group-\[\.toast\]\:bg-primary{background-color:hsl(var(--primary))}.group.toaster .group-\[\.toaster\]\:bg-background{background-color:hsl(var(--background))}.group.destructive .group-\[\.destructive\]\:text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.group.toast .group-\[\.toast\]\:text-muted-foreground{color:hsl(var(--muted-foreground))}.group.toast .group-\[\.toast\]\:text-primary-foreground{color:hsl(var(--primary-foreground))}.group.toaster .group-\[\.toaster\]\:text-foreground{color:hsl(var(--foreground))}.group.toaster .group-\[\.toaster\]\:shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group.destructive .group-\[\.destructive\]\:hover\:border-destructive\/30:hover{border-color:hsl(var(--destructive) / .3)}.group.destructive .group-\[\.destructive\]\:hover\:bg-destructive:hover{background-color:hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:hover\:text-destructive-foreground:hover{color:hsl(var(--destructive-foreground))}.group.destructive .group-\[\.destructive\]\:hover\:text-red-50:hover{--tw-text-opacity: 1;color:rgb(254 242 242 / var(--tw-text-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-destructive:focus{--tw-ring-color: hsl(var(--destructive))}.group.destructive .group-\[\.destructive\]\:focus\:ring-red-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(248 113 113 / var(--tw-ring-opacity, 1))}.group.destructive .group-\[\.destructive\]\:focus\:ring-offset-red-600:focus{--tw-ring-offset-color: #dc2626}.peer\/menu-button:hover~.peer-hover\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.has-\[\[data-variant\=inset\]\]\:bg-sidebar:has([data-variant=inset]){background-color:hsl(var(--sidebar-background))}.has-\[\:disabled\]\:opacity-50:has(:disabled){opacity:.5}.group\/menu-item:has([data-sidebar=menu-action]) .group-has-\[\[data-sidebar\=menu-action\]\]\/menu-item\:pr-8{padding-right:2rem}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-selected\:bg-accent[aria-selected=true]{background-color:hsl(var(--accent))}.aria-selected\:bg-accent\/50[aria-selected=true]{background-color:hsl(var(--accent) / .5)}.aria-selected\:text-accent-foreground[aria-selected=true]{color:hsl(var(--accent-foreground))}.aria-selected\:text-muted-foreground[aria-selected=true]{color:hsl(var(--muted-foreground))}.aria-selected\:opacity-100[aria-selected=true]{opacity:1}.aria-selected\:opacity-30[aria-selected=true]{opacity:.3}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true],.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[panel-group-direction\=vertical\]\:h-px[data-panel-group-direction=vertical]{height:1px}.data-\[panel-group-direction\=vertical\]\:w-full[data-panel-group-direction=vertical]{width:100%}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes accordion-up{0%{height:var(--radix-accordion-content-height)}to{height:0}}.data-\[state\=closed\]\:animate-accordion-up[data-state=closed]{animation:accordion-up .2s ease-out}@keyframes accordion-down{0%{height:0}to{height:var(--radix-accordion-content-height)}}.data-\[state\=open\]\:animate-accordion-down[data-state=open]{animation:accordion-down .2s ease-out}.data-\[panel-group-direction\=vertical\]\:flex-col[data-panel-group-direction=vertical]{flex-direction:column}.data-\[active\=true\]\:bg-sidebar-accent[data-active=true]{background-color:hsl(var(--sidebar-accent))}.data-\[active\]\:bg-accent\/50[data-active]{background-color:hsl(var(--accent) / .5)}.data-\[selected\=\'true\'\]\:bg-accent[data-selected=true]{background-color:hsl(var(--accent))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=on\]\:bg-accent[data-state=on],.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=open\]\:bg-accent\/50[data-state=open]{background-color:hsl(var(--accent) / .5)}.data-\[state\=open\]\:bg-secondary[data-state=open]{background-color:hsl(var(--secondary))}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:hsl(var(--muted))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[active\=true\]\:font-medium[data-active=true]{font-weight:500}.data-\[active\=true\]\:text-sidebar-accent-foreground[data-active=true]{color:hsl(var(--sidebar-accent-foreground))}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:hsl(var(--accent-foreground))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[state\=on\]\:text-accent-foreground[data-state=on],.data-\[state\=open\]\:text-accent-foreground[data-state=open]{color:hsl(var(--accent-foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\=true\]\:opacity-50[data-disabled=true],.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=open\]\:opacity-100[data-state=open]{opacity:1}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[motion\^\=from-\]\:animate-in[data-motion^=from-],.data-\[state\=open\]\:animate-in[data-state=open],.data-\[state\=visible\]\:animate-in[data-state=visible]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[motion\^\=to-\]\:animate-out[data-motion^=to-],.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[state\=hidden\]\:animate-out[data-state=hidden],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[motion\^\=from-\]\:fade-in[data-motion^=from-]{--tw-enter-opacity: 0}.data-\[motion\^\=to-\]\:fade-out[data-motion^=to-],.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=hidden\]\:fade-out[data-state=hidden]{--tw-exit-opacity: 0}.data-\[state\=open\]\:fade-in-0[data-state=open],.data-\[state\=visible\]\:fade-in[data-state=visible]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-90[data-state=open]{--tw-enter-scale: .9}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[motion\=from-end\]\:slide-in-from-right-52[data-motion=from-end]{--tw-enter-translate-x: 13rem}.data-\[motion\=from-start\]\:slide-in-from-left-52[data-motion=from-start]{--tw-enter-translate-x: -13rem}.data-\[motion\=to-end\]\:slide-out-to-right-52[data-motion=to-end]{--tw-exit-translate-x: 13rem}.data-\[motion\=to-start\]\:slide-out-to-left-52[data-motion=to-start]{--tw-exit-translate-x: -13rem}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.5rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .5rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.5rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .5rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.data-\[panel-group-direction\=vertical\]\:after\:left-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);left:0}.data-\[panel-group-direction\=vertical\]\:after\:h-1[data-panel-group-direction=vertical]:after{content:var(--tw-content);height:.25rem}.data-\[panel-group-direction\=vertical\]\:after\:w-full[data-panel-group-direction=vertical]:after{content:var(--tw-content);width:100%}.data-\[panel-group-direction\=vertical\]\:after\:-translate-y-1\/2[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[panel-group-direction\=vertical\]\:after\:translate-x-0[data-panel-group-direction=vertical]:after{content:var(--tw-content);--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=open\]\:hover\:bg-sidebar-accent:hover[data-state=open]{background-color:hsl(var(--sidebar-accent))}.data-\[state\=open\]\:hover\:text-sidebar-accent-foreground:hover[data-state=open]{color:hsl(var(--sidebar-accent-foreground))}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\]{left:calc(var(--sidebar-width) * -1)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\]{right:calc(var(--sidebar-width) * -1)}.group[data-side=left] .group-data-\[side\=left\]\:-right-4{right:-1rem}.group[data-side=right] .group-data-\[side\=right\]\:left-0{left:0}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:-mt-8{margin-top:-2rem}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:hidden{display:none}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!size-8{width:2rem!important;height:2rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[--sidebar-width-icon\]{width:var(--sidebar-width-icon)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)\)\]{width:calc(var(--sidebar-width-icon) + 1rem)}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)_\+_theme\(spacing\.4\)_\+2px\)\]{width:calc(var(--sidebar-width-icon) + 1rem + 2px)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:w-0{width:0px}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:translate-x-0{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-side=right] .group-data-\[side\=right\]\:rotate-180,.group[data-state=open] .group-data-\[state\=open\]\:rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:overflow-hidden{overflow:hidden}.group[data-variant=floating] .group-data-\[variant\=floating\]\:rounded-lg{border-radius:var(--radius)}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border{border-width:1px}.group[data-side=left] .group-data-\[side\=left\]\:border-r{border-right-width:1px}.group[data-side=right] .group-data-\[side\=right\]\:border-l{border-left-width:1px}.group[data-variant=floating] .group-data-\[variant\=floating\]\:border-sidebar-border{border-color:hsl(var(--sidebar-border))}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-0{padding:0!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:\!p-2{padding:.5rem!important}.group[data-collapsible=icon] .group-data-\[collapsible\=icon\]\:opacity-0{opacity:0}.group[data-variant=floating] .group-data-\[variant\=floating\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:after\:left-full:after{content:var(--tw-content);left:100%}.group[data-collapsible=offcanvas] .group-data-\[collapsible\=offcanvas\]\:hover\:bg-sidebar:hover{background-color:hsl(var(--sidebar-background))}.peer\/menu-button[data-size=default]~.peer-data-\[size\=default\]\/menu-button\:top-1\.5{top:.375rem}.peer\/menu-button[data-size=lg]~.peer-data-\[size\=lg\]\/menu-button\:top-2\.5{top:.625rem}.peer\/menu-button[data-size=sm]~.peer-data-\[size\=sm\]\/menu-button\:top-1{top:.25rem}.peer[data-variant=inset]~.peer-data-\[variant\=inset\]\:min-h-\[calc\(100svh-theme\(spacing\.4\)\)\]{min-height:calc(100svh - 1rem)}.peer\/menu-button[data-active=true]~.peer-data-\[active\=true\]\/menu-button\:text-sidebar-accent-foreground{color:hsl(var(--sidebar-accent-foreground))}@media (min-width: 640px){.sm\:bottom-0{bottom:0}.sm\:right-0{right:0}.sm\:top-auto{top:auto}.sm\:col-span-2{grid-column:span 2 / span 2}.sm\:mt-0{margin-top:0}.sm\:flex{display:flex}.sm\:max-w-sm{max-width:24rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2\.5{gap:.625rem}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media (min-width: 768px){.md\:absolute{position:absolute}.md\:block{display:block}.md\:flex{display:flex}.md\:w-\[var\(--radix-navigation-menu-viewport-width\)\]{width:var(--radix-navigation-menu-viewport-width)}.md\:w-auto{width:auto}.md\:max-w-\[420px\]{max-width:420px}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:opacity-0{opacity:0}.after\:md\:hidden:after{content:var(--tw-content);display:none}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:m-2{margin:.5rem}.peer[data-state=collapsed][data-variant=inset]~.md\:peer-data-\[state\=collapsed\]\:peer-data-\[variant\=inset\]\:ml-2{margin-left:.5rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:ml-0{margin-left:0}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:rounded-xl{border-radius:.75rem}.peer[data-variant=inset]~.md\:peer-data-\[variant\=inset\]\:shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}}.dark\:border-destructive:where([data-theme=dark],[data-theme=dark] *){border-color:hsl(var(--destructive))}.\[\&\:has\(\[aria-selected\]\)\]\:bg-accent:has([aria-selected]){background-color:hsl(var(--accent))}.first\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-l-md:has([aria-selected]):first-child{border-top-left-radius:calc(var(--radius) - 2px);border-bottom-left-radius:calc(var(--radius) - 2px)}.last\:\[\&\:has\(\[aria-selected\]\)\]\:rounded-r-md:has([aria-selected]):last-child{border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[aria-selected\]\.day-outside\)\]\:bg-accent\/50:has([aria-selected].day-outside){background-color:hsl(var(--accent) / .5)}.\[\&\:has\(\[aria-selected\]\.day-range-end\)\]\:rounded-r-md:has([aria-selected].day-range-end){border-top-right-radius:calc(var(--radius) - 2px);border-bottom-right-radius:calc(var(--radius) - 2px)}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&\>svg\+div\]\:translate-y-\[-3px\]>svg+div{--tw-translate-y: -3px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>svg\]\:absolute>svg{position:absolute}.\[\&\>svg\]\:left-4>svg{left:1rem}.\[\&\>svg\]\:top-4>svg{top:1rem}.\[\&\>svg\]\:size-3\.5>svg{width:.875rem;height:.875rem}.\[\&\>svg\]\:size-4>svg{width:1rem;height:1rem}.\[\&\>svg\]\:h-2\.5>svg{height:.625rem}.\[\&\>svg\]\:h-3>svg{height:.75rem}.\[\&\>svg\]\:w-2\.5>svg{width:.625rem}.\[\&\>svg\]\:w-3>svg{width:.75rem}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-destructive>svg{color:hsl(var(--destructive))}.\[\&\>svg\]\:text-foreground>svg{color:hsl(var(--foreground))}.\[\&\>svg\]\:text-muted-foreground>svg{color:hsl(var(--muted-foreground))}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:hsl(var(--sidebar-accent-foreground))}.\[\&\>svg\~\*\]\:pl-7>svg~*{padding-left:1.75rem}.\[\&\>tr\]\:last\:border-b-0:last-child>tr{border-bottom-width:0px}.\[\&\[data-panel-group-direction\=vertical\]\>div\]\:rotate-90[data-panel-group-direction=vertical]>div{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\[data-state\=open\]\>svg\]\:rotate-180[data-state=open]>svg{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:hsl(var(--muted-foreground))}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke="#ccc"]{stroke:hsl(var(--border) / .5)}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:hsl(var(--border))}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-layer\]\:outline-none .recharts-layer{outline:2px solid transparent;outline-offset:2px}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:hsl(var(--muted))}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke="#ccc"]{stroke:hsl(var(--border))}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke="#fff"]{stroke:transparent}.\[\&_\.recharts-sector\]\:outline-none .recharts-sector,.\[\&_\.recharts-surface\]\:outline-none .recharts-surface{outline:2px solid transparent;outline-offset:2px}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-top:.375rem;padding-bottom:.375rem}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:.75rem;line-height:1rem}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{font-weight:500}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:hsl(var(--muted-foreground))}.\[\&_\[cmdk-group\]\:not\(\[hidden\]\)_\~\[cmdk-group\]\]\:pt-0 [cmdk-group]:not([hidden])~[cmdk-group]{padding-top:0}.\[\&_\[cmdk-group\]\]\:px-2 [cmdk-group]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:h-5 [cmdk-input-wrapper] svg{height:1.25rem}.\[\&_\[cmdk-input-wrapper\]_svg\]\:w-5 [cmdk-input-wrapper] svg{width:1.25rem}.\[\&_\[cmdk-input\]\]\:h-12 [cmdk-input]{height:3rem}.\[\&_\[cmdk-item\]\]\:px-2 [cmdk-item]{padding-left:.5rem;padding-right:.5rem}.\[\&_\[cmdk-item\]\]\:py-3 [cmdk-item]{padding-top:.75rem;padding-bottom:.75rem}.\[\&_\[cmdk-item\]_svg\]\:h-5 [cmdk-item] svg{height:1.25rem}.\[\&_\[cmdk-item\]_svg\]\:w-5 [cmdk-item] svg{width:1.25rem}.\[\&_p\]\:leading-relaxed p{line-height:1.625}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:-.5rem}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=left] .\[\[data-side\=left\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:-.5rem}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-side=right] .\[\[data-side\=right\]_\&\]\:cursor-e-resize{cursor:e-resize}
