@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-I4S5GZfc.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-BmXc_FBt.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-GZpp1pK2.woff2)format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-D8KDMBhC.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-DrnZ1wKl.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-B_7UjwxQ.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.forge-smooth-scroll{scroll-behavior:smooth}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number]{appearance:textfield}hr{border:none;border-color:var(--border-color);background-color:var(--border-color)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes gradientBorderRotate{0%{--angle:0deg}to{--angle:360deg}}@property --angle{syntax:"<angle>";inherits:false;initial-value:0deg}.gradient-btn-halo{animation:2s linear infinite gradientBorderRotate;background:linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-secondary) 100%) padding-box, conic-gradient(from var(--angle), var(--brand-primary), var(--brand-secondary), #10b981, #06b6d4, var(--brand-primary)) border-box!important;border:2px solid #0000!important}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes pulseScale{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-3deg)}75%{transform:rotate(3deg)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #a35bff4d}50%{box-shadow:0 0 30px #a35bff80}}@keyframes borderSweepIn{0%{clip-path:polygon(50% 50%,50% 0%,50% 0%,50% 0%,50% 0%,50% 0%,50% 0%)}14%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 0%,100% 0%,100% 0%,100% 0%)}28%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 50%,100% 50%,100% 50%,100% 50%)}42%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 50%,100% 100%,100% 100%,100% 100%)}57%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 50%,100% 100%,50% 100%,50% 100%)}71%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 50%,100% 100%,50% 100%,0% 100%)}85%{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 50%,100% 100%,50% 100%,0% 100%,0% 50%)}to{clip-path:polygon(50% 50%,50% 0%,100% 0%,100% 100%,0% 100%,0% 0%,50% 0%)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(200%)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes checkmarkBounce{0%{opacity:0;transform:scale(0)}50%{transform:scale(1.2)}70%{transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes thumbSpring{0%{transform:translateY(-50%)scale(1)}30%{transform:translateY(-50%)scale(1.1,.9)}50%{transform:translateY(-50%)scale(.95,1.05)}70%{transform:translateY(-50%)scale(1.02)}to{transform:translateY(-50%)scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}@keyframes skeletonPulse{0%,to{opacity:1}50%{opacity:.4}}@keyframes skeletonWave{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes slideOutRight{0%{transform:translate(0)}to{transform:translate(100%)}}@keyframes slideOutLeft{0%{transform:translate(0)}to{transform:translate(-100%)}}@keyframes slideInTop{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes slideInBottom{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes progressBarFill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.animate-fadeIn{animation:.15s ease-out fadeIn}.animate-fadeOut{animation:.15s ease-out fadeOut}.animate-scaleIn{animation:.2s ease-out scaleIn}.animate-scaleOut{animation:.2s ease-out scaleOut}.animate-slideInUp{animation:.2s ease-out slideInUp}.animate-slideInDown{animation:.2s ease-out slideInDown}.animate-spin{animation:1s linear infinite spin}.animate-pulse{animation:2s ease-in-out infinite pulse}.animate-pulseScale{animation:2s ease-in-out infinite pulseScale}.animate-glowPulse{animation:2s ease-in-out infinite glowPulse}.animate-float{animation:3s ease-in-out infinite float}.animate-wiggle{animation:.5s ease-in-out wiggle}.animate-bounce{animation:.5s ease-in-out bounce}.animate-shake{animation:.3s ease-in-out shake}.border-sweep-active{animation:.2s ease-out forwards borderSweepIn}.border-sweep-inactive{opacity:0}.skeleton{background:var(--bg-tertiary);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff0d 50%,#0000 100%);animation:1.5s infinite shimmer;position:absolute;inset:0}.skeleton-pulse{animation:1.5s ease-in-out infinite skeletonPulse}.skeleton-wave{background:linear-gradient(90deg, var(--bg-tertiary) 0%, #ffffff1a 50%, var(--bg-tertiary) 100%);background-size:200% 100%;animation:1.5s ease-in-out infinite skeletonWave}.progress-bar-animated{transform-origin:0;animation:.7s cubic-bezier(.4,0,.2,1) forwards progressBarFill}.interactive-icon:hover{background-color:var(--bg-tertiary)}.interactive-danger:hover{background-color:#ef44441a}.interactive-nav{transition:color .15s,background-color .15s}.interactive-nav:hover{color:var(--text-primary);background-color:var(--bg-tertiary)}.interactive-card-subtle:hover{background-color:var(--bg-tertiary)}.interactive-row{transition:all .15s}.interactive-row:hover{background-color:var(--bg-tertiary)}.interactive-subtle{transition:all .15s}.interactive-subtle:hover{background-color:var(--bg-tertiary)}.interactive-card{transition:all .15s}.interactive-card:hover{background-color:var(--bg-tertiary);border-color:var(--border-color)}.btn-primary:hover{filter:brightness(1.1)}.btn-secondary:hover{background-color:var(--text-primary);color:var(--bg-primary);border-color:var(--text-primary)}.btn-ghost:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-danger:hover{color:#fff;background-color:#ef4444;border-color:#ef4444}.transition-fast{transition:all .15s}.transition-normal{transition:all .2s}.transition-slow{transition:all .3s}.hover-lift:hover{transform:translateY(-2px)}.hover-scale:hover{transform:scale(1.02)}.hover-glow:hover{box-shadow:0 0 20px #a35bff4d}.image-tile{box-shadow:none;transform:scale(1)}.image-tile:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000004d}.image-tile-img{transition:transform .2s}.image-tile:hover .image-tile-img{transform:scale(1.05)}.image-tile-overlay{color:#fff;opacity:0;background-color:#0006;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.image-tile:hover .image-tile-overlay{opacity:1}.lightbox-thumbnail{transform:none}.lightbox-thumbnail:hover{box-shadow:none;transform:none;opacity:1!important}.lightbox-thumbnail .image-tile-img{transition:none}.lightbox-thumbnail:hover .image-tile-img{transform:none}.lightbox-thumbnail .image-tile-overlay{display:none}.forge-scrollbar::-webkit-scrollbar{width:8px;height:8px}.forge-scrollbar-thin::-webkit-scrollbar{width:8px;height:8px}.forge-scrollbar-thin::-webkit-scrollbar{width:6px;height:6px}.forge-scrollbar::-webkit-scrollbar-track{background:0 0}.forge-scrollbar-thin::-webkit-scrollbar-track{background:0 0}.forge-scrollbar::-webkit-scrollbar-thumb{background:var(--border-color,#404040);border-radius:4px}.forge-scrollbar-thin::-webkit-scrollbar-thumb{background:var(--border-color,#404040);border-radius:4px}.forge-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}.forge-scrollbar-thin::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}.forge-scrollbar-gutter{scrollbar-gutter:stable}.forge-scrollbar-auto::-webkit-scrollbar-thumb{background:0 0}.forge-scrollbar-auto:hover::-webkit-scrollbar-thumb{background:var(--border-color,#404040)}.forge-scrollbar-auto:hover::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}.forge-scrollbar-minimal::-webkit-scrollbar{width:4px;height:4px}.forge-scrollbar-minimal::-webkit-scrollbar-track{background:0 0}.forge-scrollbar-minimal::-webkit-scrollbar-thumb{background:var(--border-subtle,#2a2a2a);border-radius:2px}.forge-scrollbar-minimal::-webkit-scrollbar-thumb:hover{background:var(--border-color,#404040)}.forge-scrollbar-hidden{-ms-overflow-style:none;scrollbar-width:none}.forge-scrollbar-hidden::-webkit-scrollbar{display:none}.forge-scrollbar,.forge-scrollbar-thin{scrollbar-width:thin;scrollbar-color:var(--border-color,#404040) transparent}.forge-scrollbar-minimal{scrollbar-width:thin;scrollbar-color:var(--border-subtle,#2a2a2a) transparent}.forge-scrollbar-global,.forge-scrollbar-global *{scrollbar-width:thin;scrollbar-color:var(--border-color,#404040) transparent}.forge-scrollbar-global::-webkit-scrollbar{width:8px;height:8px}.forge-scrollbar-global ::-webkit-scrollbar{width:8px;height:8px}.forge-scrollbar-global::-webkit-scrollbar-track{background:0 0}.forge-scrollbar-global ::-webkit-scrollbar-track{background:0 0}.forge-scrollbar-global::-webkit-scrollbar-thumb{background:var(--border-color,#404040);border-radius:4px}.forge-scrollbar-global ::-webkit-scrollbar-thumb{background:var(--border-color,#404040);border-radius:4px}.forge-scrollbar-global::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}.forge-scrollbar-global ::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}*,:before,:after{scrollbar-width:thin;scrollbar-color:var(--border-color,#404040) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-color,#404040);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted,#737373)}::-webkit-scrollbar-corner{background:0 0}@keyframes forge-gradient-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.forge-motion-gradient-text{color:#0000;-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text}.forge-motion-gradient-text--animated{animation:6s ease-in-out infinite forge-gradient-shift}@keyframes forge-text-shimmer{0%{background-position:-200%}to{background-position:200%}}.forge-motion-text-shimmer{color:#0000;-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:3s linear infinite forge-text-shimmer}@keyframes forge-kinetic-wave{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes forge-kinetic-rubber{0%,to{transform:scaleX(1)scaleY(1)}50%{transform:scaleX(1.15)scaleY(.85)}}@keyframes forge-kinetic-float{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(-3px)rotate(-2deg)}75%{transform:translateY(3px)rotate(2deg)}}.forge-motion-kinetic-char{will-change:transform;animation-duration:1.6s;animation-timing-function:cubic-bezier(.4,0,.2,1);animation-iteration-count:infinite;display:inline-block}.forge-motion-kinetic-char--wave{animation-name:forge-kinetic-wave}.forge-motion-kinetic-char--rubber{animation-name:forge-kinetic-rubber}.forge-motion-kinetic-char--float{animation-name:forge-kinetic-float}@keyframes forge-marquee-ltr{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes forge-marquee-rtl{0%{transform:translate(-50%)}to{transform:translate(0)}}.forge-motion-marquee{display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 48px calc(100% - 48px),#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 48px calc(100% - 48px),#0000 100%)}.forge-motion-marquee-track{will-change:transform;flex-shrink:0;animation-timing-function:linear;animation-iteration-count:infinite;display:flex}.forge-motion-marquee-track--ltr{animation-name:forge-marquee-ltr}.forge-motion-marquee-track--rtl{animation-name:forge-marquee-rtl}.forge-motion-marquee:hover .forge-motion-marquee-track--pause{animation-play-state:paused}@keyframes forge-breathe{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.12)}}.forge-motion-breathe{animation:4s cubic-bezier(.4,0,.2,1) infinite forge-breathe}@keyframes forge-aura-pulse{0%,to{box-shadow:0 0 0 0 var(--forge-aura-color,#a35bff80)}50%{box-shadow:0 0 0 16px #0000}}.forge-motion-aura{border-radius:inherit;animation:2.4s cubic-bezier(.4,0,.2,1) infinite forge-aura-pulse}@keyframes forge-ripple-wave{0%{opacity:.55;transform:translate(-50%,-50%)scale(0)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}.forge-motion-ripple-wave{pointer-events:none;border-radius:9999px;animation:.8s cubic-bezier(0,0,.2,1) forwards forge-ripple-wave;position:absolute}@keyframes forge-orbital-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.forge-motion-orbital{display:inline-block;position:relative}.forge-motion-orbital-ring{transform-origin:50%;will-change:transform;animation:linear infinite forge-orbital-spin;position:absolute;top:50%;left:50%}@keyframes forge-holo-shift{0%{background-position:0 0,0 0}50%{background-position:100% 100%,0 0}to{background-position:0 0,0 0}}.forge-motion-cipher{font-variant-numeric:tabular-nums;font-family:JetBrains Mono,Fira Code,Menlo,monospace}@keyframes forge-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.forge-motion-shimmer{background-size:200% 100%;animation:2s linear infinite forge-shimmer}[data-forge-reduce-motion=true] .forge-motion-gradient-text--animated,[data-forge-reduce-motion=true] .forge-motion-text-shimmer,[data-forge-reduce-motion=true] .forge-motion-kinetic-char,[data-forge-reduce-motion=true] .forge-motion-marquee-track,[data-forge-reduce-motion=true] .forge-motion-breathe,[data-forge-reduce-motion=true] .forge-motion-aura,[data-forge-reduce-motion=true] .forge-motion-ripple-wave,[data-forge-reduce-motion=true] .forge-motion-orbital-ring,[data-forge-reduce-motion=true] .forge-motion-shimmer{animation:none!important}html,body,#root{background-color:var(--bg-primary);width:100%;height:100%;min-height:100%}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}body{margin:0;overflow-x:hidden}[aria-label=Notifications]>div{border-radius:var(--radius-md);border:1px solid var(--border-subtle)!important}.plaanif-canvas{background:var(--bg-tertiary);outline:none;width:100%;height:100%;min-height:320px;overflow:hidden}.plaanif-canvas:focus-visible{box-shadow:inset 0 0 0 3px var(--active-color)}.plaanif-project-main>.plaanif-project-panel{min-height:100%}.plaanif-project-main--fill,.plaanif-project-main--fill>.plaanif-project-panel{height:100%}.plaanif-script-block textarea,textarea.plaanif-script-block{min-height:0!important;font-size:inherit!important;line-height:inherit!important;background-color:#0000!important;border-color:#0000!important;padding:2px 0!important}.plaanif-script-block textarea:focus-visible,textarea.plaanif-script-block:focus-visible{outline-offset:3px;outline:1px solid var(--text-secondary)!important}
