.graph-background{--body-background:var(--background);--texture-background-color:color-mix(in oklch, var(--background) 96%, transparent);--texture-pattern-color:color-mix(in oklch, var(--foreground) 35%, transparent);--texture-pattern-opacity:45%;--texture-secondary-color:color-mix(in oklch, var(--foreground) 20%, transparent);--texture-secondary-opacity:30%;--texture-scale:1;transition:background-color .2s ease-out}.graph-background.faded-gradient{background:linear-gradient(135deg, oklch(55% .12 330/.6) 0%, oklch(45% .15 290/.5) 25%, oklch(50% .1 250/.45) 50%, oklch(55% .08 200/.4) 75%, oklch(50% .06 170/.35) 100%),linear-gradient(315deg, oklch(40% .09 260/.4) 0%, oklch(50% .12 220/.35) 40%, oklch(45% .1 180/.3) 100%),var(--body-background);background-size:300% 300%,200% 200%,100% 100%;height:100%;animation:25s infinite faded-gradient-drift}@keyframes faded-gradient-drift{0%{background-position:0%,100% 0,50%}33%{background-position:100% 25%,0 100%,50%}66%{background-position:50% 100%,50%,50%}to{background-position:0%,100% 0,50%}}.graph-background.texture-dots{background-color:var(--texture-background-color);background-image:radial-gradient(circle at 1px 1px, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 1px, transparent 0);background-size:calc(8px*var(--texture-scale)) calc(8px*var(--texture-scale))}.graph-background.texture-grid{background-color:var(--texture-background-color);background-image:linear-gradient(color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 1px, transparent 1px),linear-gradient(90deg, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 1px, transparent 1px);background-size:calc(12px*var(--texture-scale)) calc(12px*var(--texture-scale))}.graph-background.texture-noise{background-color:var(--texture-background-color);background-image:radial-gradient(circle at 2px 2px, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 1px, transparent 0);background-size:calc(6px*var(--texture-scale)) calc(6px*var(--texture-scale))}.graph-background.texture-crosshatch{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(45deg, transparent, transparent calc(2px * var(--texture-scale)), color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(2px * var(--texture-scale)), color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(4px * var(--texture-scale))),repeating-linear-gradient(-45deg, transparent, transparent calc(2px * var(--texture-scale)), color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) calc(2px * var(--texture-scale)), color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) calc(4px * var(--texture-scale)))}.graph-background.texture-diagonal{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(-45deg, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 0, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(1px * var(--texture-scale)), transparent calc(1px * var(--texture-scale)), transparent calc(6px * var(--texture-scale)))}.graph-background.texture-scattered-dots{background-color:var(--texture-background-color);background-image:radial-gradient(circle at calc(3px * var(--texture-scale)) calc(7px * var(--texture-scale)), color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(1px * var(--texture-scale)), transparent 0),radial-gradient(circle at calc(11px * var(--texture-scale)) calc(2px * var(--texture-scale)), color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) calc(1px * var(--texture-scale)), transparent 0),radial-gradient(circle at calc(7px * var(--texture-scale)) calc(12px * var(--texture-scale)), color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(1px * var(--texture-scale)), transparent 0);background-size:calc(16px*var(--texture-scale)) calc(16px*var(--texture-scale))}.graph-background.texture-halftone{background-color:var(--texture-background-color);background-image:radial-gradient(circle, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 25%, transparent 25%),radial-gradient(circle, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 25%, transparent 25%);background-size:calc(10px*var(--texture-scale)) calc(10px*var(--texture-scale));background-position:0 0,calc(5px*var(--texture-scale)) calc(5px*var(--texture-scale))}.graph-background.texture-triangular{background-color:var(--texture-background-color);background-image:conic-gradient(from 0deg at 50% 50%, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 0deg 120deg, transparent 120deg 240deg, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 240deg 360deg),conic-gradient(from 0deg at 50% 50%, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 0deg 120deg, transparent 120deg 240deg, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 240deg 360deg);background-size:calc(8px*var(--texture-scale)) calc(8px*var(--texture-scale));background-position:0 0,calc(4px*var(--texture-scale)) calc(4px*var(--texture-scale))}.graph-background.texture-chevron{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(45deg, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 0, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(2px * var(--texture-scale)), transparent calc(2px * var(--texture-scale)), transparent calc(8px * var(--texture-scale))),repeating-linear-gradient(-45deg, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 0, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) calc(2px * var(--texture-scale)), transparent calc(2px * var(--texture-scale)), transparent calc(8px * var(--texture-scale)))}.graph-background.texture-paper-grain{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(0deg, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 0, transparent calc(1px * var(--texture-scale)), transparent calc(3px * var(--texture-scale))),repeating-linear-gradient(90deg, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 0, transparent calc(1px * var(--texture-scale)), transparent calc(4px * var(--texture-scale))),repeating-linear-gradient(45deg, color-mix(in oklch, var(--texture-pattern-color) calc(var(--texture-pattern-opacity) / 2), transparent) 0, transparent calc(1px * var(--texture-scale)), transparent calc(5px * var(--texture-scale)))}.graph-background.texture-horizontal-lines{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(0deg, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 0, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) calc(1px * var(--texture-scale)), transparent calc(1px * var(--texture-scale)), transparent calc(4px * var(--texture-scale)))}.graph-background.texture-vertical-lines{background-color:var(--texture-background-color);background-image:repeating-linear-gradient(90deg, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 0, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) calc(1px * var(--texture-scale)), transparent calc(1px * var(--texture-scale)), transparent calc(4px * var(--texture-scale)))}.graph-background.texture-spotlight{background-color:var(--texture-background-color);background-image:radial-gradient(ellipse 55% 60% at 50% 48%, color-mix(in oklch, var(--texture-secondary-color) var(--texture-secondary-opacity), transparent) 0%, transparent 72%),radial-gradient(ellipse 120% 105% at 50% 50%, transparent 32%, color-mix(in oklch, var(--texture-pattern-color) var(--texture-pattern-opacity), transparent) 100%)}.graph-background.prism{background-color:#020617}.graph-background.plasma{background-color:#0000}.graph-background.floating-orbs{color:#0000;font:52px/1.3 serif}.graph-background.floating-orbs:before,.graph-background.floating-orbs:after{content:".";mix-blend-mode:screen;width:3em;height:3em;animation:44s ease-in-out -27s infinite alternate move;position:absolute;top:50%;left:50%}.graph-background.floating-orbs:before{text-shadow:-.470147em .982973em 7px #ff00d9e6,.484151em 1.25432em 7px #00ff22e6,-.268675em .00766041em 7px #00ffc7e6,2.05731em 2.27553em 7px #79ff00e6,1.17998em 1.56123em 7px #00dbffe6,.700778em 1.27268em 7px #ff0013e6,1.76641em 1.80794em 7px #0013ffe6,2.31173em .816197em 7px #0096ffe6,2.3108em -.135301em 7px #ffa700e6,2.24553em 1.37117em 7px #00ff91e6,2.10118em -.309057em 7px #7cff00e6,.834164em 1.05662em 7px #ff006be6,.0393669em .706807em 7px #ff0030e6,1.57394em 1.59359em 7px #94ff00e6,-.178275em 1.54001em 7px #1700ffe6,2.22256em 2.06362em 7px #57ff00e6,.816017em 2.28061em 7px #a8ff00e6,1.72857em .189512em 7px #f300ffe6,.040627em 2.10281em 7px #0000ffe6,-.272319em 2.02071em 7px #ff0024e6,1.06887em .696922em 7px #64ff00e6,1.50072em .415625em 7px #0024ffe6,1.47447em 1.53737em 7px #00ff7ae6,-.150162em .407838em 7px #ff00a2e6,2.23321em 1.37964em 7px #b3ff00e6,1.99576em -.342559em 7px #ff0300e6,.382985em 1.48808em 7px #00ffb4e6,.0555166em 1.60952em 7px #ecff00e6,1.24757em 1.37289em 7px #3fff00e6,1.73181em .481515em 7px #00ff81e6,-.157209em 2.0433em 7px #99ff00e6,.0426019em 1.76574em 7px #ff4100e6,1.32494em -.265673em 7px #004bffe6,-.155483em 2.21278em 7px #ff006ce6,2.15073em 1.2386em 7px #00ff14e6,1.00268em 1.3519em 7px #ff4600e6,.44601em 2.42em 7px #00ffece6,2.08117em -.2295em 7px #0085ffe6,.298726em 1.09056em 7px #0002ffe6,1.53469em 2.34879em 7px #2500ffe6,.544967em 2.07184em 7px #00ff60e6;animation-duration:44s;animation-delay:-27s}.graph-background.floating-orbs:after{text-shadow:1.97656em 1.87779em 7px #ff0011e6,.378977em 1.0831em 7px #fffe00e6,1.58129em 1.90622em 7px #ff00dae6,1.06135em 2.48443em 7px #ff0055e6,2.45213em .821555em 7px #ff9a00e6,1.08426em 1.00616em 7px #efff00e6,1.58503em 2.12571em 7px #aa00ffe6,-.22522em .315941em 7px #ff7700e6,-.122858em 2.31059em 7px #ff00d0e6,.265477em 2.36915em 7px #ff0064e6,-.383501em 2.28103em 7px #07ff00e6,-.163417em .921194em 7px #b900ffe6,.447821em 1.5144em 7px #0076ffe6,-.00252816em 1.33515em 7px #ff00cee6,1.41559em -.0284783em 7px #00ff74e6,1.49221em 1.83055em 7px #0076ffe6,.418325em 2.03548em 7px #004dffe6,1.36617em 1.63505em 7px #ffb500e6,1.13804em 2.45494em 7px #00ff46e6,1.9442em 1.45961em 7px #ff5000e6,1.42978em 2.0172em 7px #9eff00e6,-.0529506em -.0708458em 7px #00ffe8e6,1.80165em 1.22868em 7px #ff004ae6,-.400482em 1.71697em 7px #ff000de6,-.472529em 1.3879em 7px #b6ff00e6,1.66185em 1.55713em 7px #0078ffe6,2.26419em .0988837em 7px #f9ff00e6,-.247294em .0368799em 7px #baff00e6,2.47087em .382322em 7px #27ff00e6,1.68914em .588162em 7px #ffdd00e6,.167512em -.398763em 7px #ffe200e6,1.71167em 2.3823em 7px #00d6ffe6,-.274262em 1.39522em 7px #ff0024e6,1.32123em 1.47208em 7px #ff0015e6,.789601em 1.76815em 7px #0d00ffe6,1.99293em 1.54469em 7px #00ff42e6,1.48008em 1.06986em 7px #0025ffe6,.639924em 2.00137em 7px #00dcffe6,2.22063em -.324627em 7px #ff00bfe6,-.398674em .641465em 7px #ff3a00e6,.226563em 1.1649em 7px #ffa800e6;animation-duration:43s;animation-delay:-32s}@keyframes move{0%{transform:rotate(0)scale(12)translate(-20px)}to{transform:rotate(360deg)scale(18)translate(20px)}}.graph-background.custom-background{background-color:var(--graph-background-color)}.graph-background.conic-pointer-gradient{background-color:var(--body-background)}.ambient-glow-orbs{position:absolute;inset:0}.ambient-glow-orb{filter:blur(120px);will-change:transform;pointer-events:none;border-radius:50%;position:absolute}.ambient-glow-orb-1{background:radial-gradient(circle at 40% 40%, var(--glow-c0) 0%, transparent 70%);opacity:.55;width:55%;height:55%;animation:ambient-drift-1 var(--glow-duration) ease-in-out infinite alternate;top:-10%;left:-8%}.ambient-glow-orb-2{background:radial-gradient(circle at 60% 60%, var(--glow-c1) 0%, transparent 70%);opacity:.45;width:50%;height:50%;animation:ambient-drift-2 var(--glow-duration) ease-in-out infinite alternate-reverse;bottom:-8%;right:-5%}.ambient-glow-orb-3{background:radial-gradient(circle at 50% 50%, var(--glow-c2) 0%, transparent 70%);opacity:.3;width:40%;height:40%;animation:ambient-drift-3 calc(var(--glow-duration)*1.4) ease-in-out infinite alternate;bottom:10%;left:30%}@keyframes ambient-drift-1{0%{transform:translate(0)scale(1)}to{transform:translate(6%,8%)scale(1.08)}}@keyframes ambient-drift-2{0%{transform:translate(0)scale(1)}to{transform:translate(-5%,-6%)scale(1.06)}}@keyframes ambient-drift-3{0%{transform:translate(0)scale(1)}to{transform:translate(4%,-5%)scale(1.1)}}.ambient-glow-grain,.grain-overlay:after{pointer-events:none;z-index:1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;position:absolute;inset:0}.grain-overlay:after{content:"";opacity:var(--grain-opacity,.06)}