.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-gradient-position:initial;--tw-gradient-from:#0000;--tw-gradient-via:#0000;--tw-gradient-to:#0000;--tw-gradient-stops:initial;--tw-gradient-via-stops:initial;--tw-gradient-from-position:0%;--tw-gradient-via-position:50%;--tw-gradient-to-position:100%;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:"JetBrains Mono", "Fira Code", monospace;--color-white:#fff;--spacing:.25rem;--container-lg:32rem;--container-6xl:72rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-3xl:1.875rem;--text-3xl--line-height: 1.2 ;--text-5xl:3rem;--text-5xl--line-height:1;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-relaxed:1.625;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-logo:"Rawest", "Syne", sans-serif;--font-display:"Syne", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--color-bg:#06060a;--color-bg-alt:#0c0c14;--color-surface:#111119;--color-border:#ffffff0f;--color-border-hover:#ffffff1a;--color-primary:#0169fe;--color-accent:#22d3b5;--color-warm:#ff8c42;--color-danger:#ff4d6a;--color-text:#e8e8f0;--color-text-secondary:#9090a8;--color-text-dim:#5a5a70}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.-top-\[30\%\]{top:-30%}.-top-full{top:-100%}.right-0{right:calc(var(--spacing) * 0)}.-bottom-\[20\%\]{bottom:-20%}.left-0{left:calc(var(--spacing) * 0)}.left-1\/2{left:50%}.left-4{left:calc(var(--spacing) * 4)}.z-10{z-index:10}.z-50{z-index:50}.z-\[1000\]{z-index:1000}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-10{margin-bottom:calc(var(--spacing) * 10)}.mb-\[clamp\(2\.5rem\,5vw\,4rem\)\]{margin-bottom:clamp(2.5rem,5vw,4rem)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-6{height:calc(var(--spacing) * 6)}.h-9{height:calc(var(--spacing) * 9)}.h-12{height:calc(var(--spacing) * 12)}.h-\[60px\]{height:60px}.h-\[70px\]{height:70px}.h-\[400px\]{height:400px}.h-\[600px\]{height:600px}.max-h-\[80vh\]{max-height:80vh}.min-h-\[48px\]{min-height:48px}.min-h-\[200px\]{min-height:200px}.min-h-\[calc\(100vh-70px\)\]{min-height:calc(100vh - 70px)}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-1\/2{width:50%}.w-2{width:calc(var(--spacing) * 2)}.w-3\/4{width:75%}.w-4\/5{width:80%}.w-\[55\%\]{width:55%}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-full{width:100%}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[460px\]{max-width:460px}.max-w-\[480px\]{max-width:480px}.max-w-\[540px\]{max-width:540px}.max-w-\[560px\]{max-width:560px}.max-w-\[640px\]{max-width:640px}.max-w-\[720px\]{max-width:720px}.max-w-lg{max-width:var(--container-lg)}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[landingFadeInUp_0\.8s_ease_0\.2s_both\]{animation:.8s .2s both landingFadeInUp}.animate-\[landingFadeInUp_0\.8s_ease_both\]{animation:.8s both landingFadeInUp}.animate-\[landingFloat_6s_ease-in-out_infinite\]{animation:6s ease-in-out infinite landingFloat}.animate-\[landingGlow_6s_ease-in-out_infinite\]{animation:6s ease-in-out infinite landingGlow}.animate-\[landingGlow_8s_ease-in-out_infinite\]{animation:8s ease-in-out infinite landingGlow}.animate-\[landingPulse_2s_ease-in-out_infinite\]{animation:2s ease-in-out infinite landingPulse}.animate-\[landingShimmer_3s_ease-in-out_infinite\]{animation:3s ease-in-out infinite landingShimmer}.animate-pulse{animation:var(--animate-pulse)}.cursor-pointer{cursor:pointer}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-\[120px_1fr\]{grid-template-columns:120px 1fr}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-10{gap:calc(var(--spacing) * 10)}.gap-\[clamp\(2rem\,5vw\,4rem\)\]{gap:clamp(2rem,5vw,4rem)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-y{border-block-style:var(--tw-border-style);border-block-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-border{border-color:var(--color-border)}.border-primary{border-color:var(--color-primary)}.border-primary\/15{border-color:#0169fe26}@supports (color:color-mix(in lab,red,red)){.border-primary\/15{border-color:color-mix(in oklab,var(--color-primary) 15%,transparent)}}.border-white\/5{border-color:#ffffff0d}@supports (color:color-mix(in lab,red,red)){.border-white\/5{border-color:color-mix(in oklab,var(--color-white) 5%,transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.bg-accent{background-color:var(--color-accent)}.bg-accent\/50{background-color:#22d3b580}@supports (color:color-mix(in lab,red,red)){.bg-accent\/50{background-color:color-mix(in oklab,var(--color-accent) 50%,transparent)}}.bg-bg{background-color:var(--color-bg)}.bg-bg-alt{background-color:var(--color-bg-alt)}.bg-danger\/50{background-color:#ff4d6a80}@supports (color:color-mix(in lab,red,red)){.bg-danger\/50{background-color:color-mix(in oklab,var(--color-danger) 50%,transparent)}}.bg-primary{background-color:var(--color-primary)}.bg-primary\/8{background-color:#0169fe14}@supports (color:color-mix(in lab,red,red)){.bg-primary\/8{background-color:color-mix(in oklab,var(--color-primary) 8%,transparent)}}.bg-surface{background-color:var(--color-surface)}.bg-transparent{background-color:#0000}.bg-warm\/50{background-color:#ff8c4280}@supports (color:color-mix(in lab,red,red)){.bg-warm\/50{background-color:color-mix(in oklab,var(--color-warm) 50%,transparent)}}.bg-white\/2{background-color:#ffffff05}@supports (color:color-mix(in lab,red,red)){.bg-white\/2{background-color:color-mix(in oklab,var(--color-white) 2%,transparent)}}.bg-white\/6{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.bg-white\/6{background-color:color-mix(in oklab,var(--color-white) 6%,transparent)}}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-gradient-to-r{--tw-gradient-position:to right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.bg-\[radial-gradient\(ellipse_at_center\,rgba\(34\,211\,181\,0\.1\)_0\%\,rgba\(124\,106\,255\,0\.06\)_50\%\,transparent_70\%\)\]{background-image:radial-gradient(#22d3b51a,#7c6aff0f 50%,#0000 70%)}.bg-\[radial-gradient\(ellipse_at_center\,rgba\(124\,106\,255\,0\.12\)_0\%\,rgba\(34\,211\,181\,0\.05\)_40\%\,transparent_70\%\)\]{background-image:radial-gradient(#7c6aff1f,#22d3b50d 40%,#0000 70%)}.from-accent{--tw-gradient-from:var(--color-accent);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary{--tw-gradient-from:var(--color-primary);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.from-primary\/5{--tw-gradient-from:#0169fe0d}@supports (color:color-mix(in lab,red,red)){.from-primary\/5{--tw-gradient-from:color-mix(in oklab, var(--color-primary) 5%, transparent)}}.from-primary\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.via-primary\/12{--tw-gradient-via:#0169fe1f}@supports (color:color-mix(in lab,red,red)){.via-primary\/12{--tw-gradient-via:color-mix(in oklab, var(--color-primary) 12%, transparent)}}.via-primary\/12{--tw-gradient-via-stops:var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-via) var(--tw-gradient-via-position), var(--tw-gradient-to) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-via-stops)}.to-\[\#1ab89d\]{--tw-gradient-to:#1ab89d;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#6ee7c7\]{--tw-gradient-to:#6ee7c7;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-\[\#6553e0\]{--tw-gradient-to:#6553e0;--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-accent{--tw-gradient-to:var(--color-accent);--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.to-primary\/5{--tw-gradient-to:#0169fe0d}@supports (color:color-mix(in lab,red,red)){.to-primary\/5{--tw-gradient-to:color-mix(in oklab, var(--color-primary) 5%, transparent)}}.to-primary\/5{--tw-gradient-stops:var(--tw-gradient-via-stops,var(--tw-gradient-position), var(--tw-gradient-from) var(--tw-gradient-from-position), var(--tw-gradient-to) var(--tw-gradient-to-position))}.bg-\[length\:200\%_100\%\]{background-size:200% 100%}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-1{padding:calc(var(--spacing) * 1)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-7{padding:calc(var(--spacing) * 7)}.p-12{padding:calc(var(--spacing) * 12)}.p-16{padding:calc(var(--spacing) * 16)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-7{padding-inline:calc(var(--spacing) * 7)}.px-8{padding-inline:calc(var(--spacing) * 8)}.px-9{padding-inline:calc(var(--spacing) * 9)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-20{padding-block:calc(var(--spacing) * 20)}.py-\[clamp\(4rem\,8vh\,8rem\)\]{padding-block:clamp(4rem,8vh,8rem)}.py-\[clamp\(4rem\,10vh\,8rem\)\]{padding-block:clamp(4rem,10vh,8rem)}.py-\[clamp\(5rem\,10vh\,9rem\)\]{padding-block:clamp(5rem,10vh,9rem)}.pl-4{padding-left:calc(var(--spacing) * 4)}.text-center{text-align:center}.font-body{font-family:var(--font-body)}.font-display{font-family:var(--font-display)}.font-logo{font-family:var(--font-logo)}.font-mono{font-family:var(--font-mono)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-5xl{font-size:var(--text-5xl);line-height:var(--tw-leading,var(--text-5xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-\[0\.6rem\]{font-size:.6rem}.text-\[0\.9rem\]{font-size:.9rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.68rem\]{font-size:.68rem}.text-\[0\.72rem\]{font-size:.72rem}.text-\[0\.82rem\]{font-size:.82rem}.text-\[0\.85rem\]{font-size:.85rem}.text-\[0\.95rem\]{font-size:.95rem}.text-\[1\.05rem\]{font-size:1.05rem}.text-\[1\.75rem\]{font-size:1.75rem}.text-\[30px\]{font-size:30px}.text-\[45px\]{font-size:45px}.text-\[50px\]{font-size:50px}.text-\[clamp\(0\.9rem\,1\.5vw\,1\.05rem\)\]{font-size:clamp(.9rem,1.5vw,1.05rem)}.text-\[clamp\(0\.85rem\,1\.5vw\,1rem\)\]{font-size:clamp(.85rem,1.5vw,1rem)}.text-\[clamp\(0\.95rem\,1\.8vw\,1\.15rem\)\]{font-size:clamp(.95rem,1.8vw,1.15rem)}.text-\[clamp\(1\.5rem\,3\.5vw\,2\.2rem\)\]{font-size:clamp(1.5rem,3.5vw,2.2rem)}.text-\[clamp\(1\.8rem\,4vw\,2\.8rem\)\]{font-size:clamp(1.8rem,4vw,2.8rem)}.text-\[clamp\(2\.2rem\,5\.5vw\,4rem\)\]{font-size:clamp(2.2rem,5.5vw,4rem)}.leading-\[1\.1\]{--tw-leading:1.1;line-height:1.1}.leading-\[1\.15\]{--tw-leading:1.15;line-height:1.15}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.whitespace-nowrap{white-space:nowrap}.text-bg{color:var(--color-bg)}.text-primary{color:var(--color-primary)}.text-text{color:var(--color-text)}.text-text-dim{color:var(--color-text-dim)}.text-text-secondary{color:var(--color-text-secondary)}.text-transparent{color:#0000}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.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,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_8px_rgba\(34\,211\,181\,0\.5\)\]{--tw-shadow:0 0 8px var(--tw-shadow-color,#22d3b580);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_16px_64px_rgba\(0\,0\,0\,0\.5\)\,0_0_0_1px_rgba\(255\,255\,255\,0\.03\)\]{--tw-shadow:0 16px 64px var(--tw-shadow-color,#00000080), 0 0 0 1px var(--tw-shadow-color,#ffffff08);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-\[cubic-bezier\(0\.16\,1\,0\.3\,1\)\]{--tw-ease:cubic-bezier(.16,1,.3,1);transition-timing-function:cubic-bezier(.16,1,.3,1)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}@media(hover:hover){.hover\:-translate-y-0\.5:hover{--tw-translate-y:calc(var(--spacing) * -.5);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:-translate-y-1:hover{--tw-translate-y:calc(var(--spacing) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.hover\:border-border-hover:hover{border-color:var(--color-border-hover)}.hover\:text-text:hover{color:var(--color-text)}.hover\:shadow-\[0_8px_32px_rgba\(0\,0\,0\,0\.3\)\]:hover{--tw-shadow:0 8px 32px var(--tw-shadow-color,#0000004d);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_8px_32px_rgba\(34\,211\,181\,0\.35\)\]:hover{--tw-shadow:0 8px 32px var(--tw-shadow-color,#22d3b559);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.hover\:shadow-\[0_8px_32px_rgba\(124\,106\,255\,0\.4\)\]:hover{--tw-shadow:0 8px 32px var(--tw-shadow-color,#7c6aff66);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}.focus\:top-2:focus{top:calc(var(--spacing) * 2)}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.active\:translate-y-0:active{--tw-translate-y:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}@media(min-width:40rem){.sm\:flex{display:flex}.sm\:w-auto{width:auto}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}}@media(min-width:48rem){.md\:inline{display:inline}.md\:min-h-\[260px\]{min-height:260px}}@media(min-width:64rem){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}}::view-transition{pointer-events:none}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}@font-face{font-family:Rawest;src:url(/fonts/rawest-regular-webfont.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Rawest;src:url(/fonts/rawest-semibold-webfont.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Rawest;src:url(/fonts/rawest-medium-webfont.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Rawest;src:url(/fonts/rawest-light-webfont.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#06060a;--bg-alt:#0c0c14;--surface:#111119;--surface-hover:#16161f;--border:#ffffff0f;--border-hover:#ffffff1a;--primary:#0169fe;--primary-soft:#0169fe1a;--primary-glow:#0169fe26;--accent:#22d3b5;--accent-soft:#22d3b514;--warm:#ff8c42;--danger:#ff4d6a;--text:#e8e8f0;--text-secondary:#9090a8;--text-dim:#5a5a70;--font-logo:"Rawest", "Syne", sans-serif;--font-display:"Syne", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--radius:12px;--radius-sm:8px;--radius-lg:16px;--ease:cubic-bezier(.16, 1, .3, 1);--duration:.25s;--navbar-h:52px;--statusbar-h:28px}html{scroll-behavior:smooth;background-color:#1c1c1c}body{font-family:var(--font-body);background-color:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;line-height:1.6;overflow:hidden}a{color:inherit;text-decoration:none}.skeleton{pointer-events:none;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1a,#ffffff0a 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s ease-in-out infinite skeleton-shimmer;color:#0000!important}.skeleton-circle{pointer-events:none;background:linear-gradient(90deg,#ffffff0a 25%,#ffffff1a,#ffffff0a 75%) 0 0/200% 100%;border-radius:50%;animation:1.5s ease-in-out infinite skeleton-shimmer;color:#0000!important}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media(prefers-color-scheme:light){.skeleton,.skeleton-circle{background:linear-gradient(90deg,#0000000f 25%,#0000001f,#0000000f 75%) 0 0/200% 100%}}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input,textarea{color:inherit;background:0 0;border:none;outline:none;font-family:inherit}.grain{pointer-events:none;z-index:9999;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:180px;position:fixed;inset:0}::selection{color:#fff;background:#7c6aff4d}::view-transition-group(*){cursor:inherit!important;pointer-events:none!important}::view-transition-old(*){cursor:inherit!important;pointer-events:none!important}::view-transition-new(*){cursor:inherit!important;pointer-events:none!important}::view-transition-image-pair(*){cursor:inherit!important;pointer-events:none!important}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#7c6aff33;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#7c6aff59}.app-shell{grid-template-rows:var(--navbar-h) 1fr var(--statusbar-h);width:100vw;height:100vh;display:grid}.app-main{grid-template-columns:1fr 380px 220px;display:grid;overflow:hidden}.app-main--scene{grid-template-columns:220px 1fr 380px}.app-main--scene>.sp{border-right:1px solid var(--border);border-left:none;order:1}.app-main--scene>.scene-canvas{order:2}.app-main--scene>.chat{border-left:1px solid var(--border);order:3}.navbar{background:var(--bg-alt);border-bottom:1px solid var(--border);z-index:50;align-items:center;gap:1rem;padding:0 1rem;display:flex}.navbar__logo{font-family:var(--font-logo);letter-spacing:-.03em;color:var(--text);align-items:center;gap:.5rem;font-size:.95rem;font-weight:600;display:flex}.navbar__logo-icon{background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;border-radius:7px;place-items:center;width:28px;height:28px;font-size:.75rem;font-weight:900;display:grid}.navbar__spacer{flex:1}.route-bar{flex:0 360px;min-width:180px;position:relative}.route-bar__url{border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text-secondary);transition:border-color var(--duration) var(--ease);cursor:default;align-items:center;gap:.4rem;padding:.3rem .5rem .3rem .6rem;font-size:.68rem;display:flex}.route-bar__url:hover{border-color:var(--border-hover)}.route-bar__globe{color:var(--text-dim);flex-shrink:0}.route-bar__path{text-overflow:ellipsis;white-space:nowrap;color:var(--text);letter-spacing:-.01em;flex:1;overflow:hidden}.route-bar__toggle{width:20px;height:20px;color:var(--text-dim);border-radius:4px;flex-shrink:0;place-items:center;transition:all .15s;display:grid}.route-bar__toggle:hover{background:var(--surface-hover);color:var(--text)}.route-bar__toggle--open{color:var(--primary);transform:rotate(180deg)}.route-bar__refresh{cursor:pointer;color:var(--text-secondary);border-radius:3px;flex-shrink:0;padding:2px;transition:color .15s,transform .3s}.route-bar__refresh:hover{color:var(--text)}.route-bar__refresh:active{transform:rotate(360deg)}.route-bar__mobile-zone{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;padding:4px 6px;display:flex}.route-bar__mobile-zone:hover{background:#ffffff0f}.route-bar__mobile{cursor:pointer;color:#fff;border-radius:3px;flex-shrink:0;padding:2px;transition:color .15s}.route-bar__mobile:hover{color:#ffffffb3}.route-bar__mobile--active{border-radius:50%;box-shadow:0 0 0 2px #00b4d8,0 0 8px #00b4d866;color:#fff!important}.route-bar__dropdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);z-index:100;max-height:240px;animation:routeDropIn .15s var(--ease);padding:.25rem;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 32px #0006}@keyframes routeDropIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.route-bar__item{width:100%;font-family:var(--font-mono);color:var(--text-secondary);text-align:left;border-radius:5px;align-items:center;gap:.4rem;padding:.35rem .5rem;font-size:.68rem;transition:all .1s;display:flex}.route-bar__item:hover{background:var(--surface-hover);color:var(--text)}.route-bar__item--active{background:var(--primary-soft);color:var(--primary)}.route-bar__item-icon{flex-shrink:0;font-size:.72rem}.route-bar__empty{color:var(--text-dim);text-align:center;padding:.5rem;font-size:.65rem}.navbar__btn{border-radius:var(--radius-sm);letter-spacing:.01em;transition:all var(--duration) var(--ease);align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.7rem;font-weight:600;display:flex}.navbar__btn--outline{background:var(--surface);border:1px solid var(--border);color:var(--text-secondary)}.navbar__btn--outline:hover{background:var(--surface-hover);border-color:var(--border-hover);color:var(--text)}.navbar__btn--accent{background:var(--accent-soft);color:var(--accent);border:1px solid #22d3b526}.navbar__btn--accent:hover{background:#22d3b51f;border-color:#22d3b540}.navbar__btn-dot{background:var(--accent);border-radius:50%;width:6px;height:6px}.token-counter{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:default;background:#ffffff0a;border:1px solid #ffffff14;border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .6rem .25rem .3rem;transition:background .2s,border-color .2s;animation:.4s tokenFadeIn;display:flex}.token-counter:hover{background:#ffffff14;border-color:#ffffff26}@keyframes tokenFadeIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.token-counter__ring{flex-shrink:0;width:28px;height:28px;position:relative}.token-counter__svg{width:100%;height:100%;display:block}.token-counter__pct{color:#ffffffd9;letter-spacing:-.02em;justify-content:center;align-items:center;font-size:.5rem;font-weight:700;display:flex;position:absolute;inset:0}.token-counter__labels{flex-direction:column;gap:0;line-height:1.1;display:flex}.token-counter__in,.token-counter__out{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.55rem;font-weight:500}.token-counter__in{color:#34d399}.token-counter__out{color:#a78bfa}.statusbar{background:var(--bg-alt);border-top:1px solid var(--border);color:var(--text-dim);align-items:center;gap:1rem;padding:0 1rem;font-size:.6rem;display:flex}.statusbar__dot{background:var(--accent);border-radius:50%;width:6px;height:6px;box-shadow:0 0 6px #22d3b566}.statusbar__sep{background:var(--border);width:1px;height:12px}@media(max-width:768px){.app-main{grid-template-columns:1fr}.vfs{display:none}}.mode-toggle{background:#ffffff0d;border-radius:8px;gap:2px;padding:2px;display:flex}.mode-toggle__btn{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:.7rem;font-weight:500;transition:all .2s;display:flex}.mode-toggle__btn:hover{color:var(--text);background:#ffffff0f}.mode-toggle__btn--active{color:#a5b4fc;background:#818cf833;box-shadow:0 0 8px #818cf826}.mode-toggle__btn--active svg{filter:drop-shadow(0 0 3px #818cf866)}.workshop-tabs{background:#ffffff08;border-radius:6px;gap:1px;margin-left:4px;padding:2px;display:flex}.workshop-tabs__btn{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:4px;padding:3px 10px;font-size:.6rem;font-weight:500;transition:all .2s}.workshop-tabs__btn:hover{color:var(--text);background:#ffffff0d}.workshop-tabs__btn--active{color:#a5b4fc;background:#818cf826}.ds-canvas{border-right:1px solid var(--border);background:#f0f0f5;flex-direction:column;animation:.25s fadeIn;display:flex;position:relative;overflow:hidden}.ds-canvas__status{background:#00000008;border-bottom:1px solid #00000014;align-items:center;gap:8px;min-height:32px;padding:6px 12px;display:flex}.ds-canvas__badge{color:#6366f1;letter-spacing:.3px;background:#6366f11a;border-radius:4px;padding:2px 8px;font-size:.6rem;font-weight:600}.ds-canvas__name{color:#888;font-size:.65rem;font-family:var(--font-mono)}.ds-canvas__loader{font-size:.7rem;animation:1s linear infinite spin}.ds-canvas__frame{background:#f0f0f5;border:none;flex:1;width:100%}.workshop3d{border-right:1px solid var(--border);background:#0a0a0f;flex-direction:column;animation:.25s fadeIn;display:flex;position:relative;overflow:hidden}.workshop3d__status{border-bottom:1px solid var(--border);background:#ffffff08;align-items:center;gap:8px;min-height:32px;padding:6px 12px;display:flex}.workshop3d__badge{color:#a5b4fc;letter-spacing:.3px;background:#818cf81f;border-radius:4px;padding:2px 8px;font-size:.65rem;font-weight:600}.workshop3d__file{color:var(--text-dim);font-size:.65rem;font-family:var(--font-mono)}.workshop3d__loader{font-size:.7rem;animation:1.5s ease-in-out infinite pulse}.workshop3d__error{cursor:help;font-size:.7rem}.workshop3d__canvas{color-scheme:dark;background:#0a0a0f;border:none;flex:1;width:100%}@keyframes pulse{50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.w3d-panel{background:var(--bg);border-left:1px solid var(--border);scrollbar-width:thin;scrollbar-color:#ffffff14 transparent;flex-direction:column;animation:.25s fadeIn;display:flex;overflow-y:auto}.w3d-panel__section{border-bottom:1px solid var(--border)}.w3d-panel__header{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;padding:8px 12px;font-size:.65rem;font-weight:600;display:flex}.w3d-panel__header--clickable{cursor:pointer}.w3d-panel__header--clickable:hover{color:var(--text)}.w3d-panel__toggle{margin-left:auto;transition:transform .2s}.w3d-panel__toggle--open{transform:rotate(180deg)}.w3d-panel__save-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;margin-left:auto;padding:2px 4px;font-size:.7rem;transition:background .15s}.w3d-panel__save-btn:hover{background:#ffffff14}.w3d-panel__list{padding:0 8px 8px}.w3d-panel__empty{color:#ffffff40;text-align:center;padding:8px 4px;font-size:.6rem;line-height:1.5}.w3d-panel__item{color:var(--text);cursor:default;border-radius:6px;align-items:center;gap:6px;padding:5px 8px;font-size:.65rem;transition:background .15s;display:flex}.w3d-panel__item:hover{background:#ffffff0d}.w3d-panel__item--active{background:#8b5cf626;border-left:2px solid #8b5cf6}.w3d-panel__item-icon{font-size:.7rem}.w3d-panel__item-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:var(--font-mono);flex:1;overflow:hidden}.w3d-panel__item-delete{color:#fff3;cursor:pointer;background:0 0;border:none;border-radius:3px;padding:0 4px;font-size:.8rem;line-height:1}.w3d-panel__item-delete:hover{color:#ff6b6b;background:#ff6b6b1a}.w3d-panel__chips{flex-wrap:wrap;gap:4px;padding:0 8px 8px;display:flex}.w3d-panel__chip{color:var(--text-dim);cursor:pointer;white-space:nowrap;background:#ffffff08;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-size:.6rem;transition:all .2s;display:flex}.w3d-panel__chip:hover{color:#a5b4fc;background:#818cf814;border-color:#818cf84d;box-shadow:0 0 8px #818cf81a}.w3d-panel__tips{padding:0 12px 8px}.w3d-panel__tip{color:#ffffff59;gap:6px;padding:3px 0;font-size:.6rem;line-height:1.5;display:flex}.w3d-panel__tip-bullet{color:#818cf866;flex-shrink:0}.ds-panel{border-bottom:1px solid var(--border)}.ds-panel__loading{color:var(--text-dim);text-align:center;padding:12px;font-size:.6rem}.ds-panel__header{color:var(--text-dim);text-transform:uppercase;letter-spacing:.5px;cursor:pointer;align-items:center;gap:6px;padding:8px 12px;font-size:.65rem;font-weight:600;transition:color .15s;display:flex}.ds-panel__header:hover{color:var(--text)}.ds-panel__icon{font-size:.75rem}.ds-panel__title{flex:1}.ds-panel__badge{color:#34d399;font-size:.5rem}.ds-panel__toggle{transition:transform .2s}.ds-panel__toggle--open{transform:rotate(180deg)}.ds-panel__body{padding:0 8px 8px;animation:.2s fadeIn}.ds-panel__section{margin-bottom:10px}.ds-panel__section-title{color:var(--text-dim);text-transform:uppercase;letter-spacing:.3px;padding:4px 4px 6px;font-size:.6rem;font-weight:600}.ds-panel__color-grid{grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:4px;display:grid}.ds-panel__color-item{cursor:pointer;border-radius:5px;align-items:center;gap:5px;padding:3px 4px;transition:background .15s;display:flex}.ds-panel__color-item:hover{background:#ffffff0d}.ds-panel__color-input{cursor:pointer;appearance:none;background:0 0;border:1px solid #ffffff1a;border-radius:4px;width:18px;height:18px;padding:0}.ds-panel__color-input::-webkit-color-swatch-wrapper{padding:0}.ds-panel__color-input::-webkit-color-swatch{border:none;border-radius:3px}.ds-panel__color-label{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:.55rem;overflow:hidden}.ds-panel__font-row{align-items:center;gap:8px;padding:3px 4px;display:flex}.ds-panel__font-label{color:var(--text-dim);flex-shrink:0;width:50px;font-size:.55rem;font-weight:600}.ds-panel__font-input{color:var(--text);font-size:.6rem;font-family:var(--font-mono);background:#ffffff08;border:1px solid #ffffff14;border-radius:4px;flex:1;padding:3px 6px;transition:border-color .15s}.ds-panel__font-input:focus{border-color:var(--primary);outline:none}.ds-panel__spacing-list{flex-direction:column;gap:3px;padding:0 4px;display:flex}.ds-panel__spacing-item{align-items:center;gap:6px;display:flex}.ds-panel__spacing-key{color:var(--text-dim);flex-shrink:0;width:24px;font-size:.55rem;font-weight:600}.ds-panel__spacing-bar{background:#818cf84d;border-radius:3px;height:6px;transition:width .3s}.ds-panel__spacing-val{color:var(--text-dim);font-size:.5rem;font-family:var(--font-mono);flex-shrink:0}.ds-panel__variants{flex-direction:column;gap:6px;padding:0 4px;display:flex}.ds-panel__variant-group{flex-direction:column;gap:3px;display:flex}.ds-panel__variant-component{color:var(--text-secondary);text-transform:capitalize;font-size:.55rem;font-weight:700}.ds-panel__variant-list{flex-wrap:wrap;gap:3px;display:flex}.ds-panel__variant-chip{color:var(--text-dim);background:#ffffff08;border:1px solid #ffffff14;border-radius:4px;align-items:center;gap:3px;padding:2px 6px;font-size:.55rem;display:flex}.ds-panel__variant-name{font-family:var(--font-mono)}.ds-panel__variant-motion{font-size:.5rem}.ds-panel__import-row{gap:4px;padding:2px 4px;display:flex}.ds-panel__import-input{color:var(--text);font-size:.58rem;font-family:var(--font-mono);background:#ffffff08;border:1px solid #ffffff14;border-radius:5px;flex:1;min-width:0;padding:4px 8px;transition:border-color .15s}.ds-panel__import-input:focus{border-color:var(--primary);outline:none}.ds-panel__import-input:disabled{opacity:.5}.ds-panel__import-btn{color:#a5b4fc;cursor:pointer;background:#818cf814;border:1px solid #818cf833;border-radius:5px;flex-shrink:0;padding:4px 8px;font-size:.65rem;transition:all .15s}.ds-panel__import-btn:hover:not(:disabled){background:#818cf826;border-color:#818cf866}.ds-panel__import-btn:disabled{opacity:.4;cursor:not-allowed}.ds-panel__import-phase{color:#a5b4fc;padding:3px 4px;font-size:.55rem;animation:1.5s ease-in-out infinite pulse}.ds-panel__import-error{color:var(--danger,#ff4d6a);word-break:break-word;padding:3px 4px;font-size:.55rem}.ds-panel__import-success{color:#34d399;padding:3px 4px;font-size:.55rem;animation:.3s fadeIn}.chat__ds-import{background:var(--surface,#1a1a2e);border:1px solid #818cf833;border-radius:12px;max-width:420px;animation:.3s fadeIn;overflow:hidden}.chat__ds-import-header{background:#818cf80f;border-bottom:1px solid #818cf81a;align-items:center;gap:6px;padding:8px 12px;display:flex}.chat__ds-import-icon{font-size:.8rem}.chat__ds-import-title{color:#a5b4fc;letter-spacing:.3px;font-size:.68rem;font-weight:700}.chat__ds-import-url{color:var(--text-dim,#94a3b8);font-size:.58rem;font-family:var(--font-mono);text-overflow:ellipsis;white-space:nowrap;padding:4px 12px;overflow:hidden}.chat__ds-import-frame-wrap{border-top:1px solid #ffffff0a;border-bottom:1px solid #ffffff0a;height:220px;position:relative;overflow:hidden}.chat__ds-import-frame{transform-origin:0 0;pointer-events:none;opacity:0;background:#fff;border:none;width:200%;height:440px;transition:opacity 1s;transform:scale(.5)}.chat__ds-import-frame--loaded{opacity:1}.chat__ds-import-skeleton{background:#ffffff05;flex-direction:column;gap:12px;padding:24px 20px;display:flex;position:absolute;inset:0}.chat__ds-import-skeleton-bar{background:#818cf814;border-radius:5px;height:10px;animation:1.5s ease-in-out infinite dsSkeletonPulse}.chat__ds-import-skeleton-bar:nth-child(2){animation-delay:.15s}.chat__ds-import-skeleton-bar:nth-child(3){animation-delay:.3s}.chat__ds-import-skeleton-bar:nth-child(4){animation-delay:.45s}@keyframes dsSkeletonPulse{0%,to{opacity:.3}50%{opacity:.8}}.chat__ds-import-overlay{pointer-events:none;position:absolute;inset:0;overflow:hidden}.chat__ds-import-overlay:before{content:"";background:linear-gradient(90deg,#0000,#818cf899,#6366f1e6,#818cf899,#0000);height:3px;animation:2.5s ease-in-out infinite dsScanLine;position:absolute;left:0;right:0;box-shadow:0 0 15px #818cf866,0 0 30px #6366f133}.chat__ds-import-overlay:after{content:"";border:1px solid #818cf826;border-radius:0;animation:2.5s ease-in-out infinite dsScanGlow;position:absolute;inset:0}@keyframes dsScanLine{0%{top:-3px}to{top:100%}}@keyframes dsScanGlow{0%,to{box-shadow:inset 0 0 20px #818cf80d}50%{box-shadow:inset 0 0 40px #818cf81a}}.chat__ds-import-progress{color:#a5b4fc;padding:6px 12px;font-size:.6rem;animation:1.5s ease-in-out infinite pulse}.chat__ds-import-progress--done{color:#34d399;animation:none}.ds-panel__reset{width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #ffffff0f;border-radius:5px;margin-top:4px;padding:5px;font-size:.55rem;transition:all .15s;display:block}.ds-panel__reset:hover{color:var(--danger);background:#ff4d6a14;border-color:#ff4d6a26}.canvas{background:var(--bg);border-right:1px solid var(--border);border-radius:12px;position:relative;overflow:hidden}.canvas__frame{background:#fff;border:none;border-radius:12px;width:100%;height:100%;transition:width .4s cubic-bezier(.22,1,.36,1),height .4s cubic-bezier(.22,1,.36,1),margin .4s cubic-bezier(.22,1,.36,1)}.canvas__frame--locked{pointer-events:none}.canvas__lock-overlay{z-index:5;cursor:not-allowed;background:linear-gradient(270deg,#f472b6b3,#a855f7a6,#6366f199,#38bdf880,#a855f7a6,#f472b6b3) 0 0/600% 100%;border-radius:12px;padding:3px;animation:20s linear infinite canvasFlowGradient,6s ease-in-out infinite canvasBreatheBorder;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.canvas__lock-overlay:after{content:"";pointer-events:none;border-radius:12px;animation:6s ease-in-out infinite canvasInnerGlow;position:absolute;inset:0;box-shadow:inset 0 0 40px #a855f70f,inset 0 0 80px #6366f10a,inset 0 0 120px #f472b608}@keyframes canvasFlowGradient{0%{background-position:0%}to{background-position:600%}}@keyframes canvasBreatheBorder{0%,to{padding:2px}50%{padding:4px}}@keyframes canvasInnerGlow{0%,to{box-shadow:inset 0 0 30px #a855f70a,inset 0 0 60px #6366f108,inset 0 0 100px #f472b605}50%{box-shadow:inset 0 0 50px #a855f714,inset 0 0 100px #6366f10f,inset 0 0 160px #f472b60a}}.canvas__agent-overlay{z-index:5;pointer-events:none;background:linear-gradient(270deg,#5ee20247,#45a89038,#0180da40,#0169fe4d,#0f9c7938,#5ee20247) 0 0/600% 100%;border-radius:12px;padding:2px;animation:1.2s ease-out forwards agentFadeIn,80s linear infinite agentFlowGradient,12s ease-in-out infinite agentBreatheBorder;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.canvas__agent-overlay:after{content:"";pointer-events:none;opacity:0;border-radius:12px;animation:1.8s ease-out forwards agentFadeIn,14s ease-in-out infinite agentMantelBreath;position:absolute;inset:0;box-shadow:inset 0 12px 30px -8px #5ee20214,inset -12px 0 30px -8px #0169fe17,inset 0 -12px 30px -8px #0f9c7914,inset 12px 0 30px -8px #0180da12,inset 0 0 60px #0169fe08,inset 0 0 100px #5ee20205}.canvas__agent-blocker{z-index:4;cursor:wait;opacity:0;border-radius:12px;animation:.8s ease-out forwards agentFadeIn;position:absolute;inset:0}.canvas__agent-blocker--exiting{cursor:default;animation:.8s ease-in forwards agentFadeOut}.canvas__agent-overlay--exiting{animation:.8s ease-in forwards agentFadeOut}.canvas__agent-overlay--exiting:after{animation:.6s ease-in forwards agentFadeOut}.canvas__lock-overlay--exiting{animation:.8s ease-in forwards agentFadeOut}@keyframes agentFadeIn{0%{opacity:0}to{opacity:1}}@keyframes agentFadeOut{0%{opacity:1}to{opacity:0}}@keyframes agentFlowGradient{0%{background-position:0%}to{background-position:600%}}@keyframes agentBreatheBorder{0%,to{padding:2px}50%{padding:3px}}@keyframes agentMantelBreath{0%,to{box-shadow:inset 0 12px 30px -8px #5ee2020f,inset -12px 0 30px -8px #0169fe12,inset 0 -12px 30px -8px #0f9c790f,inset 12px 0 30px -8px #0180da0d,inset 0 0 60px #0169fe05,inset 0 0 100px #5ee20203}25%{box-shadow:inset 0 18px 40px -6px #5ee2021a,inset -8px 0 25px -8px #0169fe0f,inset 0 -10px 25px -8px #0f9c790d,inset 16px 0 40px -6px #0180da17,inset 0 0 80px #0169fe08,inset 0 0 120px #5ee20205}50%{box-shadow:inset 0 10px 25px -8px #5ee2020d,inset -16px 0 40px -6px #0169fe1a,inset 0 -18px 40px -6px #0f9c791a,inset 10px 0 25px -8px #0180da0f,inset 0 0 70px #0f9c7908,inset 0 0 110px #0169fe05}75%{box-shadow:inset 0 14px 35px -6px #5ee20214,inset -14px 0 35px -6px #0169fe14,inset 0 -8px 22px -8px #0f9c790d,inset 8px 0 22px -8px #0180da0d,inset 0 0 90px #5ee20208,inset 0 0 130px #0f9c7905}}.canvas__empty{justify-content:center;align-items:center;height:100%;display:flex;position:relative}.canvas__empty-grid{opacity:.03;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(4,1fr);gap:1px;display:grid;position:absolute;inset:0}.canvas__empty-cell{border:1px solid var(--text)}.canvas__empty-content{text-align:center;z-index:1;position:relative}.canvas__empty-icon{color:var(--text-dim);opacity:.3;margin-bottom:1rem}.canvas__empty-text{color:var(--text-dim);margin-bottom:.3rem;font-size:.8rem}.canvas__empty-hint{color:var(--primary);opacity:.5;font-size:.7rem}.canvas__loading{z-index:10;background:linear-gradient(30deg,#5ee202,#6ed818,#7ece2e,#8dc844,#69b86a,#45a890,#2098b6,#0180da 56%,#0169fe,#0878d4,#0f87aa 74%,#0f9c79,#14b25e 90%,#1cd04f) 0 0/200% 200%;border-radius:16px;animation:20s ease-in-out infinite alternate canvasLoadGradient;position:absolute;inset:0}@keyframes canvasLoadGradient{0%{background-position:0 0}to{background-position:100% 100%}}.canvas__loading-spinner{border:2.5px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.canvas__compiling{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--accent);z-index:10;background:#06060ad9;align-items:center;gap:.5rem;padding:.4rem .8rem;font-size:.62rem;display:flex;position:absolute;bottom:0;left:0;right:0}.canvas__error{color:var(--danger);z-index:10;background:#ff4d6a1a;border-top:1px solid #ff4d6a33;padding:.4rem .8rem;font-size:.62rem;position:absolute;bottom:0;left:0;right:0}.chat{background:var(--bg-alt);flex-direction:column;height:100%;display:flex;overflow:hidden}.chat__messages{scroll-behavior:smooth;flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:1rem;display:flex;overflow-y:auto}.chat__load-sentinel{flex-shrink:0;justify-content:center;align-items:center;padding:8px 0;display:flex}.chat__load-sentinel-text{color:var(--text-dim,#64748b);opacity:.6;letter-spacing:.3px;font-size:.58rem}.chat__skeletons{flex-direction:column;gap:10px;width:100%;padding:4px 0;display:flex}.chat__skeleton-msg{align-items:flex-start;gap:10px;animation:.3s ease-out both skeletonFadeIn;display:flex}.chat__skeleton-avatar{background:#ffffff0a;border-radius:7px;flex-shrink:0;width:26px;height:26px;animation:1.2s ease-in-out infinite skeletonPulse}.chat__skeleton-content{flex-direction:column;flex:1;gap:6px;padding-top:4px;display:flex}.chat__skeleton-bar{background:#ffffff0a;border-radius:5px;height:10px;animation:1.2s ease-in-out infinite skeletonPulse}.chat__skeleton-bar--short{height:8px;animation-delay:.15s}@keyframes skeletonPulse{0%,to{opacity:.3}50%{opacity:.7}}@keyframes skeletonFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chat__empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:1.5rem;display:flex}.chat__empty-icon{color:var(--primary);opacity:.6;margin-bottom:.8rem;font-size:2rem}.chat__empty-title{font-family:var(--font-display);color:var(--text);letter-spacing:-.03em;margin-bottom:.3rem;font-size:1.1rem;font-weight:800}.chat__empty-sub{color:var(--text-dim);max-width:260px;margin-bottom:1rem;font-size:.72rem}.chat__empty-cta{border-radius:var(--radius-sm);background:var(--primary);color:#fff;transition:all var(--duration) var(--ease);margin-bottom:1.2rem;padding:.5rem 1rem;font-size:.7rem;font-weight:700}.chat__empty-cta:hover{background:#6b5bef;transform:translateY(-1px)}.chat__suggestions{flex-direction:column;gap:.4rem;width:100%;display:flex}.chat__suggestion{border-radius:var(--radius-sm);color:var(--text-secondary);background:var(--surface);border:1px solid var(--border);text-align:left;transition:all var(--duration) var(--ease);padding:.55rem .8rem;font-size:.68rem;line-height:1.4}.chat__suggestion:hover{border-color:var(--primary-glow);color:var(--text);background:var(--surface-hover)}.chat__msg{animation:msgFade .3s var(--ease);flex-shrink:0;gap:.6rem;display:flex}@keyframes msgFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chat__msg-avatar{border-radius:7px;flex-shrink:0;place-items:center;width:26px;height:26px;margin-top:2px;font-size:.6rem;font-weight:800;display:grid}.chat__msg--user .chat__msg-avatar{background:var(--surface);border:1px solid var(--border);color:var(--text-dim)}.chat__msg--assistant .chat__msg-avatar{background:var(--primary-soft);color:var(--primary)}.chat__msg-content{color:var(--text);word-wrap:break-word;white-space:pre-wrap;flex:1;min-width:0;font-size:.75rem;line-height:1.65}.chat__msg--user .chat__msg-content{color:var(--text-secondary)}.chat__msg-attachments{align-items:center;margin-bottom:8px;padding-left:4px;display:flex}.chat__msg-att{flex-shrink:0;transition:transform .2s;position:relative}.chat__msg-att:hover{transform:translateY(-2px)}.chat__msg-att-img{object-fit:cover;width:44px;height:44px;box-shadow:0 0 0 2px var(--surface,#1a1a2e),0 2px 8px #0000004d;border-radius:50%;display:block}.chat__msg-att-doc{border:1px solid var(--border);width:44px;height:44px;color:var(--text-dim);box-shadow:0 0 0 2px var(--surface,#1a1a2e),0 2px 8px #0000004d;background:#ffffff0f;border-radius:50%;place-items:center;display:grid}.chat__element-badge{background:#6366f11f;border:1px solid #6366f140;border-radius:6px;flex-direction:column;gap:3px;margin-bottom:6px;padding:6px 10px;font-size:11px;line-height:1.4;display:flex}.chat__element-badge-file{color:#a78bfa;font-size:11px;font-weight:600}.chat__element-badge-path{flex-wrap:wrap;align-items:center;gap:2px;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:10.5px;display:flex}.chat__element-badge-sep{color:#fff3;margin:0 1px}.chat__element-badge-ancestor{color:#ffffff59}.chat__element-badge-target{color:#c4b5fd;font-weight:600}.chat__element-badge-tag{color:#a78bfa;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;font-weight:600}.chat__element-badge-class{color:#ffffff80;font-family:SF Mono,Fira Code,Consolas,monospace;font-size:11px}.chat__edit-session-group{background:#8b5cf60a;border:1px solid #8b5cf659;border-radius:12px;flex-shrink:0;margin:8px 0 16px;padding:0;animation:.3s ease-out editSessionFadeIn;box-shadow:0 0 20px -4px #8b5cf61f}.chat__edit-session-header{letter-spacing:.5px;text-transform:uppercase;color:#a78bfae6;background:#8b5cf614;border-bottom:1px solid #8b5cf626;border-radius:12px 12px 0 0;align-items:center;gap:6px;padding:8px 14px;font-size:11px;font-weight:600;display:flex}.chat__edit-session-icon{font-size:13px}.chat__edit-session-group .chat__msg{border-radius:8px;margin:4px 8px}.chat__edit-session-group .chat__agent{margin:2px 8px}@keyframes editSessionFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat__thinking{color:var(--text-dim);font-style:italic}.chat__cursor{background:var(--primary);vertical-align:text-bottom;width:2px;height:14px;margin-left:2px;animation:1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}.chat__code-block{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);margin:.5rem 0;overflow:hidden}.chat__code-lang{color:var(--accent);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--border);background:var(--surface);padding:.3rem .6rem;font-size:.55rem;font-weight:700}.chat__code-block pre{margin:0;padding:.6rem;overflow-x:auto}.chat__code-block code{font-family:var(--font-mono);color:var(--text-secondary);white-space:pre;font-size:.65rem;line-height:1.55}.chat__input-area{border-top:1px solid var(--border);padding:.75rem}.chat__ds-toolbar{align-items:center;gap:6px;padding-top:6px;display:flex}.chat__ds-url-btn{cursor:pointer;color:var(--text-dim,#94a3b8);background:#818cf814;border:1px solid #818cf826;border-radius:8px;align-items:center;gap:5px;padding:4px 10px;font-size:.65rem;transition:all .2s;display:flex}.chat__ds-url-btn span{letter-spacing:.2px;font-size:.6rem}.chat__ds-url-btn:hover:not(:disabled){color:#a5b4fc;background:#818cf81f;border-color:#818cf859}.chat__ds-url-btn:disabled{opacity:.3;cursor:not-allowed}.chat__ds-url-input-wrap{background:var(--surface);border:1px solid #818cf84d;border-radius:8px;flex:1;align-items:center;gap:4px;padding:2px 6px;animation:.2s fadeIn;display:flex}.chat__ds-url-input{color:var(--text);font-size:.65rem;font-family:var(--font-mono);background:0 0;border:none;outline:none;flex:1;min-width:0;padding:4px 0}.chat__ds-url-input::placeholder{color:var(--text-dim,#94a3b8);opacity:.5}.chat__ds-url-check{color:#a5b4fc;cursor:pointer;background:#818cf826;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:.75rem;font-weight:700;transition:all .15s;display:flex}.chat__ds-url-check:hover:not(:disabled){color:#fff;background:#818cf84d}.chat__ds-url-check:disabled{opacity:.3;cursor:not-allowed}.chat__ds-url-check--done{color:#22c55e;background:#22c55e33}.chat__ds-url-check--error{color:#ef4444;background:#ef444433}.chat__edit-toggle--active{animation:2s ease-in-out infinite editPulse;box-shadow:0 0 8px #6366f133;color:#a5b4fc!important;background:#6366f133!important;border-color:#6366f180!important}@keyframes editPulse{0%,to{box-shadow:0 0 6px #6366f126}50%{box-shadow:0 0 12px #6366f14d}}.canvas__frame--edit{outline-offset:-2px;outline:2px solid #6366f166}.edit-panel{background:var(--bg-alt);flex-direction:column;height:100%;display:flex;overflow-y:auto}.edit-panel__header{flex-shrink:0;align-items:center;gap:8px;padding:8px 14px;display:flex}.edit-panel__title{color:var(--text-dim);flex-shrink:0;align-items:center;display:flex}.edit-panel__close{width:24px;height:24px;color:var(--text-dim);cursor:pointer;border-radius:6px;place-items:center;transition:all .15s;display:grid}.edit-panel__close:hover{background:var(--surface-hover);color:var(--text)}.edit-panel__content{flex-direction:column;gap:.1rem;padding:.5rem .75rem;display:flex}.edit-panel__section{border-bottom:1px solid #ffffff0a;padding:.5rem 0}.edit-panel__section:last-child{border-bottom:none}.edit-panel__label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);margin-bottom:.3rem;font-size:.55rem;font-weight:700}.edit-panel__tag{align-items:center;gap:8px;display:flex}.edit-panel__tag-name{font-family:var(--font-mono);color:#a5b4fc;font-size:.72rem;font-weight:700}.edit-panel__display-name{color:var(--text-secondary);font-size:.65rem}.edit-panel__source{font-family:var(--font-mono);color:var(--accent);font-size:.65rem}.edit-panel__source-line{color:var(--text-dim)}.edit-panel__selector{font-family:var(--font-mono);color:#f0abfc;margin-bottom:4px;font-size:.65rem}.edit-panel__classes{flex-wrap:wrap;gap:4px;display:flex}.edit-panel__class{font-family:var(--font-mono);color:#a5b4fc;background:#6366f11a;border:1px solid #6366f126;border-radius:4px;padding:1px 6px;font-size:.6rem}.edit-panel__text{color:var(--text-secondary);font-size:.65rem;font-style:italic;line-height:1.5}.edit-panel__dims{font-family:var(--font-mono);color:var(--text);align-items:center;gap:8px;font-size:.65rem;display:flex}.edit-panel__dims-pos{color:var(--text-dim);font-size:.6rem}.edit-panel__styles{flex-direction:column;gap:2px;display:flex}.edit-panel__style-row{font-size:.62rem;font-family:var(--font-mono);align-items:center;gap:8px;padding:2px 0;display:flex}.edit-panel__style-prop{color:#93c5fd;min-width:90px}.edit-panel__style-val{color:var(--text-secondary);word-break:break-all}.edit-panel__selector-path{color:var(--text-dim);background:var(--surface);word-break:break-all;border-radius:4px;padding:4px 8px;font-size:.6rem;display:block}.edit-panel__empty{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.8rem;padding:2rem;display:flex}.edit-panel__empty p{letter-spacing:-.01em;max-width:220px;font-weight:500;line-height:1.6;font-family:var(--font-body)!important;color:#ffffff73!important;font-size:.75rem!important}@media(prefers-color-scheme:light){.edit-panel__empty{color:#0f172abf!important}.edit-panel__empty p{color:#0f172ab3!important}.edit-panel__empty svg{color:#0f172a80!important}.edit-panel{color:#0f172ad9;background:#fff}.edit-panel__el-chip-text{color:#0f172aa6!important}.edit-panel__el-chip-x{color:#0f172a66;background:#0f172a0a}.edit-panel__el-chip-x:hover{color:#dc2626;background:#ef444414}.edit-panel__sector-divider{background:#0f172a14}.edit-panel__sector-header{color:#0f172ab3}.edit-panel__sector-name{color:#0f172a}.edit-panel__typo-label{color:#0f172a80}.edit-panel__typo-content{color:#0f172ad9;background:#0f172a08;border-color:#0f172a1f}.edit-panel__typo-content:focus{border-color:#0169fe66;box-shadow:0 0 0 2px #0169fe14}.edit-panel__typo-size-input{color:#0f172a;background:#0f172a08;border-color:#0f172a1f}.edit-panel__typo-size-input:focus{border-color:#0169fe66;box-shadow:0 0 0 2px #0169fe14}.edit-panel__typo-preset,.edit-panel__typo-select{color:#0f172a;background:#0f172a08;border-color:#0f172a1f}.edit-panel__typo-select option{color:#0f172a;background:#fff}.edit-panel__typo-select optgroup{color:#0f172a80}.edit-panel__typo-toggles{background:#0f172a0a}.edit-panel__typo-toggle{color:#0f172a80}.edit-panel__typo-toggle:hover{color:#0f172acc;background:#0f172a0f}.edit-panel__color-swatch{border-color:#0f172a26}.edit-panel__color-text{color:#0f172ae6;background:#0f172a08;border-color:#0f172a1f}.edit-panel__color-text:focus{border-color:#0169fe66;box-shadow:0 0 0 2px #0169fe14}.edit-panel__color-swatch-btn{border-color:#0f172a26}.edit-panel__color-swatch-btn:hover{border-color:#0f172a59}.edit-panel__cp{background:#fff;border-color:#0f172a1f;box-shadow:0 12px 40px #0f172a26}.edit-panel__cp-eyedropper{color:#0f172a80}.edit-panel__cp-eyedropper:hover{color:#0f172a;background:#0f172a0f}.edit-panel__cp-opa-icon{color:#0f172a73}.edit-panel__cp-format-btn{color:#0f172ab3;background:#0f172a0a;border-color:#0f172a1f}.edit-panel__cp-format-btn:hover{background:#0f172a14}.edit-panel__cp-format-panel{background:#fff;border-color:#0f172a1f;box-shadow:0 8px 32px #0f172a1f}.edit-panel__cp-format-opt{color:#0f172ab3}.edit-panel__cp-format-opt:hover{color:#0f172a;background:#0f172a0f}.edit-panel__cp-value{color:#0f172a;background:#0f172a08;border-color:#0f172a1f}.edit-panel__cp-opa-input{color:#0f172ab3;background:#0f172a08;border-color:#0f172a1f}.edit-panel__cp-opa-input input{color:#0f172a}.edit-panel__cp-opa-input span{color:#0f172a66}.edit-panel__cp-recent-dot{border-color:#0f172a1f}.edit-panel__cp-recent-dot:hover{border-color:#0f172a59}.edit-panel__dd-trigger{color:#0f172ad9;background:#0f172a08;border-color:#0f172a1f}.edit-panel__dd-trigger:hover{background:#0f172a0f;border-color:#0f172a2e}.edit-panel__dd-panel{background:#fff;border-color:#0f172a1f;box-shadow:0 8px 32px #0f172a1f}.edit-panel__dd-panel::-webkit-scrollbar-thumb{background:#0f172a1a}.edit-panel__dd-option{color:#0f172ab3}.edit-panel__dd-option:hover{color:#0f172a;background:#0f172a0f}.edit-panel__dd-group-label{color:#0f172a59}.edit-panel__spacing-group-label{color:#0f172a8c}.edit-panel__spacing-cell{background:#0f172a08}.edit-panel__spacing-cell:hover{background:#0f172a0d}.edit-panel__spacing-cell:focus-within,.edit-panel__spacing-cell--modified{background:#0f172a0a}.edit-panel__spacing-cell-dir{color:#0f172a59}.edit-panel__spacing-cell-dir:hover{color:#0f172ab3;background:#0f172a0f}.edit-panel__spacing-cell-label{color:#0f172a66}.edit-panel__spacing-cell-input{color:#0f172ad9}.edit-panel__link-toggle{color:#0f172a4d}.edit-panel__link-toggle:hover{color:#0f172a99;background:#0f172a0a}.edit-panel__border-color-wrap{border-color:#0f172a1f}.edit-panel__border-style-select{color:#0f172ad9;background:#0f172a08}.edit-panel__border-style-select:hover{background:#0f172a0f}.edit-panel__bg-transparent-btn{color:#0f172a99;background:#0f172a08;border-color:#0f172a1a}.edit-panel__bg-transparent-btn:hover{color:#0f172a;background:#0f172a0f;border-color:#0f172a26}.edit-panel__bg-transparent-icon{background:repeating-conic-gradient(#0f172a1a 0% 25%,#0f172a08 0% 50%) 0 0/6px 6px;border-color:#0f172a1f}.edit-panel__color-swatch-btn--transparent{background:repeating-conic-gradient(#0f172a14 0% 25%,#0f172a05 0% 50%) 0 0/8px 8px!important;border:1.5px dashed #0f172a2e!important}.edit-panel__selector-path{color:#0f172a80}}.edit-panel__hover-indicator{border-top:1px solid var(--border);font-size:.6rem;font-family:var(--font-mono);color:var(--text-dim);flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;display:flex}.edit-panel__hover-dot{background:#6366f180;border-radius:50%;width:6px;height:6px;animation:1.5s infinite editPulse}.edit-panel__text-btn{color:#6366f1;cursor:pointer;background:#6366f126;border:1px solid #6366f14d;border-radius:6px;width:100%;margin:0 0 6px;padding:6px 10px;font-size:.7rem;transition:background .15s}.edit-panel__text-btn:hover{background:#6366f140}.edit-panel__el-chip-text{text-align:left;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden;color:#fff9!important;font-size:.75rem!important;font-weight:600!important}.edit-panel__el-chip-text .edit-panel__tag-name{color:#6366f1e6;font-family:var(--font-mono);margin-right:4px;font-size:10px}.edit-panel__el-chip-x{color:#fff6;cursor:pointer;background:#ffffff0f;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;padding:0;transition:all .2s;display:flex}.edit-panel__el-chip-x:hover{color:#fff;background:#ef444459}.edit-panel__sectors{flex-direction:column;gap:2px;display:flex}.edit-panel__sector{overflow:visible}.edit-panel__sector-divider{background:#ffffff1a;height:1px;margin:2px 10px}.edit-panel__sector-header{width:100%;color:var(--text-secondary);cursor:default;background:0 0;border:none;align-items:center;gap:6px;padding:6px 10px;font-size:.65rem;font-weight:600;transition:background .15s;display:flex}.edit-panel__sector-header--static{cursor:default;pointer-events:none}.edit-panel__sector-header:hover{background:0 0}.edit-panel__sector-icon{opacity:.7;text-align:center;width:16px;font-size:.7rem}.edit-panel__sector-name{text-align:left;flex:1}.edit-panel__sector-chevron{opacity:.5;transition:transform .15s}.edit-panel__sector--open .edit-panel__sector-chevron{transform:rotate(180deg)}.edit-panel__sector-body{flex-direction:column;gap:4px;padding:6px 8px;display:flex}.edit-panel__spacing-visual{flex-direction:column;gap:12px;padding:10px 10px 8px;display:flex}.edit-panel__spacing-group{flex-direction:column;gap:6px;display:flex}.edit-panel__spacing-group-label{color:#ffffff8c;letter-spacing:.02em;align-items:center;gap:6px;font-size:.6rem;font-weight:500;display:flex}.edit-panel__spacing-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}.edit-panel__spacing-grid{grid-template-columns:1fr 1fr;gap:4px;display:grid}.edit-panel__spacing-grid--single{grid-template-columns:1fr}.edit-panel__spacing-cell--wide{max-width:100%}.edit-panel__link-toggle{color:#ffffff4d;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;padding:0;transition:color .15s,background .15s;display:flex}.edit-panel__link-toggle:hover{color:#ffffffb3;background:#ffffff0f}.edit-panel__link-toggle--linked{color:#64b4ffb3}.edit-panel__link-toggle--linked:hover{color:#64b4ff;background:#64b4ff1a}.edit-panel__spacing-cell{background:#ffffff0a;border:none;border-radius:6px;align-items:center;gap:4px;padding:4px 6px;transition:border-color .15s,background .15s;display:flex}.edit-panel__spacing-cell:hover,.edit-panel__spacing-cell:focus-within,.edit-panel__spacing-cell--modified{background:#ffffff0a}.edit-panel__spacing-cell-dir{color:#ffffff59;cursor:ew-resize;-webkit-user-select:none;user-select:none;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;transition:color .15s,background .15s;display:flex}.edit-panel__spacing-cell-dir:hover{color:#ffffffb3;background:#ffffff14}.edit-panel__spacing-cell-label{color:#fff6;flex-shrink:0;min-width:24px;font-size:.65rem}.edit-panel__spacing-cell-input{color:#ffffffd9;-moz-appearance:textfield;background:0 0;border:none;outline:none;width:100%;padding:0;font-family:JetBrains Mono,monospace;font-size:.75rem}.edit-panel__spacing-cell-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-panel__spacing-cell-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-panel__border-row{align-items:center;gap:6px;padding:6px 10px;display:flex}.edit-panel__border-color-wrap{border:1px solid #ffffff14;border-radius:6px;flex-shrink:0;width:28px;height:28px;overflow:hidden}.edit-panel__border-swatch{appearance:none;cursor:pointer;background:0 0;border:none;width:40px;height:40px;margin:-6px;padding:0}.edit-panel__border-swatch::-webkit-color-swatch-wrapper{padding:0}.edit-panel__border-swatch::-webkit-color-swatch{border:none;border-radius:0}.edit-panel__border-style-select{color:#ffffffd9;cursor:pointer;appearance:none;background:#ffffff0a;border:none;border-radius:6px;outline:none;flex:1;min-width:0;padding:5px 8px;font-family:inherit;font-size:.7rem}.edit-panel__border-style-select:hover{background:#ffffff12}.edit-panel__border-style-select:focus{box-shadow:0 0 0 1px #7c6aff4d}.edit-panel__typo{flex-direction:column;gap:8px;padding:8px 10px;display:flex}.edit-panel__typo-row{flex-direction:column;gap:3px;display:flex}.edit-panel__typo-row--inline{flex-direction:row;align-items:center;gap:6px}.edit-panel__typo-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0;min-width:68px;font-size:.6rem}.edit-panel__typo-content{color:#ffffffd9;resize:vertical;letter-spacing:.3px;cursor:text;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;width:100%;min-height:26px;padding:4px 6px;font-family:inherit;font-size:.7rem;line-height:1.4}.edit-panel__typo-content:focus{border-color:#5b9dff80;outline:none;box-shadow:0 0 0 2px #5b9dff1a}.edit-panel__prop-input-wrap{flex:1;align-items:center;gap:6px;display:flex}.edit-panel__color-swatch{cursor:pointer;background:0 0;border:1px solid #ffffff26;border-radius:6px;flex-shrink:0;width:28px;height:28px;padding:0}.edit-panel__color-text{color:#ffffffe6;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;width:100%;min-height:24px;padding:3px 6px;font-family:inherit;font-size:.7rem}.edit-panel__color-text:focus{border-color:#5b9dff80;outline:none;box-shadow:0 0 0 2px #5b9dff1a}.edit-panel__typo-size-group{flex:1;align-items:center;gap:4px;display:flex}.edit-panel__typo-size-input{color:#fff;text-align:center;-moz-appearance:textfield;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;width:48px;padding:4px 6px;font-size:11px}.edit-panel__typo-size-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-panel__typo-size-input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-panel__typo-size-input:focus{border-color:#5b9dff80;outline:none;box-shadow:0 0 0 2px #5b9dff1a}.edit-panel__typo-preset{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;flex:1;min-width:0;padding:4px;font-size:11px}.edit-panel__typo-preset:focus{border-color:#5b9dff80;outline:none;box-shadow:0 0 0 2px #5b9dff1a}.edit-panel__typo-select{color:#fff;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;width:100%;padding:5px 6px;font-size:12px}.edit-panel__typo-select:focus{border-color:#5b9dff80;outline:none;box-shadow:0 0 0 2px #5b9dff1a}.edit-panel__dd{flex:1;min-width:0;position:relative}.edit-panel__dd-trigger{color:#ffffffe6;cursor:pointer;text-align:left;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;justify-content:space-between;align-items:center;gap:4px;width:100%;min-height:24px;padding:3px 6px;font-family:inherit;font-size:.7rem;transition:all .15s;display:flex}.edit-panel__dd-trigger:hover{background:#ffffff1a;border-color:#ffffff2e}.edit-panel__dd-value{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.edit-panel__dd-arrow{opacity:.5;flex-shrink:0;transition:transform .2s}.edit-panel__dd-arrow--open{transform:rotate(180deg)}.edit-panel__dd-panel{z-index:100;background:#0d0d0d;border:1px solid #ffffff1a;border-radius:10px;min-width:100%;max-height:180px;padding:4px;animation:.15s dd-slide-in;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 32px #00000073,0 0 0 1px #ffffff0d}.edit-panel__dd-panel--tall{max-height:240px}@keyframes dd-slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.edit-panel__dd-panel::-webkit-scrollbar{width:4px}.edit-panel__dd-panel::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:4px}.edit-panel__dd-panel::-webkit-scrollbar-track{background:0 0}.edit-panel__dd-option{color:#ffffffbf;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;border-radius:6px;width:100%;padding:6px 8px;font-family:inherit;font-size:11px;transition:all .1s;display:block;overflow:hidden}.edit-panel__dd-option:hover{color:#fff;background:#ffffff24}.edit-panel__dd-option--active{color:#5b9dff;background:#0169fe26}.edit-panel__dd-option--active:hover{background:#0169fe38}.edit-panel__color-swatch-btn{cursor:pointer;border:2px solid #ffffff26;border-radius:6px;flex-shrink:0;width:24px;height:24px;padding:0;transition:border-color .15s}.edit-panel__color-swatch-btn:hover{border-color:#ffffff59}.edit-panel__cp{z-index:100;background:#1e1e1e;border:1px solid #ffffff1a;border-radius:12px;margin-top:6px;padding:10px;animation:.15s dd-slide-in;position:absolute;left:0;right:0;box-shadow:0 12px 40px #00000080}.edit-panel__cp-sv{cursor:crosshair;-webkit-user-select:none;user-select:none;border-radius:8px;width:100%;height:150px;position:relative;overflow:hidden}.edit-panel__cp-thumb{pointer-events:none;z-index:2;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d,inset 0 0 0 1px #0000004d}.edit-panel__cp-slider-row{align-items:center;gap:8px;margin-top:8px;display:flex}.edit-panel__cp-eyedropper{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;padding:0;transition:all .15s;display:flex}.edit-panel__cp-eyedropper:hover{color:#fff;background:#ffffff14}.edit-panel__cp-hue{cursor:pointer;-webkit-user-select:none;user-select:none;background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:6px;flex:1;height:12px;position:relative}.edit-panel__cp-hue-thumb{pointer-events:none;width:16px;height:16px;position:absolute;top:50%;transform:translate(-50%,-50%)}.edit-panel__cp-hue-thumb-inner{border:2px solid #fff;border-radius:50%;width:100%;height:100%;box-shadow:0 1px 4px #00000059}.edit-panel__cp-hue-handle{pointer-events:none;z-index:2;border:2px solid #fff;border-radius:50%;width:14px;height:14px;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #00000040,0 1px 4px #00000059}.edit-panel__cp-opa-icon{color:#ffffff8c;cursor:default;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.edit-panel__cp-opacity{cursor:pointer;-webkit-user-select:none;user-select:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Crect width='4' height='4' fill='%23999'/%3E%3Crect x='4' y='4' width='4' height='4' fill='%23999'/%3E%3Crect x='4' width='4' height='4' fill='%23666'/%3E%3Crect y='4' width='4' height='4' fill='%23666'/%3E%3C/svg%3E");background-size:8px 8px;border-radius:6px;flex:1;height:12px;position:relative;overflow:visible}.edit-panel__cp-opacity-grad{border-radius:inherit;position:absolute;inset:0}.edit-panel__cp-format-row{align-items:center;gap:6px;margin-top:10px;display:flex}.edit-panel__cp-format-dd{flex-shrink:0}.edit-panel__cp-format-btn{color:#fffc;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:4px;padding:4px 8px;font-family:inherit;font-size:11px;font-weight:500;transition:all .12s;display:flex}.edit-panel__cp-format-btn:hover{background:#ffffff1a}.edit-panel__cp-format-panel{z-index:120;background:#0d0d0d;border:1px solid #ffffff1a;border-radius:8px;min-width:80px;padding:4px;animation:.12s dd-slide-in;position:absolute;bottom:calc(100% + 4px);left:0;box-shadow:0 8px 32px #00000080}.edit-panel__cp-format-opt{color:#ffffffb3;text-align:left;cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:5px;width:100%;padding:5px 10px;font-family:inherit;font-size:11px;transition:all .1s;display:block}.edit-panel__cp-format-opt:hover{color:#fff;background:#ffffff14}.edit-panel__cp-format-opt--active{color:#5b9dff}.edit-panel__cp-value{color:#fff;text-transform:uppercase;letter-spacing:.04em;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;flex:1;min-width:0;padding:4px 8px;font-family:inherit;font-size:.8rem}.edit-panel__cp-value:focus{border-color:#0169fe80;outline:none}.edit-panel__cp-opa-input{color:#fffc;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:6px;align-items:center;gap:2px;padding:4px 6px;font-size:.8rem;display:flex}.edit-panel__cp-opa-input input{color:#fff;text-align:right;-moz-appearance:textfield;background:0 0;border:none;width:32px;padding:0;font-family:inherit;font-size:.8rem}.edit-panel__cp-opa-input input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.edit-panel__cp-opa-input input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.edit-panel__cp-opa-input span{color:#fff6;font-size:.8rem}.edit-panel__cp-recent{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.edit-panel__cp-recent-dot{cursor:pointer;border:2px solid #ffffff1f;border-radius:50%;flex-shrink:0;width:20px;height:20px;padding:0;transition:all .12s}.edit-panel__cp-recent-dot:hover{border-color:#fff6;transform:scale(1.15)}.edit-panel__color-swatch-btn--transparent{background:repeating-conic-gradient(#ffffff14 0% 25%,#ffffff05 0% 50%) 0 0/8px 8px!important;border:1.5px dashed #ffffff2e!important}.edit-panel__bg-transparent-btn{color:#ffffffb3;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:8px;width:100%;margin-bottom:8px;padding:7px 10px;font-size:.72rem;transition:background .15s,border-color .15s;display:flex}.edit-panel__bg-transparent-btn:hover{color:#fff;background:#ffffff14;border-color:#ffffff26}.edit-panel__bg-transparent-icon{background:repeating-conic-gradient(#ffffff1f 0% 25%,#ffffff08 0% 50%) 0 0/6px 6px;border:1px solid #ffffff1f;border-radius:3px;flex-shrink:0;width:14px;height:14px;display:inline-block}.edit-panel__dd-group-label{color:#ffffff59;text-transform:uppercase;letter-spacing:.05em;pointer-events:none;padding:6px 8px 3px;font-size:10px;font-weight:600}.edit-panel__typo-select optgroup{color:#aaa;font-weight:600}.edit-panel__typo-select option{color:#fff;background:#0c0c14}.edit-panel__typo-toggles{background:#ffffff0a;border-radius:6px;gap:2px;padding:2px;display:flex}.edit-panel__typo-toggle{color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;flex:1;justify-content:center;align-items:center;min-width:24px;min-height:24px;padding:3px 0;font-family:inherit;font-size:.65rem;transition:all .15s;display:flex}.edit-panel__typo-toggle:hover{color:#fffc;background:#ffffff0f}.edit-panel__typo-toggle--active{color:#5b9dff;background:#0169fe26;border-color:#0169fe4d}.edit-panel__prop-row{grid-template-columns:80px 1fr;align-items:center;gap:4px;display:grid;position:relative}.edit-panel__prop-row--modified:before{content:"";background:#6366f1;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:-4px;transform:translateY(-50%)}.edit-panel__prop-label{color:var(--text-dim);white-space:nowrap;text-overflow:ellipsis;font-size:.6rem;overflow:hidden}.edit-panel__prop-input-wrap{align-items:center;gap:3px;display:flex}.edit-panel__color-swatch{border:1px solid var(--border);cursor:pointer;background:0 0;border-radius:4px;flex-shrink:0;width:22px;height:22px;padding:0}.edit-panel__color-swatch::-webkit-color-swatch-wrapper{padding:1px}.edit-panel__color-swatch::-webkit-color-swatch{border:none;border-radius:3px}.edit-panel__color-text,.edit-panel__number-input{background:var(--bg-tertiary,#ffffff0d);border:1px solid var(--border);min-width:0;color:var(--text-primary);font-size:.6rem;font-family:var(--font-mono);border-radius:4px;flex:1;padding:2px 5px}.edit-panel__number-input::-webkit-inner-spin-button{opacity:.3}.edit-panel__unit{color:var(--text-dim);opacity:.6;font-size:.55rem}.edit-panel__select-input{background:var(--bg-tertiary,#ffffff0d);border:1px solid var(--border);min-width:0;color:var(--text-primary);cursor:pointer;border-radius:4px;flex:1;padding:2px 5px;font-size:.6rem}.edit-panel__text-input{background:var(--bg-tertiary,#ffffff0d);border:1px solid var(--border);min-width:0;color:var(--text-primary);font-size:.6rem;font-family:var(--font-mono);border-radius:4px;flex:1;padding:2px 5px}.edit-panel__revert{color:var(--text-dim);cursor:pointer;opacity:.5;background:0 0;border:none;flex-shrink:0;padding:0 3px;font-size:.65rem;transition:opacity .15s}.edit-panel__revert:hover{opacity:1;color:#6366f1}.edit-panel__selector-section{border-top:1px solid var(--border);margin-top:4px;padding-top:6px}.edit-toolbar__nav-group{align-items:center;gap:5px;margin-right:4px;display:flex}.edit-toolbar__btn{color:#ffffffb3;cursor:pointer;white-space:nowrap;background:#ffffff0a;border:1px solid #ffffff14;border-radius:6px;align-items:center;gap:4px;padding:4px 10px;font-size:11px;font-weight:500;transition:all .15s;display:inline-flex}.edit-toolbar__btn:hover{color:#fff;background:#ffffff14}.edit-toolbar__btn--save{color:#34d399;border-color:#34d3994d}.edit-toolbar__btn--save:hover{background:#34d3991f;border-color:#34d39980}.edit-toolbar__btn--discard{color:#f87171;border-color:#f871714d}.edit-toolbar__btn--discard:hover{background:#f871711f;border-color:#f8717180}.edit-toolbar__btn--close{color:#fff9;border-color:#ffffff1a}.edit-toolbar__btn--close:hover{color:#fff;background:#ffffff14}.edit-toolbar__btn:disabled{opacity:.5;cursor:not-allowed}.edit-toolbar__btn--attention{animation:.4s 2 editAttentionPulse}.edit-toolbar__btn--attention.edit-toolbar__btn--save{border-color:#34d399cc;box-shadow:0 0 12px #34d39980,0 0 24px #34d39933}.edit-toolbar__btn--attention.edit-toolbar__btn--discard{border-color:#f87171cc;box-shadow:0 0 12px #f8717180,0 0 24px #f8717133}@keyframes editAttentionPulse{0%,to{transform:scale(1)}25%{transform:scale(1.08)translate(-2px)}75%{transform:scale(1.08)translate(2px)}}.canvas-recompile-overlay{z-index:50;background:#ffffff0d;height:3px;position:absolute;top:0;left:0;right:0;overflow:hidden}.canvas-recompile-overlay__bar{background:linear-gradient(90deg,#0000,#3b82f6 30%,#60a5fa,#3b82f6 70%,#0000) 0 0/200% 100%;width:100%;height:100%;animation:1.2s ease-in-out infinite recompileBarSweep}@keyframes recompileBarSweep{0%{background-position:-200% 0}to{background-position:200% 0}}.canvas__frame--recompiling{opacity:.15;pointer-events:none;transition:opacity .3s}.text-edit-popup{z-index:9999;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#14141ef5;border:1px solid #6366f14d;border-radius:12px;min-width:240px;max-width:320px;animation:.1s ease-out textEditPopupIn;position:fixed;overflow:hidden;box-shadow:0 8px 32px #00000080,0 0 0 1px #ffffff08}.text-edit-popup__connector{animation:.1s ease-out textEditPopupIn}@keyframes textEditPopupIn{0%{opacity:0}to{opacity:1}}.text-edit-popup__header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:8px 14px;font-size:.65rem;font-weight:700;display:flex}.text-edit-popup__close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:2px;transition:color .15s,background .15s;display:flex}.text-edit-popup__close:hover{color:var(--text-primary);background:#ffffff14}.text-edit-popup__options{flex-direction:column;display:flex}.text-edit-popup__option{color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:none;border-bottom:1px solid #ffffff0a;align-items:center;gap:10px;padding:10px 14px;transition:background .12s;display:flex}.text-edit-popup__option:last-child{border-bottom:none}.text-edit-popup__option:hover{background:#6366f11f}.text-edit-popup__option-icon{text-align:center;flex-shrink:0;width:24px;font-size:1.1rem}.text-edit-popup__option-text{flex-direction:column;gap:1px;display:flex}.text-edit-popup__option-label{color:var(--text-primary);font-size:.72rem;font-weight:600}.text-edit-popup__option-desc{color:var(--text-dim);font-size:.58rem}.text-edit-popup__ai-input{padding:8px 12px 10px}.text-edit-popup__ai-context{margin-bottom:6px}.text-edit-popup__ai-path{color:var(--text-dim);font-size:.55rem;font-family:var(--font-mono);background:#ffffff0a;border-radius:4px;padding:2px 6px}.text-edit-popup__ai-field{gap:4px;display:flex}.text-edit-popup__ai-text{color:var(--text-primary);background:#ffffff0f;border:1px solid #6366f14d;border-radius:8px;outline:none;flex:1;padding:6px 10px;font-size:.68rem;transition:border-color .15s}.text-edit-popup__ai-text:focus{border-color:#6366f199}.text-edit-popup__ai-text::placeholder{color:var(--text-dim);opacity:.6}.text-edit-popup__ai-send{color:#fff;cursor:pointer;background:#6366f1cc;border:none;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;transition:background .15s;display:flex}.text-edit-popup__ai-send:hover{background:#6366f1}.text-edit-popup__ai-send:disabled{opacity:.3;cursor:not-allowed}.text-edit-popup__option--active{background:#6366f11a;border-left:2px solid #6366f199}.text-edit-popup__ai-back{color:var(--text-dim);cursor:pointer;background:0 0;border:none;padding:4px 0 0;font-size:.6rem;transition:color .15s}.text-edit-popup__ai-back:hover{color:var(--text-primary)}.node-edit-modal{z-index:9998;-webkit-backdrop-filter:blur(20px)saturate(1.4);backdrop-filter:blur(20px)saturate(1.4);transform-origin:top;background:#10101af7;border:1px solid #6366f140;border-radius:14px;width:220px;animation:.2s cubic-bezier(.22,1,.36,1) nodeEditModalIn;position:fixed;overflow:hidden;box-shadow:0 12px 40px #0000008c,0 0 0 1px #ffffff0a,0 0 30px #6366f114}.node-edit-modal__cord{animation:.3s ease-out nodeEditCordIn}@keyframes nodeEditModalIn{0%{opacity:0;transform:scale(.92)translateY(-6px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes nodeEditCordIn{0%{opacity:0}to{opacity:1}}@keyframes nodeEditCordFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-20px}}.node-edit-modal__header{border-bottom:1px solid #ffffff0f;justify-content:space-between;align-items:center;padding:8px 12px;display:flex}.node-edit-modal__tag-info{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.node-edit-modal__tag{color:#6366f1e6;font-size:.65rem;font-weight:700;font-family:var(--font-mono,monospace);white-space:nowrap}.node-edit-modal__display-name{color:var(--text-dim);text-overflow:ellipsis;white-space:nowrap;font-size:.58rem;overflow:hidden}.node-edit-modal__close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;padding:3px;transition:color .15s,background .15s;display:flex}.node-edit-modal__source{color:var(--text-dim);font-size:.52rem;font-family:var(--font-mono,monospace);opacity:.7;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:5px;padding:4px 12px 6px;display:flex;overflow:hidden}.node-edit-modal__dims{font-size:.52rem;font-family:var(--font-mono,monospace);color:var(--text-dim);opacity:.6;border-top:1px solid #ffffff0a;align-items:center;gap:8px;padding:5px 12px;display:flex}.node-edit-modal__dims-pos{opacity:.5}.chat__element-ctx{background:#38bdf814;border:1px solid #38bdf833;border-left:3px solid #38bdf899;border-radius:8px;align-items:center;gap:6px;max-width:100%;margin-bottom:4px;padding:4px 8px 4px 4px;animation:.2s ease-out elementCtxIn;display:inline-flex}@keyframes elementCtxIn{0%{opacity:0;transform:translateY(4px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.chat__element-ctx-tag{color:#38bdf8;white-space:nowrap;background:#38bdf81a;border-radius:4px;padding:2px 6px;font-family:JetBrains Mono,SF Mono,Fira Code,monospace;font-size:.68rem;font-weight:600}.chat__element-ctx-name{color:#ffffff8c;white-space:nowrap;text-overflow:ellipsis;max-width:160px;font-size:.66rem;overflow:hidden}.chat__element-ctx-remove{color:#ffffff4d;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;margin-left:auto;padding:0;transition:color .15s,background .15s;display:flex}.chat__element-ctx-remove:hover{color:#f87171;background:#f871711f}.chat__element-ctx--history{background:#38bdf80f;border-color:#38bdf826;margin-bottom:6px;animation:none}.chat__input-wrap{border-radius:var(--radius);transition:border-color var(--duration) var(--ease);background:#1c1c1c;border:1px solid #ffffff0f;flex-direction:column;gap:0;padding:.5rem;display:flex}.chat__attachments{flex-wrap:wrap;gap:.4rem;padding:.25rem 0 .4rem;display:flex}.chat__attachment{border:1px solid var(--border);background:#ffffff0d;border-radius:10px;position:relative;overflow:hidden}.chat__attachment--image{width:56px;height:56px}.chat__attachment-thumb{object-fit:cover;border-radius:9px;width:56px;height:56px;display:block}.chat__attachment--pdf,.chat__attachment--document{align-items:center;gap:6px;padding:6px 10px;display:flex}.chat__attachment-icon{color:var(--text-dim);align-items:center;gap:5px;display:flex}.chat__attachment-name{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:.6rem;overflow:hidden}.chat__attachment-remove{color:#fff;cursor:pointer;opacity:0;background:#000000b3;border:none;border-radius:50%;place-items:center;width:18px;height:18px;transition:opacity .15s;display:grid;position:absolute;top:2px;right:2px}.chat__attachment:hover .chat__attachment-remove{opacity:1}.chat__input-row{align-items:flex-end;gap:.4rem;display:flex}.chat--drag-active{position:relative}.chat__drag-overlay{z-index:100;border-radius:var(--radius);pointer-events:none;background:#6366f10f;border:2px dashed #6366f180;place-items:center;animation:.15s ease-out dragOverlayIn;display:grid;position:absolute;inset:0}.chat__drag-overlay-content{color:#6366f1e6;flex-direction:column;align-items:center;gap:8px;font-size:.75rem;font-weight:600;display:flex}@keyframes dragOverlayIn{0%{opacity:0}to{opacity:1}}.chat__drop-error{z-index:200;color:#fff;white-space:nowrap;pointer-events:none;background:#ef4444e6;border-radius:8px;padding:8px 16px;font-size:.7rem;font-weight:600;animation:.2s ease-out dropErrorIn;position:absolute;bottom:80px;left:50%;transform:translate(-50%)}@keyframes dropErrorIn{0%{opacity:0;transform:translate(-50%)translateY(8px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.chat__input-wrap:focus-within{border-color:#7c6aff4d}.chat__input-wrap--dragover{box-shadow:inset 0 0 0 1px #38bdf826;border-color:#0169fe80!important}.chat__input-wrap--code-mode{transition:border-color .5s,box-shadow .5s;position:relative;box-shadow:inset 0 0 20px #00b4d814,inset 0 0 6px #2ec4a00f,0 0 15px #a8e0630f;border-color:#00b4d866!important}.chat__input-wrap--code-mode:before{content:"";border-radius:inherit;pointer-events:none;z-index:-1;animation:3s ease-in-out infinite code-glow-pulse;position:absolute;inset:0;box-shadow:inset 0 0 30px #00b4d81a,inset 0 0 60px #2ec4a00a}@keyframes code-glow-pulse{0%,to{opacity:.6}50%{opacity:1}}.chat__input-wrap--code-mode>*{z-index:1;position:relative}.chat__code-mode-bar{opacity:0;pointer-events:none;border-bottom:none;align-items:center;gap:0;max-height:0;padding:0 6px;transition:max-height .4s cubic-bezier(.22,1,.36,1),opacity .35s,transform .4s cubic-bezier(.22,1,.36,1),padding .4s,border-bottom 10ms .4s;display:flex;position:relative;overflow:visible;transform:translateY(100%)}.chat__code-mode-bar--active{opacity:1;pointer-events:auto;border-bottom:1px solid #00b4d826;max-height:40px;padding:4px 6px;transition:max-height .4s cubic-bezier(.22,1,.36,1),opacity .35s 50ms,transform .4s cubic-bezier(.22,1,.36,1),padding .4s,border-bottom .4s;transform:translateY(0)}.chat__code-mode-bar--active:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(2px at 10% 40%,#00b4d84d,#0000),radial-gradient(1.5px at 30% 70%,#2ec4a059,#0000),radial-gradient(2px at 55% 30%,#a8e06340,#0000),radial-gradient(1.5px at 75% 60%,#00b4d84d,#0000),radial-gradient(2px at 90% 35%,#2ec4a033,#0000),radial-gradient(1.5px at 45% 75%,#a8e06340,#0000);animation:6s ease-in-out infinite alternate code-particles-drift;position:absolute;inset:0}@keyframes code-particles-drift{0%{opacity:.4;transform:translate(0)}33%{opacity:.7;transform:translate(2px,-2px)}66%{opacity:.5;transform:translate(-2px,1px)}to{opacity:.6;transform:translate(1px,-1px)}}.chat__code-mode-bar>*{z-index:1;position:relative}.chat__code-mode-back{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;gap:4px;padding:3px 8px;font-family:inherit;font-size:.72rem;transition:color .15s,background .15s;display:flex}.chat__code-mode-back:hover{color:#fff;background:#ffffff0f}.chat__code-mode-label{letter-spacing:.04em;-webkit-backdrop-filter:blur(14px);color:#fff;z-index:2;background:linear-gradient(135deg,#00b4d873,#2ec4a061,#a8e0634d);border:none;border-left:1px solid #2ec4a04d;border-radius:0 12px 0 6px;align-items:center;gap:4px;padding:4px 14px 4px 12px;font-size:.6rem;font-weight:600;display:flex;position:absolute;top:-9px;bottom:0;right:-9px;overflow:hidden;box-shadow:0 4px 12px #00b4d833,0 2px 6px #2ec4a026,0 -4px 10px #00b4d81f}.chat__code-mode-label-particles{pointer-events:none;z-index:0;background:radial-gradient(1.5px at 15% 35%,#00dcff99,#0000),radial-gradient(1px at 40% 70%,#2ee6b48c,#0000),radial-gradient(1.5px at 65% 25%,#a8f07880,#0000),radial-gradient(1px at 85% 60%,#00dcff80,#0000),radial-gradient(1px,#2ee6b473,#0000);animation:4s ease-in-out infinite alternate label-energy-flow;position:absolute;inset:0}@keyframes label-energy-flow{0%{opacity:.5;transform:translate(0)}25%{opacity:.8;transform:translate(1px,-1px)}50%{opacity:.6;transform:translate(-1px,1px)}75%{opacity:.9;transform:translate(1px,.5px)}to{opacity:.7;transform:translate(-.5px,-1px)}}.chat__code-mode-label>svg,.chat__code-mode-label>span:not(.chat__code-mode-label-particles){z-index:1;position:relative}.chat__code-files{flex-wrap:wrap;gap:6px;padding:6px 8px 2px;display:flex}.chat__code-badge{-webkit-backdrop-filter:blur(10px);color:#fff;white-space:nowrap;background:#0169fe59;border:1px solid #38bdf81f;border-radius:5px;align-items:center;gap:4px;padding:2px 6px 2px 8px;font-size:.68rem;font-weight:500;animation:.2s code-badge-in;display:inline-flex}@keyframes code-badge-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.chat__code-badge-x{color:#fff9;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:14px;height:14px;padding:0;font-size:.6rem;line-height:1;transition:background .12s,color .12s;display:flex}.chat__code-badge-x:hover{color:#fff;background:#ff4b4b80}.chat__textarea{resize:none;color:var(--text);text-align:left;flex:1;min-height:125px;max-height:175px;padding:10px 10px 5px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:1rem;line-height:1.5;overflow-y:auto}.chat__textarea::placeholder{font-weight:500;color:#555!important}.chat__textarea:disabled{opacity:.4}.chat__attach-btn{cursor:pointer;white-space:nowrap;outline:none;transition:background .15s,color .15s,padding .28s cubic-bezier(.22,1,.36,1);color:#f8fafc!important;background:#ffffff14!important;border:none!important;border-radius:10px!important;align-items:center!important;gap:6px!important;padding:6px 14px 6px 10px!important;font-family:Plus Jakarta Sans,system-ui,sans-serif!important;font-size:.75rem!important;font-weight:500!important;display:inline-flex!important}.chat__attach-btn--icon-only{justify-content:center!important;gap:0!important;padding:8px 10px!important}.chat__attach-btn svg{flex-shrink:0}.chat__attach-btn:hover{color:#fff!important;background:#ffffff1f!important}.chat__attach-btn:disabled{opacity:.4;cursor:default}.chat__attach-btn-label{opacity:1;max-width:120px;transition:max-width .38s cubic-bezier(.34,1.56,.64,1),opacity .22s cubic-bezier(.4,0,.2,1) 60ms,transform .32s cubic-bezier(.34,1.56,.64,1);display:inline-block;overflow:hidden;transform:translate(0)}.chat__attach-btn--collapsed{transition:background .15s,color .15s,padding .34s cubic-bezier(.34,1.56,.64,1) 40ms,gap .28s cubic-bezier(.22,1,.36,1);gap:0!important;padding:6px 10px!important}.chat__attach-btn--collapsed .chat__attach-btn-label{opacity:0;max-width:0;transition:max-width .32s cubic-bezier(.22,1,.36,1),opacity .14s cubic-bezier(.4,0,1,1),transform .28s cubic-bezier(.22,1,.36,1);transform:translate(-4px)}.chat__send{color:#fff;width:39px;height:39px;transition:all var(--duration) var(--ease);background:#0169fe;border-radius:10px;flex-shrink:0;align-self:flex-end;place-items:center;display:grid}.chat__send:hover:not(:disabled){background:#0180da}.chat__send:disabled{opacity:.3;cursor:not-allowed}.chat__send--stop{background:#ef4444;animation:1.5s infinite stopPulse}.chat__send--stop:hover{background:#dc2626;transform:scale(1.05)}@keyframes stopPulse{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.home-prompt__spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite voiceSpin;display:inline-block}.chat__mic-btn{color:#fff;cursor:pointer;background:0 0;border:none;border-radius:10px;flex-shrink:0;align-self:flex-end;place-items:center;width:39px;height:39px;transition:all .15s;display:grid}.chat__mic-btn:hover{color:#fff;background:#2a2a2a}.chat__mic-btn--recording{color:#0169fe;background:#0169fe1f;animation:1.5s infinite micGlowBlue}.chat__mic-btn--recording:hover{color:#3d8eff;background:#0169fe33}@keyframes micGlowBlue{0%,to{box-shadow:0 0 #0169fe66}50%{box-shadow:0 0 0 6px #0169fe00}}.voice-transcribing{-webkit-backdrop-filter:blur(16px);z-index:10;background:#0d0d0deb;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;gap:10px;animation:.3s voiceOverlayIn;display:flex;position:absolute;inset:0}@keyframes voiceOverlayIn{0%{opacity:0}to{opacity:1}}.voice-transcribing__spinner{border:2.5px solid #0169fe26;border-top-color:#0169fe;border-radius:50%;width:28px;height:28px;animation:.8s linear infinite voiceSpin}.voice-transcribing__text{color:#ffffff80;letter-spacing:.01em;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:.78rem;font-weight:500}.voice-transcribing__dots:after{content:"";animation:1.4s steps(4,end) infinite voiceDots}@keyframes voiceDots{0%{content:""}25%{content:"."}50%{content:".."}75%{content:"..."}}@keyframes voiceSpin{to{transform:rotate(360deg)}}.chat__textarea--typewriting{transition:color .3s;color:#0169fe!important}.voice-viz{align-items:center;gap:2px;height:28px;padding:0 4px;display:flex}.voice-viz__bar{background:#ffffff40;border-radius:2px;width:3px;transition:height 80ms}.voice-viz__bar--low{background:#ffffff40}.voice-viz__bar--mid{background:#0169fe99}.voice-viz__bar--high{background:#0169fe}.chat__mic-btn--transcribing{cursor:wait;opacity:.8}.chat__mic-spinner{border:2px solid #0169fe33;border-top-color:#0169fe;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite voiceSpin}.chat__mic-btn--transcribing .voice-viz--processing{gap:2px}.chat__mic-btn--transcribing .voice-viz--processing .voice-viz__bar{animation:1s ease-in-out infinite voiceBarWave}@keyframes voiceBarWave{0%,to{height:4px!important}50%{height:14px!important}}.chat__hint{color:var(--text-dim);text-align:center;margin-top:.4rem;font-size:.58rem}.modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0009;place-items:center;animation:.2s modalBgIn;display:grid;position:fixed;inset:0}@keyframes modalBgIn{0%{opacity:0}to{opacity:1}}.modal{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);width:380px;max-width:90vw;animation:modalIn .3s var(--ease);overflow:hidden;box-shadow:0 24px 80px #00000080}@keyframes modalIn{0%{opacity:0;transform:scale(.95)translateY(10px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal__header{justify-content:space-between;align-items:center;padding:1rem 1.2rem .6rem;display:flex}.modal__title{font-family:var(--font-display);letter-spacing:-.03em;font-size:.95rem;font-weight:800}.modal__close{width:28px;height:28px;color:var(--text-dim);transition:all var(--duration) var(--ease);border-radius:7px;place-items:center;display:grid}.modal__close:hover{background:var(--surface-hover);color:var(--text)}.modal__tabs{gap:.3rem;margin-bottom:.8rem;padding:0 1.2rem;display:flex}.modal__tab{color:var(--text-dim);transition:all var(--duration) var(--ease);border-radius:6px;padding:.4rem .7rem;font-size:.68rem;font-weight:600}.modal__tab:hover{color:var(--text-secondary);background:var(--surface-hover)}.modal__tab--active{background:var(--primary-soft);color:var(--primary)}.modal__body{padding:0 1.2rem}.modal__desc{color:var(--text-dim);margin-bottom:.8rem;font-size:.68rem;line-height:1.5}.modal__label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.3rem;font-size:.6rem;font-weight:700;display:block}.modal__input,.modal__select{border-radius:var(--radius-sm);background:var(--bg);border:1px solid var(--border);width:100%;color:var(--text);transition:border-color var(--duration) var(--ease);margin-bottom:.5rem;padding:.5rem .7rem;font-size:.72rem}.modal__input:focus,.modal__select:focus{border-color:#7c6aff4d;outline:none}.modal__select{appearance:none;cursor:pointer}.modal__textarea{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);width:100%;color:var(--text);font-family:var(--font-code);resize:vertical;min-height:80px;max-height:200px;padding:.55rem .75rem;font-size:.75rem;line-height:1.6;transition:border-color .15s}.modal__textarea:focus{border-color:#7c6aff4d;outline:none}.modal__textarea::placeholder{color:var(--text-dim);font-style:italic}.modal__label-hint{color:var(--text-dim);font-size:.7rem;font-weight:400}.modal__hint{color:var(--text-dim);margin:.3rem 0 0;font-size:.65rem;line-height:1.4}.modal__link{color:var(--accent);transition:opacity var(--duration) var(--ease);margin-bottom:.8rem;font-size:.62rem;font-weight:600;display:inline-block}.modal__link:hover{opacity:.7}.modal__spinner{border:2px solid #fff3;border-top-color:var(--accent,#60a5fa);border-radius:50%;flex-shrink:0;width:16px;height:16px;animation:.8s linear infinite modal-spin;display:inline-block}@keyframes modal-spin{to{transform:rotate(360deg)}}.modal__footer{border-top:1px solid var(--border);align-items:center;gap:.5rem;margin-top:.5rem;padding:.8rem 1.2rem;display:flex}.modal__btn{border-radius:var(--radius-sm);transition:all var(--duration) var(--ease);padding:.4rem .8rem;font-size:.68rem;font-weight:600}.modal__btn--primary{background:var(--primary);color:#fff}.modal__btn--primary:hover:not(:disabled){background:#6b5bef}.modal__btn--primary:disabled{opacity:.4;cursor:not-allowed}.modal__btn--ghost{color:var(--text-dim)}.modal__btn--ghost:hover{color:var(--text-secondary);background:var(--surface-hover)}.modal__btn--danger{color:var(--danger)}.modal__btn--danger:hover{background:#ff4d6a14}.vfs{background:var(--bg-alt);border-left:1px solid var(--border);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex;overflow:hidden}.vfs__header{letter-spacing:.04em;text-transform:uppercase;color:var(--text-dim);border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.4rem;padding:.6rem .75rem;font-size:.7rem;font-weight:700;display:flex}.vfs__download-btn{width:24px;height:24px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;place-items:center;margin-left:auto;transition:all .15s;display:grid}.vfs__download-btn:hover:not(:disabled){background:var(--surface-hover);color:var(--primary)}.vfs__download-btn:disabled{opacity:.3;cursor:not-allowed}.vfs__download-btn--loading{color:var(--primary)}.vfs__download-spinner{border:2px solid #8b5cf633;border-top-color:var(--primary);border-radius:50%;width:12px;height:12px;animation:.6s linear infinite vfs-spin}@keyframes vfs-spin{to{transform:rotate(360deg)}}.vfs__tree{flex:4;padding:.25rem 0;overflow-y:auto}.vfs__tree::-webkit-scrollbar{width:4px}.vfs__tree::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.vfs__console{border-top:1px solid var(--border);flex-direction:column;flex:.7;min-height:36px;display:flex}.vfs__console-header{color:var(--text-dim);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--border);flex-shrink:0;align-items:center;gap:.4rem;padding:.35rem .75rem;font-size:.6rem;font-weight:700;display:flex}.vfs__console-badge{color:#fff;text-align:center;background:#ef4444;border-radius:8px;min-width:14px;padding:.05rem .3rem;font-size:.5rem;font-weight:700;line-height:1.3}.vfs__console-body{font-family:var(--font-code);flex:1;padding:.25rem .5rem;font-size:.58rem;line-height:1.5;overflow-y:auto}.vfs__console-body::-webkit-scrollbar{width:4px}.vfs__console-body::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.vfs__console-entry{cursor:pointer;word-break:break-word;background:#1e1e24d9;border:1px solid #78788c40;border-radius:6px;margin:.25rem 0;padding:.35rem .5rem;transition:border-color .3s,box-shadow .3s;animation:3s ease-in-out infinite consoleEntryBreath;position:relative;overflow:hidden}@keyframes consoleEntryBreath{0%,to{box-shadow:0 0 4px #7878a026,0 0 12px #64648c0f}50%{box-shadow:0 0 6px #8c82b440,0 0 20px #786eaa1a}}.vfs__console-entry-glow{pointer-events:none;z-index:0;-webkit-mask-composite:xor;background:linear-gradient(90deg,#0000,#a096c833 30%,#b4aadc59,#a096c833 70%,#0000) 0 0/200% 100%;border-radius:7px;padding:1px;animation:4s linear infinite consoleGlowFlow;position:absolute;inset:-1px;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0)}@keyframes consoleGlowFlow{0%{background-position:200% 0}to{background-position:-200% 0}}.vfs__console-entry:hover{border-color:#a08cdc66;box-shadow:0 0 8px #8c78c84d,0 0 24px #7864b41f}.vfs__console-entry:hover .vfs__console-entry-glow{background:linear-gradient(90deg,#0000,#b4a0f059 30%,#c8b4ff80,#b4a0f059 70%,#0000) 0 0/200% 100%;animation:2.5s linear infinite consoleGlowFlow}.vfs__console-code,.vfs__console-file,.vfs__console-msg{z-index:1;position:relative}.vfs__console-code{color:#fbbf24;font-weight:700}.vfs__console-file{color:var(--text-dim)}.vfs__console-msg{color:#f87171}.vfs__console-empty{color:var(--text-dim);text-align:center;padding:.4rem;font-size:.58rem}.vfs__console-fix{z-index:2;color:#fff;text-transform:uppercase;letter-spacing:.06em;pointer-events:none;background:#ef4444d9;border:none;border-radius:3px;padding:.1rem .35rem;font-size:.45rem;font-weight:800;transition:background .2s,transform .15s;position:absolute;top:4px;right:4px}.vfs__console-entry:hover .vfs__console-fix{background:#ef4444;transform:scale(1.08)}.vfs__empty{text-align:center;color:var(--text-dim);padding:1rem;font-size:.7rem}.vfs__node{width:100%;color:var(--text-secondary);font-size:.7rem;font-family:var(--font-code);cursor:pointer;text-align:left;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;align-items:center;gap:.3rem;padding:.2rem .5rem;transition:background .12s,color .12s;display:flex;overflow:hidden}.vfs__node:hover{background:var(--surface-hover);color:var(--text)}.vfs__node--active{color:var(--primary);background:#8b5cf614}.vfs__node--active:hover{background:#8b5cf61f}.vfs__chevron{color:var(--text-dim);flex-shrink:0;font-size:.45rem;transition:transform .15s}.vfs__chevron--open{transform:rotate(90deg)}.vfs__icon{flex-shrink:0;font-size:.75rem}.vfs__name{text-overflow:ellipsis;overflow:hidden}.vfs__size{color:var(--text-dim);flex-shrink:0;margin-left:auto;font-size:.55rem}.vfs__active-dot{background:var(--primary);border-radius:50%;flex-shrink:0;width:5px;height:5px;animation:1.5s ease-in-out infinite vfs-pulse;box-shadow:0 0 6px #8b5cf680}@keyframes vfs-pulse{0%,to{opacity:1}50%{opacity:.4}}.vfs__children{display:contents}.vfs__modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;background:#0009;place-items:center;display:grid;position:fixed;inset:0}.vfs__modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);flex-direction:column;width:min(800px,92vw);max-height:85vh;display:flex;box-shadow:0 20px 60px #0006}.vfs__modal-header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;gap:.5rem;padding:.6rem 1rem;display:flex}.vfs__modal-path{font-family:var(--font-code);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.75rem;overflow:hidden}.vfs__modal-actions{flex-shrink:0;align-items:center;gap:.4rem;display:flex}.vfs__modal-close{color:var(--text-dim);cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;padding:.2rem .5rem;font-size:1rem;transition:background .12s}.vfs__modal-close:hover{background:var(--surface-hover);color:var(--text)}.vfs__btn{border-radius:var(--radius-sm);border:1px solid var(--border);cursor:pointer;padding:.3rem .7rem;font-family:inherit;font-size:.7rem;font-weight:600;transition:all .15s}.vfs__btn--edit{color:var(--accent);border-color:var(--accent);background:0 0}.vfs__btn--edit:hover{background:var(--accent);color:#fff}.vfs__btn--save{background:var(--accent);color:#fff;border-color:var(--accent)}.vfs__btn--save:hover{filter:brightness(1.15)}.vfs__btn--cancel{color:var(--text-dim);border-color:var(--border);background:0 0}.vfs__btn--cancel:hover{background:var(--surface-hover);color:var(--text)}.vfs__editor{border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--bg);flex:1;display:flex;overflow:hidden}.vfs__line-numbers{background:var(--surface);border-right:1px solid var(--border);-webkit-user-select:none;user-select:none;flex-shrink:0;width:3rem;padding:1rem 0;overflow:hidden}.vfs__line-num{font-family:var(--font-code);color:var(--text-dim);text-align:right;padding-right:.6rem;font-size:.7rem;line-height:1.6}.vfs__modal-code{font-family:var(--font-code);color:var(--text-secondary);background:var(--bg);white-space:pre;tab-size:2;flex:1;margin:0;padding:1rem;font-size:.72rem;line-height:1.6;overflow:auto}.vfs__editor-textarea{font-family:var(--font-code);color:var(--text);background:var(--bg);white-space:pre;tab-size:2;resize:none;border:none;outline:none;flex:1;margin:0;padding:1rem;font-size:.72rem;line-height:1.6;overflow:auto}.vfs__editor-textarea:focus{outline:none}.vfs__modal-code::-webkit-scrollbar{width:6px;height:6px}.vfs__editor-textarea::-webkit-scrollbar{width:6px;height:6px}.vfs__modal-code::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.vfs__editor-textarea::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.vfs__toast{background:var(--accent);color:#fff;border-radius:var(--radius-md);z-index:300;padding:.6rem 1.2rem;font-size:.8rem;font-weight:600;animation:.3s ease-out vfs-toast-in;position:fixed;top:1rem;right:1rem;box-shadow:0 4px 20px #0000004d}@keyframes vfs-toast-in{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.chat__code-collapsed{border-radius:var(--radius-sm);border:1px solid var(--border);margin:.5rem 0;overflow:hidden}.chat__code-toggle{background:var(--surface);width:100%;color:var(--text-secondary);cursor:pointer;font-size:.72rem;font-family:var(--font-code);text-align:left;border:none;align-items:center;gap:.5rem;padding:.5rem .75rem;transition:background .12s;display:flex}.chat__code-toggle:hover{background:var(--surface-hover)}.chat__code-toggle-icon{color:var(--text-dim);flex-shrink:0;font-size:.5rem}.chat__code-toggle-file{color:var(--text);font-weight:600}.chat__code-toggle-info{color:var(--text-dim);margin-left:auto;font-size:.6rem}.chat__session-bar{border-bottom:1px solid var(--border);background:#14141a99;flex-shrink:0;align-items:center;height:30px;padding:0 .75rem;display:flex}.chat__new-component-btn{color:#8b5cf6;cursor:pointer;background:0 0;border:1px solid #8b5cf64d;border-radius:4px;justify-content:center;align-items:center;width:20px;height:20px;margin-left:auto;font-size:14px;line-height:1;transition:all .15s;display:flex}.chat__new-component-btn:hover{color:#a78bfa;background:#8b5cf626;border-color:#8b5cf6}.chat__session-title{color:var(--text-dim);cursor:pointer;white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;max-width:100%;font-size:.65rem;transition:color .15s;display:flex;overflow:hidden}.chat__session-title:hover{color:#e2e8f0}.chat__session-edit{opacity:0;font-size:.55rem;transition:opacity .15s}.chat__session-title:hover .chat__session-edit{opacity:.6}.chat__session-input{color:#e2e8f0;background:#ffffff0f;border:1px solid #a08cdc59;border-radius:4px;outline:none;width:100%;height:22px;padding:0 .4rem;font-family:inherit;font-size:.65rem}.chat__agent{color:var(--text-secondary);border-left:2px solid var(--border);flex-shrink:0;align-items:flex-start;gap:.4rem;margin:.15rem .75rem;padding:.35rem 1rem;font-size:.72rem;line-height:1.5;animation:.2s agent-fade-in;display:flex}@keyframes agent-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.chat__agent--thinking{color:var(--text);border-left-color:#a78bfa;font-style:italic}.thinking-box{border-radius:var(--radius-sm);background:#a78bfa0a;border:1px solid #a78bfa26;flex-shrink:0;margin:.15rem .75rem;transition:border-color .2s;animation:.2s agent-fade-in,2s ease-in-out infinite thinking-pulse;overflow:hidden}@keyframes thinking-pulse{0%,to{border-color:#a78bfa26}50%{border-color:#a78bfa66}}.thinking-box--open{border-color:#a78bfa40}.thinking-box__toggle{color:#a78bfa;cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:.4rem;width:100%;padding:.35rem .6rem;font-size:.68rem;font-weight:500;transition:background .15s;display:flex}.thinking-box__toggle:hover{background:#a78bfa0f}.thinking-box__arrow{font-size:.5rem;transition:transform .2s;display:inline-block}.thinking-box__arrow--open{transform:rotate(90deg)}.thinking-box__label{flex:1;font-style:italic}.thinking-box__dots{align-items:center;gap:3px;display:flex}.thinking-box__dots span{background:#a78bfa;border-radius:50%;width:4px;height:4px;animation:1.2s infinite thinkDot}.thinking-box__dots span:nth-child(2){animation-delay:.2s}.thinking-box__dots span:nth-child(3){animation-delay:.4s}@keyframes thinkDot{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1.1)}}.thinking-box__content{max-height:4.5em;color:var(--text-dim);white-space:pre-wrap;word-break:break-word;scroll-behavior:smooth;border-top:1px solid #a78bfa1a;padding:0 .6rem .4rem;font-size:.62rem;font-style:italic;line-height:1.5;overflow-y:auto}.thinking-box__content::-webkit-scrollbar{width:3px}.thinking-box__content::-webkit-scrollbar-thumb{background:#a78bfa4d;border-radius:2px}.chat__agent--tool{border-left-color:#60a5fa}.chat__agent--result{border-left-color:var(--border);color:var(--text-dim);max-height:3rem;font-size:.6rem;overflow:hidden}.chat__agent--completed{border-left-color:#4ade80}.chat__agent-check{color:#4ade80;flex-shrink:0;margin-left:.3rem;font-size:.75rem;animation:.3s check-pop}@keyframes check-pop{0%{opacity:0;transform:scale(.5)}60%{transform:scale(1.2)}to{opacity:1;transform:scale(1)}}.chat__agent--done{border-left-color:var(--accent);color:var(--text);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:#22d3b50a;padding:.5rem 1rem;font-weight:400;line-height:1.6}.chat__agent--done strong{color:var(--accent);font-weight:600}.chat__agent--done code{background:#ffffff0f;border-radius:4px;padding:.1em .35em;font-family:SF Mono,Fira Code,monospace;font-size:.9em}.chat__agent--error{border-left-color:var(--danger);color:var(--danger)}.chat__agent--text{color:var(--text);border-left-color:#a78bfa;flex-wrap:wrap;line-height:1.6}.chat__agent--text strong{color:#a78bfa;font-weight:600}.chat__agent--text code{background:#ffffff0f;border-radius:4px;padding:.1em .35em;font-family:SF Mono,Fira Code,monospace;font-size:.9em}.chat__agent--phase{border-left:none;align-items:center;gap:.4rem;margin:.3rem .75rem;padding:.2rem .75rem}.chat__phase-dot{background:#a78bfa;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:1.5s ease-in-out infinite phase-pulse}@keyframes phase-pulse{0%,to{opacity:.4;transform:scale(.8)}50%{opacity:1;transform:scale(1.1)}}.chat__phase-text{color:#a78bfa;letter-spacing:.01em;font-size:.68rem;font-style:italic;font-weight:500}.chat__agent--question{background:0 0;border-left-color:#818cf8;flex-direction:column;gap:10px;padding:0}.chat__question-header{align-items:flex-start;gap:8px;padding:10px 14px 0;display:flex}.chat__question-icon{flex-shrink:0;font-size:16px}.chat__question-options{flex-direction:column;gap:6px;padding:0 14px;display:flex}.chat__question-btn{color:var(--text);cursor:pointer;text-align:left;opacity:1;background:#6366f114;border:1px solid #6366f133;border-radius:10px;align-items:center;gap:10px;max-height:100px;padding:10px 14px;font-family:inherit;font-size:13px;transition:all .35s cubic-bezier(.4,0,.2,1);display:flex;overflow:hidden}.chat__question-btn:hover:not(:disabled){background:#6366f12e;border-color:#6366f166;transform:translate(4px)}.chat__question-btn--selected{cursor:default;box-shadow:0 0 12px #4ade801a;background:#4ade801a!important;border-color:#4ade804d!important}.chat__question-btn--selected .chat__question-num{color:#86efac;background:#4ade8033}.chat__question-btn--selected .chat__question-label{color:#86efac}.chat__question-btn--hidden{opacity:0;pointer-events:none;border-width:0;max-height:0;margin:0;padding-top:0;padding-bottom:0}.chat__question--answered .chat__question-options{gap:0}.chat__question-num{color:#a5b4fc;background:#6366f133;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:600;transition:all .3s;display:flex}.chat__question-btn-content{flex-direction:column;gap:2px;display:flex}.chat__question-label{color:#e2e8f0;font-weight:500;transition:color .3s}.chat__question-desc{color:#ffffff73;font-size:11px}.chat__question-timer{background:#ffffff0a;border-radius:6px;height:24px;margin:0 14px;position:relative;overflow:hidden}.chat__question-timer-bar{background:linear-gradient(90deg,#6366f14d,#6366f11a);border-radius:6px;height:100%;transition:width 1s linear;position:absolute;top:0;left:0}.chat__question-timer-text{z-index:1;color:#ffffff80;justify-content:center;align-items:center;height:100%;font-size:11px;display:flex;position:relative}.chat__question-custom{margin-top:2px}.chat__question-btn--custom{opacity:.75;border-style:dashed}.chat__question-btn--custom:hover:not(:disabled){opacity:1}.chat__question-custom-input-wrap{background:#8b5cf614;border:1px solid #8b5cf64d;border-radius:10px;align-items:center;gap:10px;padding:8px 14px;display:flex}.chat__question-custom-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;padding:4px 0;font-family:inherit;font-size:13px}.chat__question-custom-input::placeholder{color:#ffffff4d}.chat__question-custom-hint{color:#ffffff4d;background:#ffffff0f;border-radius:4px;flex-shrink:0;padding:2px 8px;font-size:10px}.chat__agent-streaming{align-items:center;gap:3px;margin-left:.5rem;display:inline-flex}.chat__streaming-dot{background:#a78bfa;border-radius:50%;width:4px;height:4px;animation:1.2s infinite thinkDot}.chat__agent-icon{flex-shrink:0;font-size:.8rem}.chat__tool-spinner{border:2px solid #a78bfa26;border-top-color:var(--accent,#a78bfa);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite tool-spin;display:inline-block}@keyframes tool-spin{to{transform:rotate(360deg)}}.chat__agent--active{border-left-color:var(--accent,#a78bfa)}.chat__agent-text{word-break:break-word;flex:1}.chat__agent-text h2.chat__heading,.chat__agent-text h3.chat__heading{color:var(--text-primary,#e2e8f0);margin:.35rem 0 .15rem;font-size:.8rem;font-weight:700;line-height:1.3}.chat__agent-text .chat__code-block{font-family:var(--font-code);white-space:pre;background:#00000059;border-radius:6px;margin:.3rem 0;padding:.5rem .65rem;font-size:.7rem;line-height:1.45;overflow-x:auto}.chat__agent--diff{align-items:center}.chat__diff-stats{font-family:var(--font-code);margin-left:.4rem;font-size:.65rem}.chat__diff-add{color:#4ade80;margin-right:.25rem;font-weight:700}.chat__diff-rm{color:#f87171;font-weight:700}.chat__diff-btn{color:var(--text-dim);border:1px solid var(--border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:4px;margin-left:auto;padding:.15rem .5rem;font-size:.6rem;font-weight:700;transition:color .2s,border-color .2s,background .2s}.chat__diff-btn:hover{color:#fff;background:#a08cdc1a;border-color:#a08cdc80}.diff-modal__overlay{z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.diff-modal{background:var(--surface);border:1px solid var(--border);border-radius:10px;flex-direction:column;width:90vw;max-width:1000px;max-height:80vh;display:flex;overflow:hidden;box-shadow:0 8px 32px #00000080}.diff-modal__header{border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;padding:.6rem 1rem;display:flex}.diff-modal__file{font-family:var(--font-code);color:var(--text-dim);font-size:.7rem}.diff-modal__close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.2rem .4rem;font-size:1rem;transition:background .15s}.diff-modal__close:hover{background:#ffffff1a}.diff-modal__panes{flex:1;display:flex;overflow:hidden}.diff-modal__pane{flex-direction:column;flex:1;display:flex;overflow:hidden}.diff-modal__pane--old{border-right:1px solid var(--border)}.diff-modal__pane-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);border-bottom:1px solid var(--border);flex-shrink:0;padding:.3rem .6rem;font-size:.55rem;font-weight:700}.diff-modal__code{font-family:var(--font-code);background:0 0;flex:1;margin:0;padding:0;font-size:.62rem;line-height:1.5;overflow-y:auto}.diff-modal__code::-webkit-scrollbar{width:4px}.diff-modal__code::-webkit-scrollbar-thumb{background:var(--border);border-radius:4px}.diff-modal__line{min-height:1.3em;padding:0 .5rem;display:flex}.diff-modal__line--rm{color:#fca5a5;background:#ef44441f}.diff-modal__line--add{color:#86efac;background:#4ade801f}.diff-modal__num{text-align:right;width:2.5rem;color:var(--text-dim);opacity:.5;-webkit-user-select:none;user-select:none;flex-shrink:0;padding-right:.5rem}.diff-modal__text{white-space:pre-wrap;word-break:break-all;flex:1}.diff-modal__empty{color:var(--text-dim);padding:1rem;font-style:italic}.sp{background:var(--bg-alt);border-right:1px solid var(--border);flex-direction:column;height:100%;font-size:.75rem;display:flex;overflow:hidden}.sp__tabs{flex-shrink:0;align-items:center;gap:2px;padding:8px 8px 0;display:flex}.sp__tab{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;border-radius:6px 6px 0 0;flex:1;padding:7px 0;font-size:.7rem;font-weight:600;transition:all .2s}.sp__tab:hover{color:var(--text-secondary);background:#ffffff08}.sp__tab--active{color:var(--text);background:var(--bg);border-color:var(--border)}.sp__search{background:var(--bg);border:1px solid var(--border);border-radius:6px;flex-shrink:0;align-items:center;gap:6px;margin:8px;padding:6px 8px;transition:border-color .2s;display:flex}.sp__search:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #6366f126}.sp__search-icon{color:var(--text-dim);opacity:.5;flex-shrink:0}.sp__search-input{color:var(--text);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:.7rem}.sp__search-input::placeholder{color:var(--text-dim);opacity:.6}.sp__search-clear{width:16px;height:16px;color:var(--text-dim);cursor:pointer;background:#ffffff14;border-radius:50%;justify-content:center;align-items:center;font-size:.7rem;transition:all .15s;display:flex}.sp__search-clear:hover{color:var(--text);background:#ffffff26}.sp__body{flex:1;overflow:hidden auto}.sp__section{padding:0}.sp__section-header{border-bottom:1px solid var(--border);background:var(--bg-alt);z-index:2;justify-content:space-between;align-items:center;padding:6px 12px;display:flex;position:sticky;top:0}.sp__section-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);font-size:.6rem;font-weight:700}.sp__section-count{color:var(--text-dim);text-align:center;background:#ffffff0f;border-radius:8px;min-width:18px;padding:1px 6px;font-size:.6rem;font-weight:600}.sp__list{margin:0;padding:4px 0;list-style:none}.sp__item{cursor:pointer;border-left:2px solid #0000;align-items:center;gap:8px;padding:6px 12px;transition:background .12s;display:flex;position:relative}.sp__item:hover{background:#ffffff0a}.sp__item--selected{border-left-color:var(--primary);background:#6366f126!important}.sp__item--selected .sp__item-label{color:#a5b4fc}.sp__item--drag{cursor:grab}.sp__item--drag:active{cursor:grabbing}.sp__item--dragging{opacity:.4;background:#6366f114}.sp__item-icon{width:20px;height:20px;color:var(--text-dim);opacity:.6;flex-shrink:0;justify-content:center;align-items:center;display:flex}.sp__item-icon--component{color:var(--accent);opacity:.8}.sp__item-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-secondary);flex:1;font-size:.72rem;font-weight:500;overflow:hidden}.sp__item-index{color:var(--text-dim);opacity:.4;font-size:.6rem;font-family:var(--font-mono)}.sp__item-drag-hint{color:var(--text-dim);opacity:.2;letter-spacing:-1px;-webkit-user-select:none;user-select:none;font-size:.65rem;transition:opacity .15s}.sp__item:hover .sp__item-drag-hint{opacity:.5}.sp__item-delete{opacity:0;width:18px;height:18px;color:var(--text-dim);border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.sp__item:hover .sp__item-delete{opacity:.5}.sp__item-delete:hover{color:#fca5a5;background:#ef444426;opacity:1!important}.sp__empty{text-align:center;color:var(--text-dim);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:2rem 1.5rem;font-size:.68rem;line-height:1.5;display:flex}.sp__footer{border-top:1px solid var(--border);flex-shrink:0;padding:6px 8px}.sp__footer-btn{width:100%;color:var(--text-dim);cursor:pointer;background:0 0;border-radius:6px;align-items:center;gap:6px;padding:6px 8px;font-size:.68rem;font-weight:500;transition:all .15s;display:flex}.sp__footer-btn:hover{color:var(--text-secondary);background:#ffffff0d}.scene-canvas{background:#0f1115;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.scene-canvas__toolbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:40px;padding:0 1rem;display:flex}.scene-canvas__devices{border-radius:var(--radius-sm);border:1px solid var(--border);background:#0003;align-items:center;gap:.2rem;padding:3px;display:flex}.scene-canvas__btn{width:28px;height:28px;color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;font-size:.85rem;transition:all .2s;display:flex}.scene-canvas__btn:hover{color:var(--text);background:#ffffff1a}.scene-canvas__btn.active{background:var(--primary);color:#fff}.scene-canvas__actions .scene-canvas__btn{color:#fca5a5;background:#ef44441a}.scene-canvas__actions .scene-canvas__btn:hover{background:#ef444433}.scene-canvas__viewport-wrap{flex:1;justify-content:center;align-items:center;padding:2rem;display:flex;overflow:auto}.scene-canvas__device-frame{background:#fff;border-radius:12px;flex-direction:column;transition:width .3s cubic-bezier(.4,0,.2,1);display:flex;position:relative;overflow:hidden;box-shadow:0 20px 40px #0006,0 0 0 1px #ffffff1a}.scene-canvas__device-frame--desktop{border-radius:4px;width:100%;max-width:1200px;height:100%;min-height:600px}.scene-canvas__device-frame--tablet{flex-shrink:0;width:768px;height:1024px}.scene-canvas__device-frame--mobile{flex-shrink:0;width:375px;height:812px}.scene-canvas__iframe{background:#fff;border:none;flex:1;width:100%;height:100%}.scene-canvas__device-frame--dragover:after{content:"";border:3px dashed var(--primary);z-index:10;pointer-events:none;background:#6366f11a;position:absolute;inset:0}.scene-canvas__drop-overlay{z-index:5;background:0 0;display:none;position:absolute;inset:0}.scene-canvas__device-frame:hover .scene-canvas__drop-overlay,.scene-canvas__device-frame--dragover .scene-canvas__drop-overlay{display:block}.landing-body{font-family:var(--font-body);color:#0e0e12;overflow-x:hidden;overflow-y:overlay;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#fff;min-height:100vh;line-height:1.6}@media(prefers-color-scheme:dark){.landing-body{color:#f5f5f5;background-color:#1c1c1c}}.landing-body::-webkit-scrollbar{width:6px}.landing-body::-webkit-scrollbar-track{background:0 0}.landing-body::-webkit-scrollbar-thumb{background:#0000001f;border-radius:3px}.landing-body::-webkit-scrollbar-thumb:hover{background:#0003}.landing-body{scrollbar-width:thin;scrollbar-color:#0000001f transparent}@keyframes landingFadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes landingGlow{0%,to{opacity:.4}50%{opacity:.7}}@keyframes landingPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes landingFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes landingShimmer{0%{background-position:-200%}to{background-position:200%}}.landing-container{width:100%;max-width:1440px;margin-left:auto;margin-right:auto;padding-left:clamp(1.5rem,6vw,110px);padding-right:clamp(1.5rem,6vw,110px)}.node-edit-modal{z-index:9998;color:#ffffffd9;background:#0d0d0d;border:1px solid #ffffff0f;border-radius:12px;width:220px;font-family:Plus Jakarta Sans,system-ui,sans-serif;animation:.25s cubic-bezier(.16,1,.3,1) forwards nodeModalEntry;position:fixed;overflow:hidden;box-shadow:0 4px 24px #00000080,inset 0 0 0 1px #ffffff08,inset 0 1px #ffffff0a}@keyframes nodeModalEntry{0%{opacity:0;transform:translateY(6px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.node-edit-modal__header{border-bottom:1px solid var(--border,#ffffff0f);background:#ffffff05;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.node-edit-modal__tag-info{align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.node-edit-modal__tag{color:#38bdf8;white-space:nowrap;background:#38bdf814;border-radius:4px;padding:2px 8px;font-family:JetBrains Mono,SF Mono,Fira Code,monospace;font-size:.78rem;font-weight:500}.node-edit-modal__display-name{color:#fff6;white-space:nowrap;text-overflow:ellipsis;font-size:.72rem;overflow:hidden}.node-edit-modal__close{color:#ffffff59;cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;place-items:center;width:20px;height:20px;transition:color .15s,background .15s;display:grid}.node-edit-modal__close:hover{color:#fff;background:#ffffff0f}.node-edit-modal__source{color:#ffffff4d;white-space:nowrap;text-overflow:ellipsis;border-bottom:1px solid #ffffff0a;align-items:center;gap:5px;padding:5px 10px;font-family:JetBrains Mono,monospace;font-size:.68rem;display:flex;overflow:hidden}.node-edit-modal__source svg{opacity:.5;flex-shrink:0}.node-edit-modal__prompt{align-items:flex-end;gap:6px;padding:8px 10px;display:flex}.node-edit-modal__prompt-input{color:#ffffffe0;resize:none;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:8px;outline:none;flex:1;min-width:0;min-height:26px;max-height:80px;padding:5px 10px;font-family:Plus Jakarta Sans,system-ui,sans-serif;font-size:.72rem;line-height:1.4;transition:border-color .15s,background .15s;overflow-y:auto}.node-edit-modal__prompt-input:focus{background:#ffffff14;border-color:#38bdf866}.node-edit-modal__prompt-input::placeholder{color:#ffffff4d;font-style:italic}.node-edit-modal__prompt-send{color:#fff;cursor:pointer;background:#38bdf8cc;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;transition:background .15s,opacity .2s,transform .15s;display:flex}.node-edit-modal__prompt-send:hover{background:#38bdf8;transform:translateY(-1px)}.node-edit-modal__prompt-send:active{transform:scale(.95)}.node-edit-modal__prompt-send--hidden{opacity:0;pointer-events:none;transform:scale(.8)}.node-edit-modal__prompt-send:disabled{cursor:not-allowed}.node-edit-modal__dims{color:#ffffff73;background:#ffffff04;border-top:1px solid #ffffff0a;justify-content:space-between;align-items:center;padding:6px 14px;font-family:JetBrains Mono,monospace;font-size:.72rem;display:flex}.node-edit-modal__dims-pos{color:#ffffff40}.node-edit-modal__cord-path{animation:1.5s linear infinite cordFlow}@keyframes cordFlow{0%{stroke-dashoffset:0}to{stroke-dashoffset:-20px}}@media(prefers-color-scheme:light){.node-edit-modal{color:#1e293b;background:#fff;border-color:#0f172a1a;box-shadow:0 4px 24px #0f172a1f,inset 0 0 0 1px #0f172a0a}.node-edit-modal__header{background:#0f172a05;border-bottom-color:#0f172a14}.node-edit-modal__tag{color:#0284c7;background:#0284c714}.node-edit-modal__display-name{color:#0f172a73}.node-edit-modal__close{color:#0f172a59}.node-edit-modal__close:hover{color:#0f172a;background:#0f172a0f}.node-edit-modal__source{color:#0f172a59;border-bottom-color:#0f172a0f}.node-edit-modal__prompt-input{color:#1e293b;background:#0f172a0a;border-color:#0f172a1a}.node-edit-modal__prompt-input:focus{background:#0f172a0f;border-color:#0284c766}.node-edit-modal__prompt-input::placeholder{color:#0f172a59}.node-edit-modal__prompt-send{background:#0284c7d9}.node-edit-modal__prompt-send:hover{background:#0284c7}.node-edit-modal__dims{color:#0f172a66;background:#0f172a05;border-top-color:#0f172a0f}.node-edit-modal__dims-pos{color:#0f172a40}.chat__element-ctx{background:#0284c70f;border-color:#0284c72e #0284c72e #0284c72e #0284c780}.chat__element-ctx-tag{color:#0284c7;background:#0284c714}.chat__element-ctx-name{color:#0f172a80}.chat__element-ctx-remove{color:#0f172a4d}.chat__element-ctx-remove:hover{color:#dc2626;background:#dc262614}.chat__element-ctx--history{background:#0284c70a;border-color:#0284c71f}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-gradient-position{syntax:"*";inherits:false}@property --tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --tw-gradient-stops{syntax:"*";inherits:false}@property --tw-gradient-via-stops{syntax:"*";inherits:false}@property --tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
