@layer theme,base,components,utilities;@layer theme{@theme default{ --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; --font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif; --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; --color-red-50: oklch(97.1% .013 17.38); --color-red-100: oklch(93.6% .032 17.717); --color-red-200: oklch(88.5% .062 18.334); --color-red-300: oklch(80.8% .114 19.571); --color-red-400: oklch(70.4% .191 22.216); --color-red-500: oklch(63.7% .237 25.331); --color-red-600: oklch(57.7% .245 27.325); --color-red-700: oklch(50.5% .213 27.518); --color-red-800: oklch(44.4% .177 26.899); --color-red-900: oklch(39.6% .141 25.723); --color-red-950: oklch(25.8% .092 26.042); --color-orange-50: oklch(98% .016 73.684); --color-orange-100: oklch(95.4% .038 75.164); --color-orange-200: oklch(90.1% .076 70.697); --color-orange-300: oklch(83.7% .128 66.29); --color-orange-400: oklch(75% .183 55.934); --color-orange-500: oklch(70.5% .213 47.604); --color-orange-600: oklch(64.6% .222 41.116); --color-orange-700: oklch(55.3% .195 38.402); --color-orange-800: oklch(47% .157 37.304); --color-orange-900: oklch(40.8% .123 38.172); --color-orange-950: oklch(26.6% .079 36.259); --color-amber-50: oklch(98.7% .022 95.277); --color-amber-100: oklch(96.2% .059 95.617); --color-amber-200: oklch(92.4% .12 95.746); --color-amber-300: oklch(87.9% .169 91.605); --color-amber-400: oklch(82.8% .189 84.429); --color-amber-500: oklch(76.9% .188 70.08); --color-amber-600: oklch(66.6% .179 58.318); --color-amber-700: oklch(55.5% .163 48.998); --color-amber-800: oklch(47.3% .137 46.201); --color-amber-900: oklch(41.4% .112 45.904); --color-amber-950: oklch(27.9% .077 45.635); --color-yellow-50: oklch(98.7% .026 102.212); --color-yellow-100: oklch(97.3% .071 103.193); --color-yellow-200: oklch(94.5% .129 101.54); --color-yellow-300: oklch(90.5% .182 98.111); --color-yellow-400: oklch(85.2% .199 91.936); --color-yellow-500: oklch(79.5% .184 86.047); --color-yellow-600: oklch(68.1% .162 75.834); --color-yellow-700: oklch(55.4% .135 66.442); --color-yellow-800: oklch(47.6% .114 61.907); --color-yellow-900: oklch(42.1% .095 57.708); --color-yellow-950: oklch(28.6% .066 53.813); --color-lime-50: oklch(98.6% .031 120.757); --color-lime-100: oklch(96.7% .067 122.328); --color-lime-200: oklch(93.8% .127 124.321); --color-lime-300: oklch(89.7% .196 126.665); --color-lime-400: oklch(84.1% .238 128.85); --color-lime-500: oklch(76.8% .233 130.85); --color-lime-600: oklch(64.8% .2 131.684); --color-lime-700: oklch(53.2% .157 131.589); --color-lime-800: oklch(45.3% .124 130.933); --color-lime-900: oklch(40.5% .101 131.063); --color-lime-950: oklch(27.4% .072 132.109); --color-green-50: oklch(98.2% .018 155.826); --color-green-100: oklch(96.2% .044 156.743); --color-green-200: oklch(92.5% .084 155.995); --color-green-300: oklch(87.1% .15 154.449); --color-green-400: oklch(79.2% .209 151.711); --color-green-500: oklch(72.3% .219 149.579); --color-green-600: oklch(62.7% .194 149.214); --color-green-700: oklch(52.7% .154 150.069); --color-green-800: oklch(44.8% .119 151.328); --color-green-900: oklch(39.3% .095 152.535); --color-green-950: oklch(26.6% .065 152.934); --color-emerald-50: oklch(97.9% .021 166.113); --color-emerald-100: oklch(95% .052 163.051); --color-emerald-200: oklch(90.5% .093 164.15); --color-emerald-300: oklch(84.5% .143 164.978); --color-emerald-400: oklch(76.5% .177 163.223); --color-emerald-500: oklch(69.6% .17 162.48); --color-emerald-600: oklch(59.6% .145 163.225); --color-emerald-700: oklch(50.8% .118 165.612); --color-emerald-800: oklch(43.2% .095 166.913); --color-emerald-900: oklch(37.8% .077 168.94); --color-emerald-950: oklch(26.2% .051 172.552); --color-teal-50: oklch(98.4% .014 180.72); --color-teal-100: oklch(95.3% .051 180.801); --color-teal-200: oklch(91% .096 180.426); --color-teal-300: oklch(85.5% .138 181.071); --color-teal-400: oklch(77.7% .152 181.912); --color-teal-500: oklch(70.4% .14 182.503); --color-teal-600: oklch(60% .118 184.704); --color-teal-700: oklch(51.1% .096 186.391); --color-teal-800: oklch(43.7% .078 188.216); --color-teal-900: oklch(38.6% .063 188.416); --color-teal-950: oklch(27.7% .046 192.524); --color-cyan-50: oklch(98.4% .019 200.873); --color-cyan-100: oklch(95.6% .045 203.388); --color-cyan-200: oklch(91.7% .08 205.041); --color-cyan-300: oklch(86.5% .127 207.078); --color-cyan-400: oklch(78.9% .154 211.53); --color-cyan-500: oklch(71.5% .143 215.221); --color-cyan-600: oklch(60.9% .126 221.723); --color-cyan-700: oklch(52% .105 223.128); --color-cyan-800: oklch(45% .085 224.283); --color-cyan-900: oklch(39.8% .07 227.392); --color-cyan-950: oklch(30.2% .056 229.695); --color-sky-50: oklch(97.7% .013 236.62); --color-sky-100: oklch(95.1% .026 236.824); --color-sky-200: oklch(90.1% .058 230.902); --color-sky-300: oklch(82.8% .111 230.318); --color-sky-400: oklch(74.6% .16 232.661); --color-sky-500: oklch(68.5% .169 237.323); --color-sky-600: oklch(58.8% .158 241.966); --color-sky-700: oklch(50% .134 242.749); --color-sky-800: oklch(44.3% .11 240.79); --color-sky-900: oklch(39.1% .09 240.876); --color-sky-950: oklch(29.3% .066 243.157); --color-blue-50: oklch(97% .014 254.604); --color-blue-100: oklch(93.2% .032 255.585); --color-blue-200: oklch(88.2% .059 254.128); --color-blue-300: oklch(80.9% .105 251.813); --color-blue-400: oklch(70.7% .165 254.624); --color-blue-500: oklch(62.3% .214 259.815); --color-blue-600: oklch(54.6% .245 262.881); --color-blue-700: oklch(48.8% .243 264.376); --color-blue-800: oklch(42.4% .199 265.638); --color-blue-900: oklch(37.9% .146 265.522); --color-blue-950: oklch(28.2% .091 267.935); --color-indigo-50: oklch(96.2% .018 272.314); --color-indigo-100: oklch(93% .034 272.788); --color-indigo-200: oklch(87% .065 274.039); --color-indigo-300: oklch(78.5% .115 274.713); --color-indigo-400: oklch(67.3% .182 276.935); --color-indigo-500: oklch(58.5% .233 277.117); --color-indigo-600: oklch(51.1% .262 276.966); --color-indigo-700: oklch(45.7% .24 277.023); --color-indigo-800: oklch(39.8% .195 277.366); --color-indigo-900: oklch(35.9% .144 278.697); --color-indigo-950: oklch(25.7% .09 281.288); --color-violet-50: oklch(96.9% .016 293.756); --color-violet-100: oklch(94.3% .029 294.588); --color-violet-200: oklch(89.4% .057 293.283); --color-violet-300: oklch(81.1% .111 293.571); --color-violet-400: oklch(70.2% .183 293.541); --color-violet-500: oklch(60.6% .25 292.717); --color-violet-600: oklch(54.1% .281 293.009); --color-violet-700: oklch(49.1% .27 292.581); --color-violet-800: oklch(43.2% .232 292.759); --color-violet-900: oklch(38% .189 293.745); --color-violet-950: oklch(28.3% .141 291.089); --color-purple-50: oklch(97.7% .014 308.299); --color-purple-100: oklch(94.6% .033 307.174); --color-purple-200: oklch(90.2% .063 306.703); --color-purple-300: oklch(82.7% .119 306.383); --color-purple-400: oklch(71.4% .203 305.504); --color-purple-500: oklch(62.7% .265 303.9); --color-purple-600: oklch(55.8% .288 302.321); --color-purple-700: oklch(49.6% .265 301.924); --color-purple-800: oklch(43.8% .218 303.724); --color-purple-900: oklch(38.1% .176 304.987); --color-purple-950: oklch(29.1% .149 302.717); --color-fuchsia-50: oklch(97.7% .017 320.058); --color-fuchsia-100: oklch(95.2% .037 318.852); --color-fuchsia-200: oklch(90.3% .076 319.62); --color-fuchsia-300: oklch(83.3% .145 321.434); --color-fuchsia-400: oklch(74% .238 322.16); --color-fuchsia-500: oklch(66.7% .295 322.15); --color-fuchsia-600: oklch(59.1% .293 322.896); --color-fuchsia-700: oklch(51.8% .253 323.949); --color-fuchsia-800: oklch(45.2% .211 324.591); --color-fuchsia-900: oklch(40.1% .17 325.612); --color-fuchsia-950: oklch(29.3% .136 325.661); --color-pink-50: oklch(97.1% .014 343.198); --color-pink-100: oklch(94.8% .028 342.258); --color-pink-200: oklch(89.9% .061 343.231); --color-pink-300: oklch(82.3% .12 346.018); --color-pink-400: oklch(71.8% .202 349.761); --color-pink-500: oklch(65.6% .241 354.308); --color-pink-600: oklch(59.2% .249 .584); --color-pink-700: oklch(52.5% .223 3.958); --color-pink-800: oklch(45.9% .187 3.815); --color-pink-900: oklch(40.8% .153 2.432); --color-pink-950: oklch(28.4% .109 3.907); --color-rose-50: oklch(96.9% .015 12.422); --color-rose-100: oklch(94.1% .03 12.58); --color-rose-200: oklch(89.2% .058 10.001); --color-rose-300: oklch(81% .117 11.638); --color-rose-400: oklch(71.2% .194 13.428); --color-rose-500: oklch(64.5% .246 16.439); --color-rose-600: oklch(58.6% .253 17.585); --color-rose-700: oklch(51.4% .222 16.935); --color-rose-800: oklch(45.5% .188 13.697); --color-rose-900: oklch(41% .159 10.272); --color-rose-950: oklch(27.1% .105 12.094); --color-slate-50: oklch(98.4% .003 247.858); --color-slate-100: oklch(96.8% .007 247.896); --color-slate-200: oklch(92.9% .013 255.508); --color-slate-300: oklch(86.9% .022 252.894); --color-slate-400: oklch(70.4% .04 256.788); --color-slate-500: oklch(55.4% .046 257.417); --color-slate-600: oklch(44.6% .043 257.281); --color-slate-700: oklch(37.2% .044 257.287); --color-slate-800: oklch(27.9% .041 260.031); --color-slate-900: oklch(20.8% .042 265.755); --color-slate-950: oklch(12.9% .042 264.695); --color-gray-50: oklch(98.5% .002 247.839); --color-gray-100: oklch(96.7% .003 264.542); --color-gray-200: oklch(92.8% .006 264.531); --color-gray-300: oklch(87.2% .01 258.338); --color-gray-400: oklch(70.7% .022 261.325); --color-gray-500: oklch(55.1% .027 264.364); --color-gray-600: oklch(44.6% .03 256.802); --color-gray-700: oklch(37.3% .034 259.733); --color-gray-800: oklch(27.8% .033 256.848); --color-gray-900: oklch(21% .034 264.665); --color-gray-950: oklch(13% .028 261.692); --color-zinc-50: oklch(98.5% 0 0); --color-zinc-100: oklch(96.7% .001 286.375); --color-zinc-200: oklch(92% .004 286.32); --color-zinc-300: oklch(87.1% .006 286.286); --color-zinc-400: oklch(70.5% .015 286.067); --color-zinc-500: oklch(55.2% .016 285.938); --color-zinc-600: oklch(44.2% .017 285.786); --color-zinc-700: oklch(37% .013 285.805); --color-zinc-800: oklch(27.4% .006 286.033); --color-zinc-900: oklch(21% .006 285.885); --color-zinc-950: oklch(14.1% .005 285.823); --color-neutral-50: oklch(98.5% 0 0); --color-neutral-100: oklch(97% 0 0); --color-neutral-200: oklch(92.2% 0 0); --color-neutral-300: oklch(87% 0 0); --color-neutral-400: oklch(70.8% 0 0); --color-neutral-500: oklch(55.6% 0 0); --color-neutral-600: oklch(43.9% 0 0); --color-neutral-700: oklch(37.1% 0 0); --color-neutral-800: oklch(26.9% 0 0); --color-neutral-900: oklch(20.5% 0 0); --color-neutral-950: oklch(14.5% 0 0); --color-stone-50: oklch(98.5% .001 106.423); --color-stone-100: oklch(97% .001 106.424); --color-stone-200: oklch(92.3% .003 48.717); --color-stone-300: oklch(86.9% .005 56.366); --color-stone-400: oklch(70.9% .01 56.259); --color-stone-500: oklch(55.3% .013 58.071); --color-stone-600: oklch(44.4% .011 73.639); --color-stone-700: oklch(37.4% .01 67.558); --color-stone-800: oklch(26.8% .007 34.298); --color-stone-900: oklch(21.6% .006 56.043); --color-stone-950: oklch(14.7% .004 49.25); --color-black: #000; --color-white: #fff; --spacing: .25rem; --breakpoint-sm: 40rem; --breakpoint-md: 48rem; --breakpoint-lg: 64rem; --breakpoint-xl: 80rem; --breakpoint-2xl: 96rem; --container-3xs: 16rem; --container-2xs: 18rem; --container-xs: 20rem; --container-sm: 24rem; --container-md: 28rem; --container-lg: 32rem; --container-xl: 36rem; --container-2xl: 42rem; --container-3xl: 48rem; --container-4xl: 56rem; --container-5xl: 64rem; --container-6xl: 72rem; --container-7xl: 80rem; --text-xs: .75rem; --text-xs--line-height: calc(1 / .75); --text-sm: .875rem; --text-sm--line-height: calc(1.25 / .875); --text-base: 1rem; --text-base--line-height: 1.5 ; --text-lg: 1.125rem; --text-lg--line-height: calc(1.75 / 1.125); --text-xl: 1.25rem; --text-xl--line-height: calc(1.75 / 1.25); --text-2xl: 1.5rem; --text-2xl--line-height: calc(2 / 1.5); --text-3xl: 1.875rem; --text-3xl--line-height: 1.2 ; --text-4xl: 2.25rem; --text-4xl--line-height: calc(2.5 / 2.25); --text-5xl: 3rem; --text-5xl--line-height: 1; --text-6xl: 3.75rem; --text-6xl--line-height: 1; --text-7xl: 4.5rem; --text-7xl--line-height: 1; --text-8xl: 6rem; --text-8xl--line-height: 1; --text-9xl: 8rem; --text-9xl--line-height: 1; --font-weight-thin: 100; --font-weight-extralight: 200; --font-weight-light: 300; --font-weight-normal: 400; --font-weight-medium: 500; --font-weight-semibold: 600; --font-weight-bold: 700; --font-weight-extrabold: 800; --font-weight-black: 900; --tracking-tighter: -.05em; --tracking-tight: -.025em; --tracking-normal: 0em; --tracking-wide: .025em; --tracking-wider: .05em; --tracking-widest: .1em; --leading-tight: 1.25; --leading-snug: 1.375; --leading-normal: 1.5; --leading-relaxed: 1.625; --leading-loose: 2; --radius-xs: .125rem; --radius-sm: .25rem; --radius-md: .375rem; --radius-lg: .5rem; --radius-xl: .75rem; --radius-2xl: 1rem; --radius-3xl: 1.5rem; --radius-4xl: 2rem; --shadow-2xs: 0 1px rgb(0 0 0 / .05); --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / .05); --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1); --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1); --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1); --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / .25); --inset-shadow-2xs: inset 0 1px rgb(0 0 0 / .05); --inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / .05); --inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / .05); --drop-shadow-xs: 0 1px 1px rgb(0 0 0 / .05); --drop-shadow-sm: 0 1px 2px rgb(0 0 0 / .15); --drop-shadow-md: 0 3px 3px rgb(0 0 0 / .12); --drop-shadow-lg: 0 4px 4px rgb(0 0 0 / .15); --drop-shadow-xl: 0 9px 7px rgb(0 0 0 / .1); --drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / .15); --text-shadow-2xs: 0px 1px 0px rgb(0 0 0 / .15); --text-shadow-xs: 0px 1px 1px rgb(0 0 0 / .2); --text-shadow-sm: 0px 1px 0px rgb(0 0 0 / .075), 0px 1px 1px rgb(0 0 0 / .075), 0px 2px 2px rgb(0 0 0 / .075); --text-shadow-md: 0px 1px 1px rgb(0 0 0 / .1), 0px 1px 2px rgb(0 0 0 / .1), 0px 2px 4px rgb(0 0 0 / .1); --text-shadow-lg: 0px 1px 2px rgb(0 0 0 / .1), 0px 3px 2px rgb(0 0 0 / .1), 0px 4px 8px rgb(0 0 0 / .1); --ease-in: cubic-bezier(.4, 0, 1, 1); --ease-out: cubic-bezier(0, 0, .2, 1); --ease-in-out: cubic-bezier(.4, 0, .2, 1); --animate-spin: spin 1s linear infinite; --animate-ping: ping 1s cubic-bezier(0, 0, .2, 1) infinite; --animate-pulse: pulse 2s cubic-bezier(.4, 0, .6, 1) infinite; --animate-bounce: bounce 1s infinite; @keyframes spin { to { transform: rotate(360deg); } } @keyframes ping { 75%, 100% { transform: scale(2); opacity: 0; } } @keyframes pulse { 50% { opacity: .5; } } @keyframes bounce { 0%, 100% { transform: translateY(-25%); animation-timing-function: cubic-bezier(.8, 0, 1, 1); } 50% { transform: none; animation-timing-function: cubic-bezier(0, 0, .2, 1); } } --blur-xs: 4px; --blur-sm: 8px; --blur-md: 12px; --blur-lg: 16px; --blur-xl: 24px; --blur-2xl: 40px; --blur-3xl: 64px; --perspective-dramatic: 100px; --perspective-near: 300px; --perspective-normal: 500px; --perspective-midrange: 800px; --perspective-distant: 1200px; --aspect-video: 16 / 9; --default-transition-duration: .15s; --default-transition-timing-function: cubic-bezier(.4, 0, .2, 1); --default-font-family: --theme(--font-sans, initial); --default-font-feature-settings: --theme( --font-sans--font-feature-settings, initial ); --default-font-variation-settings: --theme( --font-sans--font-variation-settings, initial ); --default-mono-font-family: --theme(--font-mono, initial); --default-mono-font-feature-settings: --theme( --font-mono--font-feature-settings, initial ); --default-mono-font-variation-settings: --theme( --font-mono--font-variation-settings, initial ); }@theme default inline reference{ --blur: 8px; --shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1); --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / .05); --drop-shadow: 0 1px 2px rgb(0 0 0 / .1), 0 1px 1px rgb(0 0 0 / .06); --radius: .25rem; --max-width-prose: 65ch; }}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:--theme(--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:--theme(--default-font-feature-settings,normal);font-variation-settings:--theme(--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:--theme(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:--theme(--default-mono-font-feature-settings,normal);font-variation-settings:--theme(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}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{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}: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: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,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-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]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{@tailwind utilities;}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@theme inline{--animation-delay-0: 0s; --animation-delay-75: 75ms; --animation-delay-100: .1s; --animation-delay-150: .15s; --animation-delay-200: .2s; --animation-delay-300: .3s; --animation-delay-500: .5s; --animation-delay-700: .7s; --animation-delay-1000: 1s; --animation-repeat-0: 0; --animation-repeat-1: 1; --animation-repeat-infinite: infinite; --animation-direction-normal: normal; --animation-direction-reverse: reverse; --animation-direction-alternate: alternate; --animation-direction-alternate-reverse: alternate-reverse; --animation-fill-mode-none: none; --animation-fill-mode-forwards: forwards; --animation-fill-mode-backwards: backwards; --animation-fill-mode-both: both; --percentage-0: 0; --percentage-5: .05; --percentage-10: .1; --percentage-15: .15; --percentage-20: .2; --percentage-25: .25; --percentage-30: .3; --percentage-35: .35; --percentage-40: .4; --percentage-45: .45; --percentage-50: .5; --percentage-55: .55; --percentage-60: .6; --percentage-65: .65; --percentage-70: .7; --percentage-75: .75; --percentage-80: .8; --percentage-85: .85; --percentage-90: .9; --percentage-95: .95; --percentage-100: 1; --percentage-translate-full: 1; --animate-in: enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-out: exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes enter { from { opacity: var(--tw-enter-opacity,1); transform: translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0)); filter: blur(var(--tw-enter-blur,0)); }}@keyframes exit { to { opacity: var(--tw-exit-opacity,1); transform: translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0)); filter: blur(var(--tw-exit-blur,0)); }}--animate-accordion-down: accordion-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-accordion-up: accordion-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-down: collapsible-down var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); --animate-collapsible-up: collapsible-up var(--tw-animation-duration,var(--tw-duration,.2s))var(--tw-ease,ease-out)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none); @keyframes accordion-down { from { height: 0; }to { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }}@keyframes accordion-up { from { height: var(--radix-accordion-content-height,var(--bits-accordion-content-height,var(--reka-accordion-content-height,var(--kb-accordion-content-height,var(--ngp-accordion-content-height,auto))))); }to { height: 0; }}@keyframes collapsible-down { from { height: 0; }to { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }}@keyframes collapsible-up { from { height: var(--radix-collapsible-content-height,var(--bits-collapsible-content-height,var(--reka-collapsible-content-height,var(--kb-collapsible-content-height,auto)))); }to { height: 0; }}--animate-caret-blink: caret-blink 1.25s ease-out infinite; @keyframes caret-blink { 0%,70%,100% { opacity: 1; }20%,50% { opacity: 0; }}}@utility animation-duration-*{--tw-animation-duration: calc(--value(number)*1ms) ; --tw-animation-duration: --value(--animation-duration-*,[duration],"initial",[*]); animation-duration: calc(--value(number)*1ms) ; animation-duration: --value(--animation-duration-*,[duration],"initial",[*]);}@utility delay-*{animation-delay: calc(--value(number)*1ms) ; animation-delay: --value(--animation-delay-*,[duration],"initial",[*]); --tw-animation-delay: calc(--value(number)*1ms) ; --tw-animation-delay: --value(--animation-delay-*,[duration],"initial",[*]);}@utility repeat-*{animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]); --tw-animation-iteration-count: --value(--animation-repeat-*,number,"initial",[*]);}@utility direction-*{animation-direction: --value(--animation-direction-*,"initial",[*]); --tw-animation-direction: --value(--animation-direction-*,"initial",[*]);}@utility fill-mode-*{animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]); --tw-animation-fill-mode: --value(--animation-fill-mode-*,"initial",[*]);}@utility running{animation-play-state: running;}@utility paused{animation-play-state: paused;}@utility play-state-*{animation-play-state: --value("initial",[*]);}@utility blur-in{--tw-enter-blur: 20px;}@utility blur-in-*{--tw-enter-blur: calc(--value(number)*1px) ; --tw-enter-blur: --value(--blur-*,[*]);}@utility blur-out{--tw-exit-blur: 20px;}@utility blur-out-*{--tw-exit-blur: calc(--value(number)*1px) ; --tw-exit-blur: --value(--blur-*,[*]);}@utility fade-in{--tw-enter-opacity: 0;}@utility fade-in-*{--tw-enter-opacity: calc(--value(number)*.01) ; --tw-enter-opacity: --value(--percentage-*,[*]);}@utility fade-out{--tw-exit-opacity: 0;}@utility fade-out-*{--tw-exit-opacity: calc(--value(number)*.01) ; --tw-exit-opacity: --value(--percentage-*,[*]);}@utility zoom-in{--tw-enter-scale: 0;}@utility zoom-in-*{--tw-enter-scale: calc(--value(number)*1%) ; --tw-enter-scale: --value(ratio) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility -zoom-in-*{--tw-enter-scale: calc(--value(number)*-1%) ; --tw-enter-scale: calc(--value(ratio)*-1) ; --tw-enter-scale: --value(--percentage-*,[*]);}@utility zoom-out{--tw-exit-scale: 0;}@utility zoom-out-*{--tw-exit-scale: calc(--value(number)*1%) ; --tw-exit-scale: --value(ratio) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility -zoom-out-*{--tw-exit-scale: calc(--value(number)*-1%) ; --tw-exit-scale: calc(--value(ratio)*-1) ; --tw-exit-scale: --value(--percentage-*,[*]);}@utility spin-in{--tw-enter-rotate: 30deg;}@utility spin-in-*{--tw-enter-rotate: calc(--value(number)*1deg) ; --tw-enter-rotate: calc(--value(ratio)*360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility -spin-in{--tw-enter-rotate: -30deg;}@utility -spin-in-*{--tw-enter-rotate: calc(--value(number)*-1deg) ; --tw-enter-rotate: calc(--value(ratio)*-360deg) ; --tw-enter-rotate: --value(--rotate-*,[*]);}@utility spin-out{--tw-exit-rotate: 30deg;}@utility spin-out-*{--tw-exit-rotate: calc(--value(number)*1deg) ; --tw-exit-rotate: calc(--value(ratio)*360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility -spin-out{--tw-exit-rotate: -30deg;}@utility -spin-out-*{--tw-exit-rotate: calc(--value(number)*-1deg) ; --tw-exit-rotate: calc(--value(ratio)*-360deg) ; --tw-exit-rotate: --value(--rotate-*,[*]);}@utility slide-in-from-top{--tw-enter-translate-y: -100%;}@utility slide-in-from-top-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-y: calc(--value(ratio)*-100%) ; --tw-enter-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-bottom{--tw-enter-translate-y: 100%;}@utility slide-in-from-bottom-*{--tw-enter-translate-y: calc(--value(integer)*var(--spacing)); --tw-enter-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-y: calc(--value(ratio)*100%) ; --tw-enter-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-left{--tw-enter-translate-x: -100%;}@utility slide-in-from-left-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-in-from-right{--tw-enter-translate-x: 100%;}@utility slide-in-from-right-*{--tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-in-from-start{&:dir(ltr){ --tw-enter-translate-x: -100%; }&:dir(rtl){ --tw-enter-translate-x: 100%; }}@utility slide-in-from-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-in-from-end{&:dir(ltr){ --tw-enter-translate-x: 100%; }&:dir(rtl){ --tw-enter-translate-x: -100%; }}@utility slide-in-from-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-enter-translate-x: calc(--value(ratio)*100%) ; --tw-enter-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-enter-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-enter-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-enter-translate-x: calc(--value(ratio)*-100%) ; --tw-enter-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@utility slide-out-to-top{--tw-exit-translate-y: -100%;}@utility slide-out-to-top-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-y: calc(--value(ratio)*-100%) ; --tw-exit-translate-y: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-bottom{--tw-exit-translate-y: 100%;}@utility slide-out-to-bottom-*{--tw-exit-translate-y: calc(--value(integer)*var(--spacing)); --tw-exit-translate-y: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-y: calc(--value(ratio)*100%) ; --tw-exit-translate-y: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-left{--tw-exit-translate-x: -100%;}@utility slide-out-to-left-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ;}@utility slide-out-to-right{--tw-exit-translate-x: 100%;}@utility slide-out-to-right-*{--tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]);}@utility slide-out-to-start{&:dir(ltr){ --tw-exit-translate-x: -100%; }&:dir(rtl){ --tw-exit-translate-x: 100%; }}@utility slide-out-to-start-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }}@utility slide-out-to-end{&:dir(ltr){ --tw-exit-translate-x: 100%; }&:dir(rtl){ --tw-exit-translate-x: -100%; }}@utility slide-out-to-end-*{&:where(:dir(ltr),[dir="ltr"],[dir="ltr"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*100%) ; --tw-exit-translate-x: calc(--value(ratio)*100%) ; --tw-exit-translate-x: --value(--translate-*,[percentage],[length]); }&:where(:dir(rtl),[dir="rtl"],[dir="rtl"]*){ --tw-exit-translate-x: calc(--value(integer)*var(--spacing)*-1); --tw-exit-translate-x: calc(--value(--percentage-*,--percentage-translate-*)*-100%) ; --tw-exit-translate-x: calc(--value(ratio)*-100%) ; --tw-exit-translate-x: calc(--value(--translate-*,[percentage],[length])*-1) ; }}@custom-variant dark (&:is(.dark *));:root{--bg-primary: #0a0a0a;--bg-secondary: #0d1117;--bg-tertiary: #161b22;--bg-card: #1c2128;--bg-header: linear-gradient(135deg, #0d1117 0%, #161b22 100%);--bg-landing-gradient-end: #000000;--terminal-green: #00b830;--terminal-green-dim: #009926;--terminal-cyan: #00d4ff;--terminal-amber: #ffb000;--terminal-red: #ff3333;--terminal-magenta: #ff00ff;--brand-primary: #00b830;--brand-primary-dim: #009926;--brand-primary-light: rgba(0, 184, 48, .15);--brand-primary-lighter: rgba(0, 184, 48, .25);--brand-primary-lightest: rgba(0, 184, 48, .05);--text-primary: #e6edf3;--text-secondary: #8b949e;--text-tertiary: #6e7681;--text-muted: #484f58;--text-inverse: #0a0a0a;--text-accent: #00b830;--border-color: #30363d;--border-light: #21262d;--border-dark: #484f58;--border-glow: rgba(0, 184, 48, .3);--shadow-xs: 0 2px 4px rgba(0, 0, 0, .3);--shadow-sm: rgba(0, 0, 0, .4);--shadow-md: rgba(0, 0, 0, .5);--shadow-lg: rgba(0, 0, 0, .6);--shadow-xl: rgba(0, 0, 0, .7);--shadow-brand: rgba(0, 184, 48, .2);--shadow-glow: 0 0 20px rgba(0, 184, 48, .15);--node-database: #00d4ff;--node-cache: #ffb000;--node-server: #00b830;--node-api: #ff00ff;--node-loadbalancer: #00ffcc;--node-queue: #ff6600;--node-cdn: #9966ff;--node-gateway: #66ff66;--node-storage: #00ccff;--node-service: #ff9933;--node-group: #8b949e;--btn-primary-bg: linear-gradient(135deg, #00b830 0%, #009926 100%);--btn-primary-text: #ffffff;--btn-hover-shadow: rgba(0, 184, 48, .4);--btn-danger: #ff3333;--btn-danger-hover: #ff0000;--btn-danger-light: rgba(255, 51, 51, .1);--input-bg: #0d1117;--input-border: #30363d;--input-focus-border: #00b830;--input-focus-glow: rgba(0, 184, 48, .25);--input-placeholder: #6e7681;--scrollbar-thumb: #30363d;--scrollbar-thumb-hover: #484f58;--scrollbar-track: #0d1117;--edge-color: #30363d;--react-flow-bg: #0a0a0a;--overlay-bg: rgba(0, 0, 0, .8);--loading-overlay: rgba(13, 17, 23, .95);--badge-bg: rgba(0, 184, 48, .1);--badge-text: #00b830;--badge-border: rgba(0, 184, 48, .3);--spinner-border: rgba(0, 184, 48, .2);--spinner-active: #00b830;--gradient-primary: linear-gradient(135deg, #00b830 0%, #00d4ff 100%);--bg-user-message: #343541;--gradient-subtle: linear-gradient(135deg, #0d1117 0%, #161b22 100%);--gradient-glow: radial-gradient(ellipse at center, rgba(0, 184, 48, .1) 0%, transparent 70%);--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 6px;--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease;--radius: .375rem;--background: #0a0a0a;--foreground: #e6edf3;--card: #1c2128;--card-foreground: #e6edf3;--popover: #161b22;--popover-foreground: #e6edf3;--primary: #00b830;--primary-foreground: #ffffff;--secondary: #161b22;--secondary-foreground: #e6edf3;--muted: #21262d;--muted-foreground: #8b949e;--accent: #21262d;--accent-foreground: #e6edf3;--destructive: #ff3333;--border: #30363d;--input: #30363d;--ring: #00b830;--chart-1: #00d4ff;--chart-2: #00b830;--chart-3: #ffb000;--chart-4: #ff00ff;--chart-5: #ff6600;--sidebar: #0d1117;--sidebar-foreground: #e6edf3;--sidebar-primary: #00b830;--sidebar-primary-foreground: #ffffff;--sidebar-accent: #161b22;--sidebar-accent-foreground: #e6edf3;--sidebar-border: #30363d;--sidebar-ring: #00b830}button,a,input,textarea,select{transition:all var(--transition-fast)}body{margin:0;font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-primary);color:var(--text-primary)}code,pre,.mono{font-family:var(--font-mono)}#root{height:100vh}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}::selection{background:#00b8304d;color:#fff}@theme inline{ --radius-sm: calc(var(--radius) - 4px); --radius-md: calc(var(--radius) - 2px); --radius-lg: var(--radius); --radius-xl: calc(var(--radius) + 4px); --radius-2xl: calc(var(--radius) + 8px); --radius-3xl: calc(var(--radius) + 12px); --radius-4xl: calc(var(--radius) + 16px); --color-background: var(--background); --color-foreground: var(--foreground); --color-card: var(--card); --color-card-foreground: var(--card-foreground); --color-popover: var(--popover); --color-popover-foreground: var(--popover-foreground); --color-primary: var(--primary); --color-primary-foreground: var(--primary-foreground); --color-secondary: var(--secondary); --color-secondary-foreground: var(--secondary-foreground); --color-muted: var(--muted); --color-muted-foreground: var(--muted-foreground); --color-accent: var(--accent); --color-accent-foreground: var(--accent-foreground); --color-destructive: var(--destructive); --color-border: var(--border); --color-input: var(--input); --color-ring: var(--ring); --color-chart-1: var(--chart-1); --color-chart-2: var(--chart-2); --color-chart-3: var(--chart-3); --color-chart-4: var(--chart-4); --color-chart-5: var(--chart-5); --color-sidebar: var(--sidebar); --color-sidebar-foreground: var(--sidebar-foreground); --color-sidebar-primary: var(--sidebar-primary); --color-sidebar-primary-foreground: var(--sidebar-primary-foreground); --color-sidebar-accent: var(--sidebar-accent); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); --color-sidebar-border: var(--sidebar-border); --color-sidebar-ring: var(--sidebar-ring); }@layer base{*{@apply border-border;}}.react-flow{direction:ltr}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;-webkit-animation:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;-webkit-animation:dashdraw .5s linear infinite;animation:dashdraw .5s linear infinite}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:-webkit-grab;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background:#1a192b;border:1px solid white;border-radius:100%}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:-4px;transform:translate(-50%)}.react-flow__handle-top{left:50%;top:-4px;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{right:-4px;top:50%;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{font-size:10px;background:#ffffff80;padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@-webkit-keyframes dashdraw{0%{stroke-dashoffset:10}}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:3px;width:150px;font-size:12px;color:#222;text-align:center;border-width:1px;border-style:solid;border-color:#1a192b;background-color:#fff}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{border:none;background:#fefefe;border-bottom:1px solid #eee;box-sizing:content-box;display:flex;justify-content:center;align-items:center;width:16px;height:16px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;padding:5px}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:4px;height:4px;border:1px solid #fff;border-radius:1px;background-color:#3367d9;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:#3367d9;border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.modal-overlay{position:fixed;inset:0;background-color:var(--overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--bg-tertiary);border-radius:8px;padding:24px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 4px 6px var(--shadow-sm)}.modal-content h2{margin:0 0 20px;font-size:24px;color:var(--text-primary)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:var(--text-primary);font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:8px 12px;border:1px solid var(--input-border);border-radius:4px;font-size:14px;font-family:inherit;box-sizing:border-box;background:var(--input-bg);color:var(--text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px #667eea1a}.form-group textarea{resize:vertical;min-height:60px}.modal-buttons{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.button-primary,.button-secondary{padding:10px 20px;border-radius:4px;border:none;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.button-primary{background-color:var(--brand-purple);color:var(--text-inverse)}.button-primary:hover{background-color:var(--brand-purple-dark)}.button-secondary{background-color:var(--bg-secondary);color:var(--text-secondary)}.button-secondary:hover{background-color:var(--border-light)}.session-history-sidebar{background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:2px 0 8px var(--shadow-sm);position:fixed;left:0;top:108px;bottom:0;min-width:200px;max-width:600px;will-change:width;transition:none;z-index:1000;animation:slideInFromLeft .3s ease-out}@keyframes slideInFromLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.resize-handle-right{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;background:transparent;z-index:10;transition:background .2s}.resize-handle-right:hover{background:var(--brand-purple-light)}.resize-handle-right:active{background:var(--brand-purple-lighter)}.session-history-header{padding:1rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.session-history-header h3{font-size:1.1rem;color:var(--text-primary);margin:0;font-weight:600}.close-button{background:#fff3;color:#1a1a1a;border:2px solid #1a1a1a;border-radius:8px;padding:.25rem;font-size:1.25rem;cursor:pointer;line-height:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s;width:32px;height:32px;display:flex;align-items:center;justify-content:center}.close-button:hover{background:var(--text-inverse);color:var(--brand-purple);border-color:#1a1a1a;transform:translateY(-2px)}.session-history-content{flex:1;overflow-y:auto;padding:12px}.session-history-list{display:flex;flex-direction:column;gap:8px}.session-list-item{background:var(--bg-tertiary);border-radius:8px;padding:12px;cursor:pointer;transition:all .2s;box-shadow:var(--shadow-xs);display:flex;flex-direction:column;gap:6px}.session-list-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm);background:var(--bg-secondary)}.session-list-item.active{background:var(--brand-purple-lightest);border:2px solid var(--brand-purple);box-shadow:var(--shadow-md)}.session-list-item.active:hover{background:var(--brand-purple-lighter)}.session-item-header{display:flex;justify-content:space-between;align-items:center}.session-date-compact{font-size:.85rem;color:var(--text-muted);font-weight:600}.doc-badge{font-size:1rem}.session-name-compact{font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.session-name-edit{width:100%}.session-name-edit input{width:100%;font-size:1rem;font-weight:600;color:var(--text-primary);background:var(--bg-tertiary);border:2px solid var(--brand-purple);border-radius:4px;padding:4px 8px;font-family:inherit}.session-name-edit input:focus{outline:none;border-color:var(--brand-purple-dark)}.session-stats-compact{display:flex;gap:6px;font-size:.8rem;color:var(--text-muted);align-items:center}.session-stats-compact span{white-space:nowrap}.session-model-compact{font-size:.75rem;background:var(--bg-secondary);padding:3px 8px;border-radius:4px;color:var(--brand-purple);align-self:flex-start;font-weight:600}.session-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.session-spinner{width:32px;height:32px;border:3px solid var(--brand-purple-light);border-top-color:var(--brand-purple);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:12px}.session-loading p{font-size:.9rem}.session-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.session-error p{font-size:.9rem;margin-bottom:12px}.session-error button{background:var(--brand-purple);color:var(--bg-tertiary);border:none;padding:8px 16px;border-radius:6px;font-weight:600;cursor:pointer;transition:background .2s}.session-error button:hover{background:var(--brand-purple-dark)}.session-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.session-empty p{font-size:.95rem;margin-bottom:6px;color:var(--text-secondary);font-weight:600}.session-empty small{font-size:.8rem;color:var(--text-muted)}.session-context-menu{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:6px;box-shadow:var(--shadow-md);z-index:3000;overflow:hidden;min-width:120px}.session-context-menu button{display:block;width:100%;padding:10px 16px;border:none;background:var(--bg-tertiary);text-align:left;cursor:pointer;font-size:14px;color:var(--text-primary);transition:background .2s;font-weight:500}.session-context-menu button:hover{background:var(--bg-secondary)}.session-context-menu button.delete-button{color:var(--btn-danger)}.session-context-menu button.delete-button:hover{background:var(--btn-danger-light)}@media(max-width:768px){.session-history-sidebar.mobile-modal{position:fixed;inset:0;width:100%!important;max-width:none;min-width:0;z-index:2000;border-right:none;box-shadow:none}.session-history-sidebar.mobile-modal .resize-handle-right{display:none}.session-history-content{padding:16px}.session-list-item{padding:14px}.session-history-header{padding:1.25rem}}.node-palette{position:fixed;bottom:-200px;left:0;right:0;height:180px;background:var(--bg-tertiary);box-shadow:0 -4px 16px var(--shadow-lg);z-index:100;overflow-y:auto;border-radius:12px 12px 0 0;transition:bottom .3s ease-in-out,left .15s ease-out,right .15s ease-out;will-change:height}.resize-handle-top{position:absolute;top:0;left:0;right:0;height:8px;cursor:ns-resize;z-index:101}.resize-handle-top:hover{background:#667eea1a;border-top:2px solid rgba(102,126,234,.3)}.node-palette.open{bottom:0}.palette-header{display:flex;justify-content:space-between;align-items:center;padding:2px 10px;border-bottom:1px solid var(--border-light);background:var(--bg-secondary)}.palette-header h3{margin:0;font-size:11px;font-weight:600;color:var(--text-secondary)}.palette-close-btn{background:none;border:none;font-size:16px;color:var(--text-secondary);cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:3px;transition:background-color .2s}.palette-close-btn:hover{background-color:var(--shadow-sm)}.palette-content{padding:8px 10px}.node-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(70px,1fr));gap:8px}.node-type-card{position:relative;background:var(--bg-tertiary);border:2px solid var(--border-color);border-radius:4px;padding:6px 4px;cursor:pointer;transition:all .2s ease-in-out;overflow:hidden}.node-type-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-md)}.node-type-color-bar{position:absolute;top:0;left:0;right:0;height:2px;border-radius:4px 4px 0 0}.node-type-card.node-type-database{border-color:var(--node-database)}.node-type-color-bar.node-type-database{background-color:var(--node-database)}.node-type-card.node-type-cache{border-color:var(--node-cache)}.node-type-color-bar.node-type-cache{background-color:var(--node-cache)}.node-type-card.node-type-server{border-color:var(--node-server)}.node-type-color-bar.node-type-server{background-color:var(--node-server)}.node-type-card.node-type-api{border-color:var(--node-api)}.node-type-color-bar.node-type-api{background-color:var(--node-api)}.node-type-card.node-type-loadbalancer{border-color:var(--node-loadbalancer)}.node-type-color-bar.node-type-loadbalancer{background-color:var(--node-loadbalancer)}.node-type-card.node-type-queue{border-color:var(--node-queue)}.node-type-color-bar.node-type-queue{background-color:var(--node-queue)}.node-type-card.node-type-cdn{border-color:var(--node-cdn)}.node-type-color-bar.node-type-cdn{background-color:var(--node-cdn)}.node-type-card.node-type-gateway{border-color:var(--node-gateway)}.node-type-color-bar.node-type-gateway{background-color:var(--node-gateway)}.node-type-card.node-type-storage{border-color:var(--node-storage)}.node-type-color-bar.node-type-storage{background-color:var(--node-storage)}.node-type-card.node-type-service{border-color:var(--node-service)}.node-type-color-bar.node-type-service{background-color:var(--node-service)}.node-type-label{margin-top:1px;font-size:11px;font-weight:600;color:var(--text-primary);text-align:center}.node-type-tooltip{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:8px;padding:8px 12px;background:var(--text-primary);color:var(--bg-tertiary);font-size:13px;border-radius:6px;white-space:nowrap;z-index:1001;pointer-events:none;box-shadow:0 2px 8px var(--shadow-lg);animation:tooltipFadeIn .2s ease-in-out}.node-type-tooltip:before{content:"";position:absolute;bottom:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-bottom-color:var(--text-primary)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(4px)}to{opacity:1;transform:translate(-50%) translateY(0)}}@media(max-width:768px){.node-palette{max-height:70vh;left:0!important;right:0!important}.node-type-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem}.node-type-card{padding:.5rem;min-height:44px}.node-type-label{font-size:.85rem}.palette-header h3{font-size:.9rem}.palette-close-btn{width:28px;height:28px;font-size:20px}}@media(max-width:480px){.node-type-grid{grid-template-columns:repeat(2,1fr)}.node-type-tooltip{max-width:calc(100vw - 2rem);white-space:normal;text-align:center}}.tutorial-tooltip{position:fixed;background:var(--bg-primary, #ffffff);border-radius:12px;box-shadow:0 8px 32px #0003;padding:20px;max-width:360px;min-width:280px;pointer-events:auto;z-index:10001;animation:tooltip-appear .3s ease}@keyframes tooltip-appear{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.tutorial-tooltip-arrow{position:absolute;width:12px;height:12px;background:var(--bg-primary, #ffffff);transform:rotate(45deg)}.tutorial-tooltip--top .tutorial-tooltip-arrow{bottom:-6px;left:50%;margin-left:-6px}.tutorial-tooltip--bottom .tutorial-tooltip-arrow{top:-6px;left:50%;margin-left:-6px}.tutorial-tooltip--left .tutorial-tooltip-arrow{right:-6px;top:50%;margin-top:-6px}.tutorial-tooltip--right .tutorial-tooltip-arrow{left:-6px;top:50%;margin-top:-6px}.tutorial-tooltip--center .tutorial-tooltip-arrow{display:none}.tutorial-tooltip-content{margin-bottom:16px}.tutorial-tooltip-title{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1a1a1a)}.tutorial-tooltip-text{margin:0;font-size:14px;line-height:1.5;color:var(--text-secondary, #666666)}.tutorial-tooltip-loading{display:flex;align-items:center;gap:8px;margin-top:12px;color:var(--text-secondary, #666666);font-size:13px}.tutorial-loading-spinner{width:16px;height:16px;border:2px solid var(--border-color, #e0e0e0);border-top-color:var(--terminal-green, #00b830);border-radius:50%;animation:spin 1s linear infinite}.tutorial-tooltip-nav{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--border-color, #e0e0e0);padding-top:16px;margin-top:8px}.tutorial-tooltip-nav-buttons{display:flex;gap:8px}.tutorial-skip-link{background:none;border:none;color:var(--text-tertiary, #999999);font-size:13px;cursor:pointer;padding:4px 0;transition:color .2s ease}.tutorial-skip-link:hover{color:var(--text-secondary, #666666);text-decoration:underline}.tutorial-nav-btn{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.tutorial-nav-btn--prev{background:transparent;border:1px solid var(--border-color, #e0e0e0);color:var(--text-secondary, #666666)}.tutorial-nav-btn--prev:hover:not(:disabled){background:var(--bg-secondary, #f5f5f5)}.tutorial-nav-btn--prev:disabled{opacity:.4;cursor:not-allowed}.tutorial-nav-btn--next{background:var(--terminal-green, #00b830);border:none;color:#0a0a0a}.tutorial-nav-btn--next:hover:not(:disabled){background:var(--terminal-green-dim, #009926)}.tutorial-nav-btn--next:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .tutorial-tooltip{background:var(--bg-primary, #1e1e1e);box-shadow:0 8px 32px #0006}[data-theme=dark] .tutorial-tooltip-arrow{background:var(--bg-primary, #1e1e1e)}[data-theme=dark] .tutorial-tooltip-title{color:var(--text-primary, #ffffff)}[data-theme=dark] .tutorial-tooltip-text{color:var(--text-secondary, #a0a0a0)}.tutorial-welcome-backdrop{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;z-index:10002}.tutorial-welcome-modal{background:var(--bg-primary, #ffffff);border-radius:20px;padding:40px;max-width:420px;width:90%;text-align:center;box-shadow:0 20px 60px #0000004d;animation:modal-appear .4s ease;pointer-events:auto}@keyframes modal-appear{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.tutorial-welcome-modal--completion{background:linear-gradient(135deg,var(--bg-primary, #ffffff) 0%,var(--bg-secondary, #f8f9fa) 100%)}.tutorial-welcome-logo{margin-bottom:24px}.tutorial-welcome-logo img{width:80px;height:80px;object-fit:contain}.tutorial-welcome-title{margin:0 0 12px;font-size:28px;font-weight:700;color:var(--text-primary, #1a1a1a)}.tutorial-welcome-content{margin:0 0 24px;font-size:16px;line-height:1.6;color:var(--text-secondary, #666666)}.tutorial-welcome-features{display:flex;flex-direction:column;gap:12px;margin-bottom:28px;text-align:left}.tutorial-welcome-feature{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--bg-secondary, #f5f5f5);border-radius:10px;font-size:14px;color:var(--text-primary, #1a1a1a)}.tutorial-welcome-feature-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00b830,#009926);color:#0a0a0a;font-size:12px;font-weight:600;border-radius:50%}.tutorial-welcome-stats{display:flex;justify-content:center;gap:40px;margin-bottom:28px}.tutorial-welcome-stat{display:flex;flex-direction:column;align-items:center}.tutorial-welcome-stat-value{font-size:32px;font-weight:700;color:var(--terminal-green, #00b830)}.tutorial-welcome-stat-label{font-size:13px;color:var(--text-secondary, #666666);margin-top:4px}.tutorial-welcome-button{width:100%;padding:16px 32px;background:linear-gradient(135deg,#00b830,#009926);border:none;border-radius:12px;color:#0a0a0a;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease}.tutorial-welcome-button:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00b83066}.tutorial-welcome-time{margin:16px 0 0;font-size:13px;color:var(--text-tertiary, #999999)}.tutorial-welcome-skip{display:block;margin:12px auto 0;background:none;border:none;color:var(--text-tertiary, #999999);font-size:13px;cursor:pointer;padding:4px 8px;transition:color .2s ease}.tutorial-welcome-skip:hover{color:var(--text-secondary, #666666);text-decoration:underline}[data-theme=dark] .tutorial-welcome-modal{background:var(--bg-primary, #1e1e1e)}[data-theme=dark] .tutorial-welcome-modal--completion{background:linear-gradient(135deg,var(--bg-primary, #1e1e1e) 0%,var(--bg-secondary, #2d2d2d) 100%)}[data-theme=dark] .tutorial-welcome-title{color:var(--text-primary, #ffffff)}[data-theme=dark] .tutorial-welcome-content{color:var(--text-secondary, #a0a0a0)}[data-theme=dark] .tutorial-welcome-feature{background:var(--bg-secondary, #2d2d2d);color:var(--text-primary, #ffffff)}.tutorial-progress{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:var(--bg-primary, #ffffff);border-radius:12px;padding:12px 20px;box-shadow:0 4px 20px #00000026;pointer-events:none;z-index:10000;min-width:280px;text-align:center}.tutorial-progress-phase{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.tutorial-progress-phase-label{font-size:12px;color:var(--text-secondary, #666666);font-weight:500}.tutorial-progress-phase-name{font-size:14px;color:var(--text-primary, #1a1a1a);font-weight:600}.tutorial-progress-bar{height:6px;background:var(--bg-secondary, #e0e0e0);border-radius:3px;overflow:hidden;margin-bottom:8px}.tutorial-progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--terminal-green, #00b830),var(--terminal-green-dim, #009926));border-radius:3px;transition:width .3s ease}.tutorial-progress-steps{font-size:11px;color:var(--text-tertiary, #999999)}[data-theme=dark] .tutorial-progress{background:var(--bg-primary, #1e1e1e);box-shadow:0 4px 20px #0000004d}[data-theme=dark] .tutorial-progress-phase-label{color:var(--text-secondary, #a0a0a0)}[data-theme=dark] .tutorial-progress-phase-name{color:var(--text-primary, #ffffff)}[data-theme=dark] .tutorial-progress-bar{background:var(--bg-secondary, #2d2d2d)}.tutorial-overlay{position:fixed;inset:0;z-index:10000;pointer-events:none}.tutorial-backdrop{position:absolute;inset:0;background:transparent;pointer-events:none}.tutorial-spotlight{position:absolute;background:transparent;border-radius:8px;box-shadow:0 0 0 9999px #0009;pointer-events:none;transition:all .3s ease;animation:spotlight-pulse 2s infinite}@keyframes spotlight-pulse{0%,to{box-shadow:0 0 0 9999px #0009,0 0 0 4px #667eea80}50%{box-shadow:0 0 0 9999px #0009,0 0 0 8px #667eea4d}}.credit-balance{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#ffffff1a;border-radius:20px;font-size:14px;color:#e0e0e0;transition:all .2s ease;cursor:pointer}.credit-balance:hover{background:#ffffff2e;transform:scale(1.02)}.credit-balance:focus-visible{outline:2px solid #00b830;outline-offset:2px}.credit-balance.loading{opacity:.6}.credit-balance.low{background:#ffc10726;color:#ffc107}.credit-balance.critical{background:#f4433626;color:#f44336;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.credit-icon{font-size:16px}.credit-count{font-weight:600;font-size:15px}.credit-label{font-size:12px;opacity:.8}.credit-balance .upgrade-button{margin-left:8px;padding:4px 10px;background:linear-gradient(135deg,#00b830,#009926);border:none;border-radius:12px;color:#0a0a0a;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.credit-balance .upgrade-button:hover{transform:scale(1.05);box-shadow:0 2px 8px #00b83066}@media(max-width:768px){.credit-balance{padding:4px 8px;font-size:12px}.credit-icon{font-size:14px}.credit-count{font-size:13px}.credit-label{display:none}.credit-balance .upgrade-button{padding:3px 8px;font-size:11px}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.insufficient-credits-modal{background:linear-gradient(145deg,#1e1e2e,#2a2a3e);border-radius:16px;padding:32px;max-width:420px;width:90%;position:relative;box-shadow:0 20px 60px #00000080;border:1px solid rgba(255,255,255,.1);animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.modal-close{position:absolute;top:12px;right:12px;background:none;border:none;color:#888;font-size:24px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .2s}.modal-close:hover{color:#fff;background:#ffffff1a}.modal-icon{font-size:48px;text-align:center;margin-bottom:16px}.insufficient-credits-modal h2{color:#fff;font-size:24px;font-weight:600;text-align:center;margin:0 0 12px}.modal-description{color:#b0b0b0;text-align:center;font-size:15px;line-height:1.5;margin:0 0 24px}.modal-description strong{color:#ffc107}.modal-actions{display:flex;flex-direction:column;gap:12px;margin-bottom:24px}.action-button{padding:14px 24px;border-radius:10px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.action-button.primary{background:linear-gradient(135deg,#00b830,#009926);color:#0a0a0a}.action-button.primary:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00b83066}.action-button.secondary{background:#ffffff1a;color:#e0e0e0;border:1px solid rgba(255,255,255,.2)}.action-button.secondary:hover{background:#ffffff26}.promo-section{border-top:1px solid rgba(255,255,255,.1);padding-top:20px}.promo-label{color:#888;font-size:13px;text-align:center;margin:0 0 12px}.promo-form{display:flex;gap:8px}.promo-input{flex:1;padding:10px 14px;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:8px;color:#fff;font-size:14px;font-family:monospace;text-transform:uppercase;letter-spacing:1px}.promo-input::placeholder{color:#666;text-transform:none;letter-spacing:normal}.promo-submit{padding:10px 18px;background:#4caf50;border:none;border-radius:8px;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.promo-error{color:#f44336;font-size:13px;text-align:center;margin:12px 0 0}.promo-success{color:#4caf50;font-size:13px;text-align:center;margin:12px 0 0}@media(max-width:480px){.insufficient-credits-modal{padding:24px;margin:16px}.modal-icon{font-size:40px}.insufficient-credits-modal h2{font-size:20px}.modal-description{font-size:14px}.action-button{padding:12px 20px;font-size:14px}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.react-flow__attribution{display:none!important}.app{height:100vh;display:flex;flex-direction:column;background:var(--bg-primary)}.app-header{background:var(--bg-secondary);color:var(--text-primary);padding:1rem 2rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;gap:2rem}.app-title{transition:opacity .2s}.app-title:hover{opacity:.8}.title-with-logo{display:flex;align-items:center;gap:1rem}.app-logo{height:60px;width:auto;object-fit:contain}.title-text{display:flex;flex-direction:column}.app-header h1,.app-title-heading{font-size:1.75rem;font-family:var(--font-mono);color:var(--terminal-green);margin-bottom:.25rem}.app-header p{font-size:.9rem;opacity:.9}.header-right{display:flex;gap:1.5rem;align-items:center;margin-left:auto}.header-buttons{display:flex;gap:1rem;align-items:center}.auth-buttons{display:flex;align-items:center;gap:12px}.header-visitors-badge{height:42px;width:auto;border-radius:6px}.sign-in-button{padding:8px 16px;border-radius:6px;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;cursor:pointer;font-size:14px;transition:all .2s}.sign-in-button:hover{background:#fff3;border-color:#fff6}.add-node-button,.new-design-button,.export-button,.create-design-doc-button{padding:.6rem 1.25rem;background:transparent;color:var(--terminal-green);border:1px solid var(--terminal-green);border-radius:var(--radius-md);font-size:.9rem;font-weight:500;font-family:var(--font-mono);cursor:pointer;transition:all .2s}.add-node-button:hover,.new-design-button:hover,.export-button:hover:not(:disabled),.create-design-doc-button:hover:not(:disabled){background:var(--terminal-green);color:var(--bg-primary);box-shadow:0 0 15px #00b8304d}.add-node-button:disabled,.new-design-button:disabled,.export-button:disabled,.create-design-doc-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.export-button-container{position:relative}.export-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:var(--bg-secondary);border-radius:8px;box-shadow:0 4px 12px var(--shadow-md);overflow:hidden;z-index:1000;min-width:200px}.export-menu button{display:block;width:100%;padding:.75rem 1rem;background:var(--bg-secondary);color:var(--text-primary);border:none;border-bottom:1px solid var(--border-color);text-align:left;font-size:.95rem;cursor:pointer;transition:background .2s}.export-menu button:last-child{border-bottom:none}.export-menu button:hover{background:var(--bg-secondary);color:var(--terminal-green)}.app-content{flex:1;display:flex;overflow:hidden}.main-area{flex:1;display:flex;flex-direction:column;position:relative;transition:margin-left .1s ease-out;will-change:margin-left}.landing-page{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-landing-gradient-end) 100%)}.hero-section{max-width:900px;margin:0 auto;padding:3rem 2rem;text-align:center}.hero-content{margin-bottom:2.5rem}.hero-title{font-size:3rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green);margin-bottom:1rem;text-shadow:0 0 20px rgba(0,184,48,.5)}.hero-subtitle{font-size:1.25rem;color:var(--text-secondary);margin-bottom:.5rem;line-height:1.6}.hero-cta{font-size:1rem;color:var(--text-tertiary);font-weight:500}.hero-secondary{font-size:.9rem;color:var(--text-tertiary);opacity:.8;margin-top:.5rem}.landing-input-form{background:var(--bg-secondary);padding:2rem;border-radius:var(--radius-md);border:1px solid var(--border-color);box-shadow:var(--shadow-glow);margin-bottom:2rem}.landing-textarea{width:100%;padding:1.25rem;border:1px solid var(--border-color);border-radius:var(--radius-md);font-size:1rem;font-family:var(--font-mono);resize:vertical;margin-bottom:1rem;transition:border-color .2s,box-shadow .2s;background:var(--bg-primary);color:var(--terminal-green)}.landing-textarea::placeholder{color:var(--text-muted)}.landing-textarea:focus{outline:none;border-color:var(--input-focus-border);box-shadow:0 0 0 3px var(--input-focus-glow)}.landing-generate-button{width:100%;padding:1.25rem;background:var(--terminal-green);color:var(--bg-primary);border:none;border-radius:var(--radius-md);font-size:1.1rem;font-weight:600;font-family:var(--font-mono);cursor:pointer;transition:all .2s;box-shadow:0 0 20px #00b8304d;text-transform:uppercase;letter-spacing:.05em}.landing-generate-button:hover:not(:disabled){background:#3f6;box-shadow:0 0 30px #00b83080;transform:translateY(-1px)}.landing-generate-button:disabled{opacity:.6;cursor:not-allowed;transform:none}.example-prompts-section{margin-top:1.5rem}.example-prompts-label{font-size:.95rem;color:var(--text-tertiary);margin-bottom:1rem;font-weight:500}.example-prompts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.example-prompt-card{background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.75rem;text-align:left;font-size:.9rem;font-weight:500;font-family:var(--font-mono);color:var(--text-secondary)}.example-prompt-card:hover:not(:disabled){border-color:var(--terminal-green);color:var(--terminal-green);box-shadow:0 0 15px #00b83033}.example-prompt-card:disabled{opacity:.5;cursor:not-allowed}.example-icon{font-size:1.5rem}.example-title{flex:1}.problem-section{background:var(--bg-primary);padding:3rem 2rem;border-top:1px solid var(--border-color);text-align:center;max-width:800px;margin:0 auto}.problem-heading{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-amber);margin-bottom:1.5rem}.problem-lead{font-size:1.1rem;color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem}.problem-list{list-style:none;padding:0;margin:0 0 1.5rem;display:flex;flex-wrap:wrap;justify-content:center;gap:.75rem 1.5rem}.problem-list li{color:var(--text-tertiary);font-size:.95rem;position:relative;padding-left:1.25rem}.problem-list li:before{content:"✗";position:absolute;left:0;color:var(--terminal-red)}.problem-conclusion{font-size:1.15rem;font-weight:600;color:var(--text-primary);font-style:italic}.features-section{background:var(--bg-secondary);padding:3rem 2rem;border-top:1px solid var(--border-color)}.features-heading{text-align:center;font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green);margin-bottom:2.5rem}.features-grid{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.feature-card{text-align:center;padding:1.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s}.feature-card:hover{border-color:var(--terminal-cyan);box-shadow:0 0 15px #00d4ff33}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-title{font-size:1.1rem;font-weight:600;font-family:var(--font-mono);color:var(--terminal-cyan);margin-bottom:.5rem}.feature-description{font-size:.95rem;color:var(--text-tertiary);line-height:1.6}.showcase-section{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-landing-gradient-end) 100%);padding:3rem 2rem 4rem;border-top:1px solid var(--border-color)}.showcase-heading{text-align:center;font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green);margin-bottom:2.5rem}.showcase-carousel{max-width:1200px;margin:0 auto}.carousel-container{overflow:hidden;border-radius:16px;box-shadow:0 8px 32px var(--shadow-md);background:var(--bg-secondary)}.carousel-track{display:flex;transition:transform .6s cubic-bezier(.4,0,.2,1)}.carousel-slide{min-width:100%;display:flex;flex-direction:column}.carousel-image{width:100%;height:auto;display:block;object-fit:contain;max-height:600px}.carousel-caption{padding:1.5rem;text-align:center;font-size:1.1rem;font-weight:600;color:var(--text-primary);background:linear-gradient(135deg,#f7fafc 0%,var(--bg-tertiary) 100%);border-top:2px solid var(--border-light)}.carousel-dots{display:flex;justify-content:center;gap:.75rem;margin-top:2rem}.carousel-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--border-dark);background:transparent;cursor:pointer;transition:all .3s;padding:0}.carousel-dot:hover{border-color:var(--terminal-green);transform:scale(1.2)}.carousel-dot.active{background:var(--terminal-green);border-color:var(--terminal-green);box-shadow:0 0 10px #00b83080;transform:scale(1.3)}.lightbox-overlay{position:fixed;inset:0;background:#000000f2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;animation:lightboxFadeIn .2s ease}@keyframes lightboxFadeIn{0%{opacity:0}to{opacity:1}}.lightbox-close{position:absolute;top:20px;right:20px;background:transparent;border:none;color:#ffffffb3;cursor:pointer;padding:8px;border-radius:50%;transition:all .2s;z-index:10001}.lightbox-close:hover{color:#fff;background:#ffffff1a}.lightbox-content{max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #00000080;animation:lightboxImageIn .3s ease}@keyframes lightboxImageIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.lightbox-caption{color:#e6edf3;font-size:1.1rem;margin-top:1rem;text-align:center}.lightbox-counter{color:#8b949e;font-size:.9rem;margin-top:.5rem}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#ffffff80;cursor:pointer;padding:16px;border-radius:50%;transition:all .2s}.lightbox-nav:hover{color:#fff;background:#ffffff1a}.lightbox-prev{left:20px}.lightbox-next{right:20px}@media(max-width:768px){.lightbox-close{top:10px;right:10px}.lightbox-nav{padding:12px}.lightbox-nav svg{width:32px;height:32px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-caption{font-size:1rem;padding:0 1rem}}@media(max-width:480px){.lightbox-nav{padding:16px;background:#0000004d}}.how-it-works-section{background:var(--bg-secondary);padding:3rem 2rem;border-top:1px solid var(--border-color)}.how-it-works-heading{text-align:center;font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green);margin-bottom:2.5rem}.steps-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.step-card{text-align:center;padding:1.5rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:var(--radius-md);transition:all .2s}.step-card:hover{border-color:var(--terminal-green);box-shadow:0 0 15px #00b83026}.step-number{width:50px;height:50px;margin:0 auto 1.5rem;background:transparent;color:var(--terminal-green);border:2px solid var(--terminal-green);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;font-family:var(--font-mono)}.step-title{font-size:1.1rem;font-weight:600;font-family:var(--font-mono);color:var(--text-primary);margin-bottom:.75rem}.step-description{font-size:.95rem;color:var(--text-tertiary);line-height:1.6}.featured-on-section{background:var(--bg-primary);padding:3rem 2rem;border-top:1px solid var(--border-color)}.featured-on-heading{text-align:center;font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-cyan);margin-bottom:2.5rem}.featured-on-grid{max-width:1000px;margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;align-items:center;justify-items:center}.featured-badge-link{display:flex;align-items:center;justify-content:center;transition:transform .2s ease,opacity .2s ease}.featured-badge-link:hover{transform:translateY(-2px);opacity:.9}.featured-badge-img{display:block;max-width:250px;height:auto;object-fit:contain}.featured-badge-styled{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:#1a1a1a;color:#fff;border:1px solid #333333;border-radius:8px;text-decoration:none;font-size:14px;font-weight:500}.featured-badge-styled:hover{background:#2a2a2a;opacity:1}.featured-badge-styled img{display:block}.site-header{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);padding:1rem 2rem}.header-container{max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between}.header-logo{display:flex;align-items:center;gap:.75rem;text-decoration:none}.header-logo-img{width:32px;height:32px}.header-logo-text{font-size:1.25rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green)}.header-auth{display:flex;align-items:center}.header-signin-btn{background:transparent;color:var(--terminal-green);border:1px solid var(--terminal-green);padding:.5rem 1rem;border-radius:6px;font-size:.9rem;cursor:pointer;transition:all .2s;font-family:var(--font-mono)}.header-signin-btn:hover{background:var(--terminal-green);color:var(--bg-primary)}.site-footer,.landing-footer{background:var(--bg-tertiary);border-top:1px solid var(--border-color);padding:3rem 2rem 2rem}.footer-content{max-width:800px;margin:0 auto;text-align:center}.footer-brand{margin-bottom:1.5rem}.footer-logo{font-size:1.5rem;font-weight:700;font-family:var(--font-mono);color:var(--terminal-green)}.footer-tagline{color:var(--text-tertiary);font-size:.9rem;margin-top:.5rem}.footer-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem}.footer-links a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .2s ease}.footer-links a:hover{color:var(--terminal-green)}.footer-bottom{padding-top:1.5rem;border-top:1px solid var(--border-color)}.footer-bottom p{color:var(--text-tertiary);font-size:.85rem;margin:.25rem 0}.footer-built-with{font-size:.8rem!important;opacity:.8}.legal-page{min-height:100vh;background:var(--bg-primary);padding:2rem}.legal-header{max-width:800px;margin:0 auto 2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-color)}.legal-back-link{display:inline-block;color:var(--terminal-green);text-decoration:none;font-size:.9rem;margin-bottom:1rem;transition:opacity .2s ease}.legal-back-link:hover{opacity:.8}.legal-header h1{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin:0 0 .5rem}.legal-updated{color:var(--text-tertiary);font-size:.9rem;margin:0}.legal-content{max-width:800px;margin:0 auto}.legal-content section{margin-bottom:2.5rem}.legal-content h2{font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:1rem;padding-bottom:.5rem;border-bottom:2px solid var(--border-light)}.legal-content h3{font-size:1.1rem;font-weight:600;color:var(--text-secondary);margin:1.5rem 0 .75rem}.legal-content p{color:var(--text-secondary);line-height:1.7;margin-bottom:1rem}.legal-content ul{color:var(--text-secondary);line-height:1.7;margin:0 0 1rem 1.5rem;padding:0}.legal-content li{margin-bottom:.5rem}.legal-content a{color:var(--terminal-green);text-decoration:none}.legal-content a:hover{text-decoration:underline}.about-steps{margin:1.5rem 0}.about-step{display:flex;gap:1.5rem;margin-bottom:1.5rem;align-items:flex-start}.about-step-number{flex-shrink:0;width:40px;height:40px;background:var(--gradient-primary);color:var(--text-inverse);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:700}.about-step-content h3{margin-top:0;margin-bottom:.5rem}.about-step-content p{margin:0}.about-cta{text-align:center;padding:2rem;background:var(--bg-secondary);border-radius:12px;margin-top:3rem}.about-cta h2{border-bottom:none!important;margin-bottom:.5rem!important}.about-cta p{margin-bottom:1.5rem}.about-cta-button{display:inline-block;padding:.875rem 2rem;background:var(--gradient-primary);color:var(--text-inverse);text-decoration:none;border-radius:8px;font-weight:600;font-size:1rem;transition:transform .2s ease,box-shadow .2s ease}.about-cta-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-brand);text-decoration:none}.careers-hero p{font-size:1.1rem}.careers-notice{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem;text-align:center}.careers-notice h3{color:var(--text-primary);margin:0 0 .75rem;font-size:1.25rem}.careers-notice p{color:var(--text-tertiary);margin:0}.contact-hero p{font-size:1.1rem}.contact-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;padding:2rem;text-align:center}.contact-card h2{border-bottom:none;margin-bottom:.5rem}.contact-email-link{display:inline-block;margin-top:1rem;padding:.875rem 2rem;background:var(--gradient-primary);color:#fff;text-decoration:none;border:none;cursor:pointer;border-radius:8px;font-weight:600;font-size:1.1rem;transition:transform .2s ease,box-shadow .2s ease}.contact-email-link:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-brand);text-decoration:none}.calendly-card{text-align:left}.calendly-card h2{text-align:center}.calendly-card>p{text-align:center}.calendly-inline-widget{border-radius:8px;overflow:hidden;margin-top:1rem}.calendly-fallback{text-align:center;padding:2rem;margin-top:1rem;border:1px dashed var(--border-color);border-radius:8px}.calendly-fallback-button{background:var(--accent-green);color:var(--bg-primary);border:none;padding:12px 24px;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .1s}.calendly-fallback-button:hover{background:#00cc6a;transform:translateY(-1px)}.input-panel{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--bg-secondary);padding:2rem;border-radius:12px;box-shadow:0 4px 20px var(--shadow-brand);width:90%;max-width:600px;z-index:10}.input-panel h2{margin-bottom:1rem;color:var(--text-primary)}.input-panel textarea{width:100%;padding:1rem;border:2px solid var(--border-light);border-radius:8px;font-size:1rem;font-family:inherit;resize:vertical;margin-bottom:1rem}.input-panel textarea:focus{outline:none;border-color:var(--input-focus-border)}.input-panel button{width:100%;padding:1rem;background:var(--bg-user-message);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.input-panel button:hover:not(:disabled){transform:translateY(-2px)}.input-panel button:disabled{opacity:.6;cursor:not-allowed}.loading-animation{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#00b83015,#00992615);padding:2rem}.loading-content{max-width:600px;width:100%;background:var(--bg-secondary);border-radius:16px;padding:3rem 2rem;box-shadow:0 8px 32px var(--shadow-brand);text-align:center}.loading-icon-container{position:relative;width:120px;height:120px;margin:0 auto 2rem}.loading-icon{font-size:4rem;animation:bounce 1.5s ease-in-out infinite;position:relative;z-index:2}.loading-spinner{position:absolute;top:0;left:0;width:120px;height:120px;border:4px solid var(--border-light);border-top:4px solid var(--terminal-green);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.scroll-animate{opacity:0}.scroll-animate.visible{animation:fadeInUp .6s ease-out forwards}.loading-title{font-size:1.5rem;color:var(--text-primary);margin-bottom:1rem;font-weight:600}.loading-step{font-size:1.1rem;color:var(--terminal-green);margin-bottom:1.5rem;font-weight:500;min-height:1.5rem}.loading-progress-bar{width:100%;height:8px;background:var(--border-light);border-radius:4px;overflow:hidden;margin-bottom:2rem}.loading-progress-fill{height:100%;background:var(--gradient-primary);border-radius:4px;transition:width .3s ease}.loading-steps-list{display:flex;flex-direction:column;gap:.75rem;text-align:left;margin-top:2rem}.loading-step-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;background:#f7fafc;transition:all .3s ease;opacity:.5}.loading-step-item.active{background:linear-gradient(135deg,#00b83015,#00992615);border:2px solid var(--terminal-green);opacity:1;transform:translate(8px)}.loading-step-item.completed{opacity:.7;background:#e6ffed}.loading-step-item .step-icon{font-size:1.5rem;flex-shrink:0}.loading-step-item .step-text{flex:1;font-size:.9rem;color:var(--text-secondary)}.loading-step-item.active .step-text{color:var(--text-primary);font-weight:500}.loading-step-item.completed .step-text{color:var(--text-secondary)}.loading-step-item .step-check{color:#48bb78;font-weight:700;font-size:1.2rem}.diagram-canvas{width:100%;height:100%;background:var(--bg-primary);position:relative}.merge-loading-toast{position:absolute;top:20px;left:50%;transform:translate(-50%);z-index:1000;pointer-events:none}.merge-loading-content{display:flex;align-items:center;gap:12px;background:var(--bg-card);color:var(--text-primary);padding:12px 20px;border-radius:8px;box-shadow:0 4px 12px var(--shadow-md);border:1px solid var(--border-primary);font-size:14px;font-weight:500}.merge-loading-spinner{width:16px;height:16px;border:2px solid var(--border-primary);border-top-color:var(--brand-primary);border-radius:50%;animation:merge-spinner-spin .8s linear infinite}@keyframes merge-spinner-spin{to{transform:rotate(360deg)}}.diagram-canvas-empty{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:2rem}.diagram-canvas-empty h2{font-size:2rem;color:var(--text-secondary);margin:0 0 .75rem;font-weight:600}.diagram-canvas-empty p{font-size:1.1rem;color:var(--text-secondary);margin:0 0 2rem}.empty-state-actions{display:flex;align-items:center;gap:1rem}.empty-state-actions .primary-action{background:var(--gradient-primary);color:var(--text-inverse);border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:transform .2s,box-shadow .2s;box-shadow:0 2px 8px var(--shadow-brand)}.empty-state-actions .primary-action:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--btn-hover-shadow)}.empty-state-actions .action-separator{font-size:1rem;color:var(--text-muted);font-weight:500}.empty-state-actions .chat-hint{font-size:1rem;color:var(--text-secondary);font-weight:500}.empty-state-examples{margin-top:2rem;max-width:900px}.empty-state-examples .examples-label{font-size:.95rem;color:var(--text-tertiary);margin-bottom:1rem;font-weight:500}.empty-state-examples .examples-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}@media(max-width:900px){.empty-state-examples .examples-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.empty-state-examples .examples-grid{grid-template-columns:repeat(2,1fr)}}.empty-state-examples .example-card{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.75rem;text-align:left;font-size:.95rem;font-weight:500;color:var(--text-primary)}.empty-state-examples .example-card:hover{border-color:var(--terminal-green);background:linear-gradient(135deg,#00b83010,#00992610);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-brand)}.empty-state-examples .example-icon{font-size:1.5rem}.empty-state-examples .example-title{flex:1}.canvas-empty-state{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5}.empty-state-content{text-align:center;padding:2rem;max-width:500px;pointer-events:auto}.empty-state-content h3{font-size:1.5rem;color:var(--text-secondary);margin:0 0 .75rem;font-weight:600}.empty-state-content p{font-size:1rem;color:var(--text-secondary);margin:0 0 1.5rem}.empty-state-actions{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap}.empty-state-button{padding:.75rem 1.5rem;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s;font-size:1rem}.empty-state-button.primary{background:var(--gradient-primary);color:var(--text-inverse)}.empty-state-button.primary:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-brand)}.empty-state-divider{color:var(--text-muted);font-weight:500}.empty-state-hint{color:var(--terminal-green);font-weight:500}.floating-buttons{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:12px;z-index:100}.floating-edit-button,.floating-layout-button,.floating-direction-button,.floating-camera-button,.floating-toggle-groups-button{width:56px;height:56px;border-radius:50%;border:none;color:var(--text-inverse);cursor:pointer;box-shadow:0 4px 16px var(--shadow-brand);display:flex;align-items:center;justify-content:center;transition:all .3s ease}.floating-edit-button{background:var(--gradient-primary)}.floating-layout-button{background:linear-gradient(135deg,#48bb78,#38a169)}.floating-direction-button{background:linear-gradient(135deg,#00d4ff,#00b4d8)}.floating-camera-button{background:linear-gradient(135deg,#f6ad55,#ed8936)}.floating-toggle-groups-button{background:linear-gradient(135deg,#4fd1c5,#319795)}.floating-edit-button:hover,.floating-layout-button:hover,.floating-direction-button:hover,.floating-camera-button:hover,.floating-toggle-groups-button:hover{transform:scale(1.1);box-shadow:0 6px 20px var(--btn-hover-shadow)}.floating-edit-button:active,.floating-layout-button:active,.floating-direction-button:active,.floating-camera-button:active,.floating-toggle-groups-button:active{transform:scale(.95)}.custom-node{padding:1rem 1.5rem;border-radius:8px;border:2px solid;background:var(--bg-secondary);min-width:150px;box-shadow:0 2px 8px var(--shadow-sm);transition:transform .2s,box-shadow .2s;position:relative}.custom-node:hover{transform:scale(1.05);box-shadow:0 4px 16px var(--shadow-lg)}.node-type-database{background:var(--node-database)!important;border-color:var(--node-database)!important}.node-type-cache{background:var(--node-cache)!important;border-color:var(--node-cache)!important}.node-type-server{background:var(--node-server)!important;border-color:var(--node-server)!important}.node-type-api{background:var(--node-api)!important;border-color:var(--node-api)!important}.node-type-loadbalancer{background:var(--node-loadbalancer)!important;border-color:var(--node-loadbalancer)!important}.node-type-queue{background:var(--node-queue)!important;border-color:var(--node-queue)!important}.node-type-cdn{background:var(--node-cdn)!important;border-color:var(--node-cdn)!important}.node-type-gateway{background:var(--node-gateway)!important;border-color:var(--node-gateway)!important}.node-type-storage{background:var(--node-storage)!important;border-color:var(--node-storage)!important}.node-type-service{background:var(--node-service)!important;border-color:var(--node-service)!important}.node-type-group{background:#fff;border:2px dashed var(--brand-color)!important;min-width:200px;border-radius:12px}[data-theme=dark] .node-type-group{background:#2a2a2a;border-color:#00b830!important}.node-group{border-style:dashed!important;border-width:2px!important}.group-header{display:flex;align-items:center;gap:8px;padding:4px 8px;background:#667eea1a;border-radius:6px 6px 0 0;margin:-1rem -1.5rem .5rem;padding:.5rem 1rem}.collapse-toggle{background:none;border:none;font-size:14px;cursor:pointer;color:#1a1a1a!important;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;transition:transform .2s}.collapse-toggle:hover{transform:scale(1.2)}.child-count{font-size:11px;color:#1a1a1a!important;font-weight:600}.drop-target{border-color:#10b981!important;border-width:3px!important;box-shadow:0 0 20px #10b98180!important;background:#10b9811a!important}.drop-hint{position:absolute;top:-30px;left:50%;transform:translate(-50%);background:#10b981;color:#fff;padding:4px 12px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap;box-shadow:0 2px 8px #0003;z-index:1000;pointer-events:none}.drop-hint:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#10b981}.node-delete-button{position:absolute;top:-8px;right:-8px;width:24px;height:24px;border-radius:50%;border:none;background:var(--btn-danger);color:var(--text-inverse);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px var(--shadow-md);transition:all .2s;z-index:10;padding:0;line-height:1}.node-delete-button:hover{background:var(--btn-danger-hover);transform:scale(1.1);box-shadow:0 3px 8px var(--shadow-lg)}.regroup-button{position:absolute;top:-8px;left:-8px;width:24px;height:24px;border-radius:50%;border:none;background:var(--brand-color);color:var(--text-inverse);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px var(--shadow-md);transition:all .2s;z-index:10;padding:0;line-height:1}.regroup-button:hover{background:var(--brand-primary-light);transform:scale(1.1);box-shadow:0 3px 8px var(--shadow-lg)}.custom-node-shaped{cursor:pointer;transition:transform .2s,filter .2s}.custom-node-shaped:hover{transform:scale(1.05);filter:drop-shadow(0 4px 8px rgba(0,0,0,.25))}.node-content{display:flex;flex-direction:column;gap:.5rem}.node-label{font-weight:600;font-size:.95rem;color:#1a1a1a!important}.node-type-group .node-label{color:#1a1a1a!important}[data-theme=dark] .node-type-group .node-label{color:#fff!important}.node-type-badge{font-size:.75rem;color:#1a1a1a!important;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.tooltip-container{z-index:1000;pointer-events:auto}.node-tooltip{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:1rem;max-width:300px;box-shadow:0 4px 16px var(--shadow-brand);cursor:text;-webkit-user-select:text;user-select:text}.node-tooltip h4{margin-bottom:.5rem;color:var(--text-primary)}.node-type{font-size:.85rem;color:var(--terminal-green);font-weight:600;text-transform:uppercase;margin-bottom:.5rem}.node-description{font-size:.9rem;color:var(--text-secondary);margin-bottom:.75rem;line-height:1.4}.node-tech,.node-io{font-size:.85rem;color:var(--text-secondary);margin-bottom:.5rem}.tooltip-hint{font-size:.8rem;color:var(--text-muted);font-style:italic;margin-top:.75rem;border-top:1px solid var(--border-light);padding-top:.5rem}.tooltip-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.tooltip-header-buttons{display:flex;align-items:center;gap:.25rem}.tooltip-edit-btn,.tooltip-ai-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;opacity:.6;transition:opacity .2s}.tooltip-edit-btn:hover,.tooltip-ai-btn:hover:not(:disabled){opacity:1}.tooltip-ai-btn:disabled{cursor:not-allowed;opacity:.3}.tooltip-ai-btn{animation:none}.tooltip-ai-btn:not(:disabled):hover{animation:pulse 1s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.tooltip-input{width:100%;padding:.5rem;border:1px solid var(--border-light);border-radius:4px;font-size:.9rem;margin-bottom:.5rem;font-family:inherit}.tooltip-input:focus{outline:none;border-color:var(--input-focus-border)}.tooltip-textarea{width:100%;padding:.5rem;border:1px solid var(--border-light);border-radius:4px;font-size:.9rem;margin-bottom:.5rem;font-family:inherit;resize:vertical}.tooltip-textarea:focus{outline:none;border-color:var(--input-focus-border)}.tooltip-actions{display:flex;gap:.5rem;margin-top:.75rem}.tooltip-save-btn,.tooltip-cancel-btn{flex:1;padding:.5rem 1rem;border:none;border-radius:4px;font-size:.9rem;cursor:pointer;transition:all .2s}.tooltip-save-btn{background:var(--terminal-green);color:var(--text-inverse)}.tooltip-save-btn:hover{background:var(--terminal-green-dim)}.tooltip-cancel-btn{background:var(--border-light);color:var(--text-primary)}.tooltip-cancel-btn:hover{background:var(--border-dark)}.chat-panel{background:var(--bg-secondary);border-left:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:-2px 0 8px var(--shadow-sm);position:relative;min-width:150px;max-width:1200px;will-change:width;transition:none}.resize-handle{position:absolute;left:0;top:0;bottom:0;width:8px;cursor:col-resize;background:transparent;z-index:10;transition:background .2s}.resize-handle:hover{background:#667eea33}.resize-handle:active{background:#667eea66}.chat-header{padding:.75rem 1rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary)}.chat-header-content{display:flex;flex-direction:column}.chat-header-row{display:flex;align-items:center;gap:.75rem}.chat-context{font-size:.85rem;color:var(--terminal-green);font-weight:600;flex:1}.model-select{padding:6px 32px 6px 12px;font-size:.9rem;font-weight:500;border-radius:4px;border:1px solid #000;background-color:#0000000d;color:var(--text-primary);cursor:pointer;transition:border-color .2s;min-width:180px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000' d='M6 9L1 4h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}[data-theme=dark] .model-select{border:1px solid #fff;background-color:#ffffff1a;color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23fff' d='M6 9L1 4h10z'/%3E%3C/svg%3E")}.model-select:hover:not(:disabled){border-color:var(--terminal-green)}.model-select:focus{outline:none;border-color:var(--terminal-green);box-shadow:0 0 0 2px #667eea1a}.model-select:disabled{opacity:.6;cursor:not-allowed;background-color:var(--bg-secondary)}.model-select option{background-color:var(--bg-tertiary);color:var(--text-primary)}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.message{display:flex;flex-direction:column;gap:.25rem}.message-role{font-size:.75rem;font-weight:600;text-transform:uppercase;color:var(--text-muted)}.message.user .message-role{color:var(--terminal-green)}.message.assistant .message-role{color:var(--terminal-green-dim)}.message.system .message-role{color:var(--text-muted)}.message-content{padding:.75rem 1rem;border-radius:8px;line-height:1.5;font-size:.95rem}.message-content h1,.message-content h2,.message-content h3{margin-top:.5rem;margin-bottom:.5rem}.message-content h1{font-size:1.4rem}.message-content h2{font-size:1.2rem}.message-content h3{font-size:1.05rem}.message-content p{margin:.5rem 0}.message-content ul,.message-content ol{margin:.5rem 0;padding-left:1.5rem}.message-content li{margin:.25rem 0}.message-content code{background:var(--shadow-sm);padding:.1rem .3rem;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.message-content pre{background:var(--shadow-sm);padding:.75rem;border-radius:6px;overflow-x:auto;margin:.5rem 0}.message-content pre code{background:none;padding:0}.message-content strong{font-weight:600}.message-content em{font-style:italic}.message.user .message-content{background:var(--bg-user-message);color:#fff;align-self:flex-end;max-width:80%}.message.assistant .message-content{background:var(--bg-primary);color:var(--text-primary);align-self:flex-start;max-width:85%}.message.system .message-content{background:var(--bg-secondary);color:var(--text-tertiary);align-self:center;max-width:90%;text-align:center;font-size:.9rem;font-style:italic;border:1px dashed var(--border-dark)}.message-content.typing{font-style:italic;opacity:.7}.node-focus-indicator{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--brand-primary-lightest);border-top:1px solid var(--brand-primary-light);border-bottom:1px solid var(--brand-primary-light);font-size:.9rem;color:var(--text-primary)}.node-focus-indicator span{display:flex;align-items:center;gap:.25rem}.exit-node-focus-button{background:transparent;border:1px solid var(--border-dark);border-radius:4px;padding:.25rem .5rem;font-size:.9rem;color:var(--text-secondary);cursor:pointer;transition:all .2s;min-height:28px;line-height:1}.exit-node-focus-button:hover{background:var(--border-light);border-color:var(--border-color);color:var(--text-primary)}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;padding:.75rem 1rem;border-top:1px solid var(--border-color);background:var(--bg-primary)}.chat-suggestion-pill{padding:6px 12px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:16px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.chat-suggestion-pill:hover{background:var(--terminal-green);color:#fff;border-color:var(--terminal-green);transform:translateY(-1px)}.chat-suggestion-pill:active{transform:translateY(0)}.chat-input-form{padding:1rem;border-top:1px solid var(--border-color);display:flex;gap:.5rem;background:var(--bg-primary)}.chat-input-form textarea{flex:1;padding:.75rem;border:2px solid var(--border-color);border-radius:8px;font-size:.95rem;font-family:inherit;background:var(--bg-secondary);color:var(--text-primary);resize:none;min-height:44px;line-height:1.5;overflow-y:auto;transition:height .1s ease}.chat-input-form textarea:focus{outline:none;border-color:var(--input-focus-border);background:var(--bg-secondary)}.chat-input-form textarea::placeholder{color:var(--input-placeholder)}.chat-input-form button{padding:.75rem 1.5rem;background:var(--bg-user-message);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:transform .2s}.chat-input-form button:hover:not(:disabled){transform:translateY(-2px)}.chat-input-form button:disabled{opacity:.6;cursor:not-allowed}.context-menu{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;box-shadow:0 4px 12px var(--shadow-md);z-index:1000;overflow:hidden}.context-menu button{display:block;width:100%;padding:10px 16px;border:none;background:var(--bg-secondary);text-align:left;cursor:pointer;font-size:14px;color:var(--btn-danger);transition:background .2s}.context-menu button:hover{background:var(--bg-primary)}.react-flow{background-color:var(--react-flow-bg)}.react-flow__node{cursor:pointer}.react-flow__edge-path{stroke:var(--edge-color);stroke-width:2}.react-flow__edge-text,.react-flow__edge-textbg{display:none}.react-flow__controls{background:var(--bg-secondary);border:1px solid var(--border-color)}.react-flow__controls button{background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);color:var(--text-primary)}.react-flow__controls button:hover{background:var(--bg-primary)}.react-flow__minimap{background:var(--bg-secondary);border:1px solid var(--border-color)}.design-doc-panel{background:var(--bg-secondary);border-right:1px solid var(--border-color);display:flex;flex-direction:column;box-shadow:2px 0 8px var(--shadow-sm);position:fixed;left:0;top:108px;bottom:0;min-width:150px;max-width:1200px;z-index:1000;overflow:visible;will-change:width;transition:none}.resize-handle-right{position:absolute;right:0;top:0;bottom:0;width:8px;cursor:col-resize;background:transparent;z-index:10;transition:background .2s;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.resize-handle-right:hover{background:#667eea33}.resize-handle-right:active{background:#667eea66}.design-doc-header{padding:1rem;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center;background:var(--bg-primary)}.design-doc-header h3{font-size:1.1rem;color:var(--text-primary);margin:0}.close-button{background:#fff3;color:#1a1a1a;border:2px solid #1a1a1a;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1.5rem;font-weight:400;border-radius:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .2s}.close-button:hover{background:var(--text-inverse);color:var(--terminal-green);border-color:#1a1a1a;transform:translateY(-2px)}.design-doc-toolbar{padding:.75rem;border-bottom:1px solid var(--border-color);background:var(--bg-primary);display:flex;gap:.5rem;flex-wrap:wrap}.design-doc-toolbar button{padding:.5rem .75rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;color:var(--text-secondary);transition:all .2s;min-width:36px}.design-doc-toolbar button:hover{background:var(--bg-primary);border-color:var(--border-dark)}.design-doc-toolbar button.is-active{background:var(--gradient-primary);color:var(--text-inverse);border-color:var(--terminal-green)}.design-doc-editor{flex:1;overflow-y:auto;padding:1.5rem;position:relative}.generating-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.generating-spinner{width:60px;height:60px;border:4px solid var(--border-light);border-top-color:var(--terminal-green);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1.5rem}.generating-overlay h3{font-size:1.5rem;color:var(--text-primary);margin-bottom:.75rem;font-weight:600}.generating-overlay p{font-size:1rem;color:var(--text-tertiary);max-width:400px;line-height:1.6}.ProseMirror{outline:none;min-height:100%;font-size:1rem;line-height:1.6;color:var(--text-primary)}.ProseMirror h1{font-size:2rem;font-weight:700;margin:1.5rem 0 1rem;color:var(--text-primary)}.ProseMirror h2{font-size:1.5rem;font-weight:600;margin:1.25rem 0 .75rem;color:var(--text-primary)}.ProseMirror h3{font-size:1.25rem;font-weight:600;margin:1rem 0 .5rem;color:var(--text-secondary)}.ProseMirror p{margin:.75rem 0}.ProseMirror ul,.ProseMirror ol{margin:.75rem 0;padding-left:2rem}.ProseMirror li{margin:.25rem 0}.ProseMirror strong{font-weight:600}.ProseMirror em{font-style:italic}.ProseMirror code{background:var(--bg-primary);padding:.2rem .4rem;border-radius:4px;font-family:Courier New,monospace;font-size:.9em;color:#d63384}.ProseMirror pre{background:var(--bg-primary);color:var(--text-primary);padding:1rem;border-radius:8px;overflow-x:auto;margin:1rem 0;font-family:Courier New,monospace;font-size:.9rem}.ProseMirror pre code{background:none;color:inherit;padding:0}.ProseMirror blockquote{border-left:4px solid var(--border-dark);padding-left:1rem;margin:1rem 0;color:var(--text-secondary);font-style:italic}.design-doc-footer{padding:1rem 1.5rem;border-top:1px solid var(--border-color);background:var(--bg-primary);display:flex;justify-content:space-between;align-items:center}.save-status{font-size:.9rem;color:var(--text-tertiary);font-weight:500}.save-status.saving{color:#f6ad55}.save-status.saved{color:#48bb78}.save-status.error{color:#f56565}.export-buttons{display:flex;gap:.5rem}.export-dropdown{padding:.5rem 1rem;background:var(--gradient-primary);color:var(--text-inverse);border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:transform .2s}.export-dropdown:hover:not(:disabled){transform:translateY(-2px)}.export-dropdown:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1024px){.app-header{padding:1rem 1.5rem}.app-logo{height:50px}.app-header h1{font-size:1.5rem}.app-header p{font-size:.85rem}.header-buttons{gap:.75rem}.add-node-button,.new-design-button,.create-design-doc-button{padding:.6rem 1rem;font-size:.9rem}.chat-panel,.design-doc-panel{min-width:250px;max-width:350px}}@media(max-width:768px){.app-header{flex-direction:column;padding:.75rem 1rem;gap:.75rem;align-items:flex-start}.title-with-logo{gap:.75rem;width:100%;justify-content:space-between}.app-logo{height:40px}.app-header h1{font-size:1.25rem;margin-bottom:.1rem}.app-header p{font-size:.75rem}.header-right{width:100%;margin-left:0;flex-direction:column;gap:.75rem}.header-buttons{width:100%;justify-content:space-between;gap:.5rem}.auth-buttons{width:100%;justify-content:flex-end}.add-node-button,.new-design-button,.create-design-doc-button,.export-button{padding:.5rem .75rem;font-size:.85rem;flex:1;white-space:nowrap}.hero-section{padding:2rem 1rem}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.hero-cta{font-size:.9rem}.landing-input-form{padding:1.5rem}.landing-textarea{font-size:1rem;padding:1rem}.landing-generate-button{padding:1rem;font-size:1rem}.example-prompts-grid{grid-template-columns:1fr}.example-prompt-card{padding:.75rem;font-size:.9rem}.empty-state-examples .examples-grid{grid-template-columns:1fr}.empty-state-examples .example-card{padding:.75rem;font-size:.9rem}.diagram-canvas-empty h2{font-size:1.5rem}.diagram-canvas-empty p{font-size:1rem}.empty-state-actions{flex-direction:column;gap:.5rem}.empty-state-actions .action-separator{display:none}.features-section{padding:2rem 1rem}.features-heading{font-size:1.5rem;margin-bottom:1.5rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.feature-icon{font-size:2.5rem}.feature-title{font-size:1.1rem}.showcase-section{display:none}.how-it-works-section{padding:2rem 1rem}.how-it-works-heading{font-size:1.5rem}.steps-grid{grid-template-columns:1fr;gap:1.5rem}.step-number{width:50px;height:50px;font-size:1.5rem}.chat-panel.mobile-modal{position:fixed;inset:0;width:100%;max-width:none;min-width:0;z-index:2000;border-left:none;box-shadow:none}.chat-panel.mobile-modal .resize-handle{display:none}.design-doc-panel.mobile-modal{position:fixed;inset:0;width:100%;max-width:none;min-width:0;z-index:2000;border-right:none;box-shadow:none}.design-doc-panel.mobile-modal .resize-handle-right{display:none}.node-type-grid{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:.5rem}.node-type-card{padding:.5rem;min-height:44px}.node-type-label{font-size:.85rem}.floating-edit-button{width:64px;height:64px;bottom:20px}.react-flow__controls{display:none}.loading-content{padding:2rem 1.5rem}.loading-icon-container{width:100px;height:100px}.loading-icon{font-size:3rem}.loading-spinner{width:100px;height:100px}.loading-title{font-size:1.25rem}.loading-step{font-size:1rem}.chat-messages{padding:.75rem}.message-content{font-size:.9rem;padding:.6rem .85rem;max-width:90%}.message.user .message-content{max-width:85%}.message.assistant .message-content{max-width:90%}.chat-suggestions{padding:.5rem .75rem;gap:.4rem}.chat-suggestion-pill{padding:5px 10px;font-size:12px}.chat-input-form{padding:.75rem}.chat-input-form textarea{font-size:1rem}.chat-input-form button{padding:.75rem 1rem}.design-doc-editor{padding:1rem}.design-doc-toolbar{padding:.5rem;gap:.25rem}.design-doc-toolbar button{padding:.4rem .6rem;font-size:.85rem;min-width:32px}.node-tooltip{max-width:calc(100vw - 2rem)}.context-menu{min-width:150px}.context-menu button{padding:12px 16px;font-size:16px}.custom-node{min-width:120px;padding:.85rem 1.25rem}.node-label{font-size:.9rem}.node-type-badge{font-size:.7rem}.node-delete-button{width:28px;height:28px;font-size:14px;top:-10px;right:-10px}.featured-on-section{padding:2rem 1rem}.featured-on-heading{font-size:1.5rem;margin-bottom:1.5rem}.featured-on-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.featured-badge-img{max-width:140px}.site-header{padding:.75rem 1rem}.header-logo-text{font-size:1rem}.header-logo-img{width:28px;height:28px}.landing-footer,.site-footer{padding:2rem 1rem 1.5rem}.footer-links{flex-direction:column;gap:1rem}.footer-logo{font-size:1.25rem}.legal-page{padding:1rem}.legal-header h1{font-size:1.75rem}.legal-content h2{font-size:1.25rem}.about-step{flex-direction:column;gap:1rem}.about-step-number{width:36px;height:36px;font-size:1rem}}@media(max-width:480px){.app-header h1{font-size:1.1rem}.app-header p{display:none}.header-buttons{flex-wrap:wrap}.add-node-button,.new-design-button,.create-design-doc-button{font-size:.8rem;padding:.5rem}.hero-title{font-size:1.75rem}.hero-subtitle{font-size:.95rem}.landing-input-form{padding:1rem}.node-type-grid{grid-template-columns:repeat(2,1fr)}.example-icon{font-size:1.25rem}.featured-on-grid{gap:1rem}.featured-badge-img{max-width:120px}.custom-node{min-width:100px;max-width:140px;padding:.5rem .6rem}.node-label{font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.node-type-badge{font-size:.6rem;padding:2px 4px}.node-content{gap:2px}.group-header{font-size:.65rem;padding:2px 4px;gap:4px}.collapse-toggle{font-size:.6rem;padding:2px}.react-flow__handle{width:6px;height:6px}.app-header{padding:.5rem .75rem;flex-wrap:wrap;gap:.5rem}.app-logo{height:28px}.title-text .app-title-heading{font-size:1rem}.title-text p{display:none}.header-buttons button{padding:6px 8px;font-size:.7rem}.header-right{flex-direction:row;flex-wrap:wrap;width:auto;gap:.5rem}.header-buttons:empty{display:none}.auth-buttons{gap:.5rem;width:auto;flex-wrap:nowrap}.header-visitors-badge{height:24px}.sign-in-button{padding:6px 12px;font-size:.8rem;white-space:nowrap}.history-toggle-button{min-width:36px;height:36px;padding:6px;font-size:16px}.floating-edit-button,.floating-layout-button,.floating-direction-button,.floating-camera-button,.floating-toggle-groups-button{width:44px;height:44px}.floating-edit-button svg,.floating-layout-button svg,.floating-direction-button svg,.floating-camera-button svg,.floating-toggle-groups-button svg{width:18px;height:18px}.floating-buttons{bottom:16px;gap:8px}}@media(max-width:375px){.hero-section{padding:1.5rem .75rem}.hero-title{font-size:1.5rem}.hero-subtitle{font-size:.85rem}.landing-input-form{padding:.75rem}.landing-textarea{font-size:1rem;padding:.75rem;min-height:80px}.landing-generate-button{padding:.75rem;font-size:.9rem}.example-prompts-grid{gap:.5rem}.example-prompt-card{padding:.5rem .75rem;font-size:.8rem;gap:.5rem}.example-icon{font-size:1rem}.example-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.featured-on-grid{grid-template-columns:1fr;gap:1rem}.featured-badge-img{max-width:100px}.features-section{padding:1.5rem .75rem}.features-heading{font-size:1.25rem}.feature-card{padding:1rem}.feature-icon{font-size:2rem}.feature-title{font-size:1rem}.feature-description{font-size:.85rem}.how-it-works-section{padding:1.5rem .75rem}.how-it-works-heading{font-size:1.25rem}.step-number{width:40px;height:40px;font-size:1.25rem}.step-title{font-size:1rem}.step-description{font-size:.85rem}.app-header{padding:.5rem;gap:.25rem}.app-logo{height:24px}.title-text .app-title-heading{font-size:.9rem}.sign-in-button{padding:5px 10px;font-size:.75rem}.landing-footer{padding:1.5rem .75rem 1rem}.footer-logo{font-size:1rem}}.mobile-zoom-hint{position:absolute;bottom:100px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:8px 16px;border-radius:20px;font-size:14px;z-index:100;animation:fadeInOut 4s ease-in-out forwards;pointer-events:none;white-space:nowrap}@keyframes fadeInOut{0%{opacity:0;transform:translate(-50%) translateY(10px)}15%{opacity:1;transform:translate(-50%) translateY(0)}85%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-10px)}}.history-toggle-button{background:#fff3;border:2px solid #1a1a1a;color:#1a1a1a;padding:8px 12px;border-radius:8px;cursor:pointer;font-size:18px;transition:all .2s;display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.history-toggle-button:hover{background:var(--text-inverse);color:var(--terminal-green);border-color:#1a1a1a;transform:translateY(-2px)}.history-toggle-button.active{background:var(--text-inverse);color:var(--terminal-green);border-color:#1a1a1a}.history-toggle-button:active{transform:scale(.95)}.tool-landing-page{min-height:100vh;background:linear-gradient(135deg,#00b830,#009926)}.tool-hero-section{padding:4rem 2rem;max-width:800px;margin:0 auto;text-align:center}.tool-back-link{display:inline-block;color:#fffc;text-decoration:none;margin-bottom:2rem;font-size:.9rem;transition:color .2s}.tool-back-link:hover{color:#fff}.tool-hero-title{font-size:3rem;color:#fff;margin-bottom:1.5rem;font-weight:700}.tool-hero-subtitle{font-size:1.25rem;color:#ffffffe6;margin-bottom:2rem;line-height:1.6}.tool-cta-button{display:inline-block;background:#fff;color:#00b830;padding:1rem 2.5rem;border-radius:8px;font-size:1.1rem;font-weight:600;text-decoration:none;transition:all .2s;box-shadow:0 4px 15px #0003}.tool-cta-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #00000040}.tool-section{padding:4rem 2rem;max-width:1200px;margin:0 auto;background:#fff}.tool-section h2{font-size:2rem;color:#1a1a1a;margin-bottom:1.5rem;text-align:center}.tool-section p{font-size:1.1rem;color:#555;line-height:1.7;max-width:800px;margin:0 auto 1rem}.tool-section-alt{background:#f8f9fa}.section-intro{text-align:center;margin-bottom:2rem}.use-cases-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.use-case-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s}.use-case-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.use-case-icon{font-size:2.5rem;margin-bottom:1rem}.use-case-card h3{font-size:1.25rem;color:#1a1a1a;margin-bottom:.75rem}.use-case-card p{font-size:1rem;color:#666;margin:0}.faq-list{max-width:800px;margin:2rem auto 0}.faq-item{background:#fff;border-radius:8px;padding:1.5rem;margin-bottom:1rem;box-shadow:0 2px 4px #0000000d}.tool-section-alt .faq-item{background:#fff}.faq-item h3{font-size:1.1rem;color:#1a1a1a;margin-bottom:.75rem}.faq-item p{font-size:1rem;color:#555;margin:0;text-align:left}.tool-cta-section{background:linear-gradient(135deg,#00b830,#009926);text-align:center}.tool-cta-section h2{color:#fff}.tool-cta-section p{color:#ffffffe6;margin-bottom:2rem}.component-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin-top:2rem}.component-card{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:8px;padding:1rem 1.5rem;box-shadow:0 2px 4px #0000000d}.component-icon{font-size:2rem}.component-info h3{font-size:1rem;color:#1a1a1a;margin-bottom:.25rem}.component-info p{font-size:.875rem;color:#666;margin:0}.cloud-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-top:2rem}.cloud-card{background:#fff;border-radius:12px;padding:2rem;text-align:center;box-shadow:0 2px 8px #00000014}.cloud-icon{font-size:3rem;margin-bottom:1rem}.cloud-card h3{font-size:1.25rem;color:#1a1a1a;margin-bottom:.75rem}.cloud-card p{font-size:.95rem;color:#666;margin:0}.example-prompts-list{max-width:700px;margin:2rem auto 0}.example-prompt-item{display:flex;align-items:center;gap:1rem;background:#fff;border-radius:8px;padding:1rem 1.5rem;margin-bottom:.75rem;box-shadow:0 2px 4px #0000000d}.example-prompt-icon{font-size:1.5rem}.example-prompt-item span:last-child{font-size:.95rem;color:#444;font-style:italic}.learn-more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.learn-more-card{display:flex;flex-direction:column;background:#fff;border-radius:12px;padding:1.5rem;text-decoration:none;color:inherit;box-shadow:0 2px 8px #00000014;transition:transform .2s,box-shadow .2s;border:2px solid transparent}.learn-more-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #667eea26;border-color:#00b830}.learn-more-icon{font-size:2rem;margin-bottom:.75rem}.learn-more-card h3{font-size:1.1rem;color:#1a1a1a;margin-bottom:.5rem}.learn-more-card p{font-size:.9rem;color:#666;margin:0;line-height:1.5}.compare-page .tool-hero-section{padding-bottom:2rem}.comparison-table-wrapper{overflow-x:auto;margin-top:2rem}.comparison-table{width:100%;border-collapse:collapse;min-width:800px}.comparison-table th,.comparison-table td{padding:1rem;text-align:center;border-bottom:1px solid #eee}.comparison-table th{background:#f8f9fa;font-weight:600;color:#1a1a1a;position:relative}.comparison-table th.highlight{background:linear-gradient(135deg,#00b830,#009926);color:#fff}.highlight-badge{display:block;font-size:.7rem;font-weight:400;opacity:.9;margin-top:.25rem}.comparison-table td.highlight{background:#667eea0d}.feature-name{text-align:left;font-weight:500;color:#333}.comparison-table .check{color:#22c55e;font-size:1.25rem;font-weight:700}.comparison-table .cross{color:#ef4444;font-size:1.25rem}.tool-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.tool-detail-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014}.tool-detail-card.highlight{border:2px solid #00b830;background:linear-gradient(135deg,#667eea0d,#764ba20d)}.tool-detail-card h3{font-size:1.25rem;color:#1a1a1a;margin-bottom:.75rem}.tool-description{font-size:.95rem;color:#555;margin-bottom:1rem}.tool-best-for{font-size:.9rem;color:#666;padding-top:1rem;border-top:1px solid #eee}.tool-try-button{display:inline-block;background:linear-gradient(135deg,#00b830,#009926);color:#fff;padding:.75rem 1.5rem;border-radius:6px;font-size:.9rem;font-weight:600;text-decoration:none;margin-top:1rem;transition:all .2s}.tool-try-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.why-choose-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}.why-choose-card{background:#f8f9fa;border-radius:12px;padding:1.5rem}.why-choose-card h3{font-size:1.1rem;color:#1a1a1a;margin-bottom:.75rem}.why-choose-card p{font-size:.95rem;color:#555;margin:0;text-align:left}.when-to-use-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.when-to-use-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 8px #00000014}.when-to-use-card h3{font-size:1.1rem;color:#1a1a1a;margin-bottom:1rem}.when-to-use-card ul{list-style:none;padding:0;margin:0}.when-to-use-card li{padding:.5rem 0 .5rem 1.5rem;position:relative;color:#555;font-size:.95rem}.when-to-use-card li:before{content:"→";position:absolute;left:0;color:#00b830}@media(max-width:768px){.tool-hero-title{font-size:2rem}.tool-hero-subtitle{font-size:1rem}.tool-section{padding:2rem 1rem}.tool-section h2{font-size:1.5rem}.comparison-table-wrapper{margin:2rem -1rem 0;padding:0 1rem}}.floating-chat-button{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#667eea,#764ba2);border:none;box-shadow:0 4px 12px #667eea66;cursor:pointer;z-index:1000;font-size:24px;display:flex;align-items:center;justify-content:center;transition:transform .2s,box-shadow .2s}.floating-chat-button:hover{transform:scale(1.05);box-shadow:0 6px 16px #667eea80}.floating-chat-button:active{transform:scale(.95)}@media(min-width:769px){.floating-chat-button{display:none}}.floating-chat-button.palette-open{bottom:140px}.session-history-page{display:flex;flex-direction:column;height:100vh;background:var(--gradient-primary)}.session-history-content{flex:1;overflow-y:auto;padding:40px 20px;max-width:1400px;margin:0 auto;width:100%}.history-header{margin-bottom:40px;text-align:center;color:var(--bg-tertiary)}.history-header h2{font-size:2.5rem;font-weight:700;margin-bottom:8px}.history-subtitle{font-size:1.1rem;opacity:.9}.sessions-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.session-card{background:var(--bg-tertiary);border-radius:10px;padding:16px;cursor:pointer;transition:all .2s ease;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:12px}.session-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.session-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.session-date{font-size:.85rem;color:var(--text-muted);font-weight:600}.session-model{font-size:.7rem;background:var(--bg-secondary);padding:3px 8px;border-radius:4px;color:var(--text-muted);white-space:nowrap}.session-name{font-size:1.1rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:-4px 0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.session-stats{display:flex;gap:12px;padding:10px 0;border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}.stat{display:flex;flex-direction:column;align-items:center;flex:1}.stat-value{font-size:1.4rem;font-weight:700;color:var(--brand-purple);line-height:1;margin-bottom:3px}.stat-label{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.session-badge{display:inline-flex;align-items:center;gap:4px;background:var(--badge-bg);color:var(--badge-text);padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600;align-self:flex-start}.badge-icon{font-size:.9rem}.session-card-footer{margin-top:auto;padding-top:4px}.resume-hint{font-size:.75rem;color:var(--text-muted);font-style:italic}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--bg-tertiary)}.spinner{width:48px;height:48px;border:4px solid var(--spinner-border);border-top-color:var(--bg-tertiary);border-radius:50%;animation:spin .8s linear infinite;margin-bottom:16px}@keyframes spin{to{transform:rotate(360deg)}}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--bg-tertiary)}.error-state p{font-size:1.1rem;margin-bottom:16px}.error-state button{background:var(--bg-tertiary);color:var(--brand-purple);border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer}.error-state button:hover{background:var(--bg-secondary)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--bg-tertiary);text-align:center}.empty-state h3{font-size:1.75rem;margin-bottom:12px}.empty-state p{font-size:1.1rem;margin-bottom:24px;opacity:.9}.empty-state .new-design-button{background:var(--bg-tertiary);color:var(--brand-purple);border:none;padding:14px 28px;border-radius:8px;font-weight:600;font-size:1rem;cursor:pointer;transition:all .2s ease}.empty-state .new-design-button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}@media(max-width:768px){.session-history-content{padding:20px 12px}.history-header h2{font-size:2rem}.sessions-grid{grid-template-columns:1fr;gap:12px}.session-stats{gap:12px}.stat-value{font-size:1.3rem}}@media(max-width:480px){.session-card-header{flex-direction:column;gap:8px}.session-model{align-self:flex-start}}.blog-page{min-height:100vh;background:var(--bg-primary, #0a0a0a);display:flex;flex-direction:column}.blog-header{padding:40px 20px;text-align:center;color:#fff}.blog-back-link{display:inline-block;color:#fffc;text-decoration:none;margin-bottom:20px;font-size:14px;transition:color .2s}.blog-back-link:hover{color:#fff}.blog-header h1{font-size:2.5rem;margin:0 0 10px}.blog-subtitle{font-size:1.1rem;opacity:.9;margin:0}.blog-content{flex:1;max-width:800px;margin:0 auto;padding:0 20px 40px;width:100%;box-sizing:border-box}.blog-posts-list{display:flex;flex-direction:column;gap:20px}.blog-post-card{background:var(--bg-card, #1c2128);border:1px solid var(--border-color, #30363d);border-radius:8px;overflow:hidden;box-shadow:0 4px 20px #0000004d;transition:transform .2s,box-shadow .2s,border-color .2s}.blog-post-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #00b83026;border-color:#00b830}.blog-post-link{display:block;padding:24px;text-decoration:none;color:inherit}.blog-post-title{font-size:1.4rem;color:var(--text-primary, #e6edf3);margin:0 0 12px;line-height:1.3}.blog-post-description{font-size:1rem;color:var(--text-secondary, #8b949e);margin:0 0 16px;line-height:1.6}.blog-post-meta{display:flex;gap:16px;font-size:.85rem;color:var(--text-tertiary, #6e7681)}.blog-post-date{font-weight:500}.blog-post-page{min-height:100vh;background:var(--bg-primary, #0a0a0a);display:flex;flex-direction:column}.blog-post-header{padding:40px 20px;text-align:center;color:#fff}.blog-post-header h1{font-size:2rem;max-width:800px;margin:0 auto 16px;line-height:1.3}.blog-post-header-meta{font-size:.95rem;opacity:.9}.blog-post-body{flex:1;max-width:800px;margin:0 auto;padding:0 20px 40px;width:100%;box-sizing:border-box}.blog-post-content{background:var(--bg-card, #1c2128);border:1px solid var(--border-color, #30363d);border-radius:8px;padding:40px;box-shadow:0 4px 20px #0000004d;line-height:1.8;font-size:1.05rem;color:var(--text-primary, #e6edf3)}.blog-post-content h2{font-size:1.5rem;color:var(--text-primary, #e6edf3);margin:32px 0 16px;padding-top:16px;border-top:1px solid var(--border-color, #30363d)}.blog-post-content h2:first-child{margin-top:0;padding-top:0;border-top:none}.blog-post-content h3{font-size:1.2rem;color:var(--text-primary, #e6edf3);margin:24px 0 12px}.blog-post-content p{margin:0 0 16px}.blog-post-content ul,.blog-post-content ol{margin:0 0 16px;padding-left:24px}.blog-post-content li{margin-bottom:8px}.blog-post-content a{color:#00b830;text-decoration:none}.blog-post-content a:hover{text-decoration:underline}.blog-post-content code{background:var(--bg-secondary, #0d1117);padding:2px 6px;border-radius:4px;font-size:.9em;color:var(--terminal-cyan, #00d4ff)}.blog-post-content pre{background:#1a1a2e;color:#f5f5f5;padding:16px;border-radius:8px;overflow-x:auto;margin:16px 0}.blog-post-content pre code{background:none;padding:0}.blog-post-content blockquote{border-left:4px solid #00b830;margin:16px 0;padding:12px 20px;background:#00b8300d;border-radius:0 8px 8px 0}.blog-post-content blockquote p{margin:0}.blog-post-content strong{color:var(--text-primary, #e6edf3)}.blog-post-content table{width:100%;border-collapse:collapse;margin:24px 0;font-size:.95rem}.blog-post-content th,.blog-post-content td{padding:12px 16px;text-align:left;border:1px solid var(--border-color, #30363d)}.blog-post-content th{background:var(--bg-secondary, #0d1117);font-weight:600;color:var(--text-primary, #e6edf3)}.blog-post-content tr:nth-child(2n){background:var(--bg-secondary, #0d1117)}.blog-post-content tr:hover{background:#00b8300d}.blog-post-content img{max-width:100%;height:auto;border-radius:8px;margin:16px 0;box-shadow:0 4px 12px #0000001a}.youtube-embed{position:relative;width:100%;padding-bottom:56.25%;margin:1.5rem 0}.youtube-embed iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none;border-radius:8px;box-shadow:0 4px 12px #0000001a}.featured-section{margin-top:48px;padding-top:40px;border-top:1px solid rgba(255,255,255,.2)}.featured-title{color:#fff;font-size:1.5rem;margin:0 0 8px;text-align:center}.featured-subtitle{color:#fffc;font-size:1rem;margin:0 0 24px;text-align:center}.featured-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.featured-card{display:flex;gap:16px;padding:20px;background:var(--bg-card, #1c2128);border:1px solid var(--border-color, #30363d);border-radius:8px;text-decoration:none;color:inherit;box-shadow:0 4px 20px #0000004d;transition:transform .2s,box-shadow .2s,border-color .2s}.featured-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #00b83026;border-color:#00b830}.featured-card-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary, #0d1117);border-radius:8px;color:#00b830}.featured-card-icon-youtube{background:red}.featured-card-content{flex:1;min-width:0}.featured-card-platform{display:inline-block;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#00b830;margin-bottom:4px}.featured-card-title{font-size:1rem;font-weight:600;color:var(--text-primary, #e6edf3);margin:0 0 6px;line-height:1.3}.featured-card-description{font-size:.85rem;color:var(--text-secondary, #8b949e);margin:0;line-height:1.4}.blog-footer{background:#0003;padding:40px 20px;color:#fff}.blog-footer .footer-content{max-width:800px;margin:0 auto;text-align:center}.blog-footer .footer-brand{margin-bottom:20px}.blog-footer .footer-logo{font-size:1.5rem;font-weight:700}.blog-footer .footer-tagline{opacity:.8;margin:8px 0 0;font-size:.9rem}.blog-footer .footer-links{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;margin-bottom:20px}.blog-footer .footer-links a{color:#fffc;text-decoration:none;font-size:.9rem;transition:color .2s}.blog-footer .footer-links a:hover{color:#fff}.blog-footer .footer-bottom{opacity:.7;font-size:.85rem}.blog-footer .footer-bottom p{margin:0}.related-posts-section{max-width:800px;margin:0 auto;padding:0 20px 40px;width:100%;box-sizing:border-box}.related-posts-container{background:var(--bg-card, #1c2128);border:1px solid var(--border-color, #30363d);border-radius:8px;padding:32px;box-shadow:0 4px 20px #0000004d}.related-posts-title{font-size:1.4rem;color:var(--text-primary, #e6edf3);margin:0 0 24px;padding-bottom:16px;border-bottom:1px solid var(--border-color, #30363d)}.related-posts-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}.related-post-card{display:flex;flex-direction:column;padding:20px;background:var(--bg-secondary, #0d1117);border-radius:8px;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s;border:1px solid var(--border-color, #30363d)}.related-post-card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #00b83026;background:var(--bg-card, #1c2128);border-color:#00b830}.related-post-category{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#00b830;margin-bottom:8px}.related-post-title{font-size:1rem;font-weight:600;color:var(--text-primary, #e6edf3);margin:0 0 8px;line-height:1.4}.related-post-description{font-size:.85rem;color:var(--text-secondary, #8b949e);margin:0 0 12px;line-height:1.5;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.related-post-meta{font-size:.75rem;color:var(--text-tertiary, #6e7681)}@media(max-width:768px){.blog-header h1{font-size:2rem}.blog-post-header h1{font-size:1.5rem}.blog-post-content{padding:24px}.blog-post-meta{flex-direction:column;gap:4px}.featured-section{margin-top:32px;padding-top:32px}.featured-title{font-size:1.25rem}.featured-cards{grid-template-columns:1fr}.featured-card{padding:16px}.featured-card-icon{width:40px;height:40px}.featured-card-icon svg{width:24px;height:24px}.related-posts-container{padding:20px}.related-posts-grid{grid-template-columns:1fr}.related-post-card{padding:16px}}.theme-toggle{background:transparent;border:none;color:#fff;cursor:pointer;padding:8px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:background-color .2s ease,transform .2s ease}.theme-toggle:hover{background-color:#ffffff1a}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{transition:transform .3s ease}.theme-toggle:hover svg{transform:rotate(15deg)}.settings-page{min-height:100vh;display:flex;flex-direction:column;background:var(--bg-primary, #ffffff);color:var(--text-primary, #1a1a1a)}.settings-header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border-color, #e0e0e0);background:var(--bg-primary, #ffffff);position:sticky;top:0;z-index:100}.settings-header-left{display:flex;align-items:center;min-width:100px}.settings-header-title{margin:0;font-size:24px;font-weight:600;text-align:center}.back-button{display:flex;align-items:center;gap:8px;padding:8px 12px;background:transparent;border:1px solid var(--border-color, #e0e0e0);border-radius:8px;color:var(--text-primary, #1a1a1a);font-size:14px;cursor:pointer;transition:all .2s ease}.back-button:hover{background:var(--bg-secondary, #f5f5f5)}.settings-header-right{display:flex;align-items:center;gap:16px;min-width:100px;justify-content:flex-end}.settings-content{flex:1;max-width:640px;margin:0 auto;padding:32px 24px;width:100%;box-sizing:border-box}.settings-section{margin-bottom:40px;padding-bottom:32px;border-bottom:1px solid var(--border-color, #e0e0e0)}.settings-section:last-child{border-bottom:none}.settings-section h2{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary, #1a1a1a)}.settings-section h3{margin:0 0 4px;font-size:15px;font-weight:500;color:var(--text-primary, #1a1a1a)}.settings-description{margin:0 0 16px;font-size:14px;color:var(--text-secondary, #666666);line-height:1.5}.settings-button{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.settings-button--primary{background:linear-gradient(135deg,#00b830,#009926);border:none;color:#0a0a0a}.settings-button--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00b8304d}.settings-button--primary:disabled{opacity:.7;cursor:not-allowed;transform:none}.settings-button--secondary{background:transparent;border:1px solid var(--border-color, #e0e0e0);color:var(--text-primary, #1a1a1a)}.settings-button--secondary:hover{background:var(--bg-secondary, #f5f5f5)}.credits-balance{font-size:20px;font-weight:600;color:#ffc107}.credit-history{margin-top:16px;border-radius:8px;overflow:hidden;border:1px solid var(--border-color, #e0e0e0)}.credit-history-table{width:100%;border-collapse:collapse;font-size:13px}.credit-history-table th,.credit-history-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-color, #e0e0e0)}.credit-history-table th{background:var(--bg-secondary, #f5f5f5);font-weight:600;color:var(--text-secondary, #666666);font-size:11px;text-transform:uppercase;letter-spacing:.5px}.credit-history-table tr:last-child td{border-bottom:none}.credit-history-table td.positive{color:#4caf50;font-weight:500}.credit-history-table td.negative{color:#f44336;font-weight:500}.settings-row{display:flex;justify-content:space-between;align-items:center;padding:16px 0}.settings-row-control{display:flex;align-items:center;gap:12px}.settings-row-control--buttons{gap:8px}.theme-label{font-size:14px;color:var(--text-secondary, #666666);min-width:40px}.settings-links{display:flex;flex-direction:column;gap:12px}.settings-link{color:var(--terminal-green, #00b830);text-decoration:none;font-size:14px;transition:color .2s ease}.settings-link:hover{color:var(--terminal-green-dim, #009926);text-decoration:underline}.settings-signed-out{text-align:center;padding:60px 24px}.settings-signed-out h2{margin:0 0 12px;font-size:24px;color:var(--text-primary, #1a1a1a)}.settings-signed-out p{margin:0 0 24px;color:var(--text-secondary, #666666)}.sign-in-button{padding:8px 16px;background:linear-gradient(135deg,#00b830,#009926);border:none;border-radius:8px;color:#0a0a0a;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.sign-in-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00b8304d}[data-theme=dark] .settings-page{background:var(--bg-primary, #1a1a1a)}[data-theme=dark] .settings-header{background:var(--bg-primary, #1a1a1a);border-bottom-color:var(--border-color, #333333)}[data-theme=dark] .settings-header-left h1{color:var(--text-primary, #ffffff)}[data-theme=dark] .back-button{color:var(--text-primary, #ffffff);border-color:var(--border-color, #333333)}[data-theme=dark] .back-button:hover{background:var(--bg-secondary, #2d2d2d)}[data-theme=dark] .settings-section{border-bottom-color:var(--border-color, #333333)}[data-theme=dark] .settings-section h2,[data-theme=dark] .settings-section h3{color:var(--text-primary, #ffffff)}[data-theme=dark] .settings-description{color:var(--text-secondary, #a0a0a0)}[data-theme=dark] .settings-signed-out h2{color:var(--text-primary, #ffffff)}[data-theme=dark] .settings-signed-out p{color:var(--text-secondary, #a0a0a0)}[data-theme=dark] .settings-button--secondary{border-color:var(--border-color, #333333);color:var(--text-primary, #ffffff)}[data-theme=dark] .settings-button--secondary:hover{background:var(--bg-secondary, #2d2d2d)}[data-theme=dark] .credit-history{border-color:var(--border-color, #333333)}[data-theme=dark] .credit-history-table th{background:var(--bg-secondary, #2d2d2d);color:var(--text-secondary, #a0a0a0)}[data-theme=dark] .credit-history-table th,[data-theme=dark] .credit-history-table td{border-bottom-color:var(--border-color, #333333)}.settings-footer{background:var(--bg-tertiary, #f8f9fa);border-top:1px solid var(--border-color, #e0e0e0);padding:3rem 2rem 2rem;margin-top:auto}.settings-footer .footer-content{max-width:800px;margin:0 auto;text-align:center}.settings-footer .footer-brand{margin-bottom:1.5rem}.settings-footer .footer-logo{font-size:1.5rem;font-weight:700;font-family:var(--font-mono, "JetBrains Mono", monospace);color:var(--terminal-green, #00b830)}.settings-footer .footer-tagline{color:var(--text-tertiary, #888888);font-size:.9rem;margin-top:.5rem}.settings-footer .footer-links{display:flex;justify-content:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem}.settings-footer .footer-links a{color:var(--text-secondary, #666666);text-decoration:none;font-size:.9rem;transition:color .2s ease}.settings-footer .footer-links a:hover{color:var(--terminal-green, #00b830)}.settings-footer .footer-bottom{padding-top:1.5rem;border-top:1px solid var(--border-color, #e0e0e0)}.settings-footer .footer-bottom p{color:var(--text-tertiary, #888888);font-size:.85rem;margin:0}[data-theme=dark] .settings-footer{background:var(--bg-tertiary, #141414);border-top-color:var(--border-color, #333333)}[data-theme=dark] .settings-footer .footer-bottom{border-top-color:var(--border-color, #333333)}@media(max-width:768px){.settings-header{padding:12px 16px}.settings-header-left h1{font-size:20px}.settings-content{padding:24px 16px}.settings-row{flex-direction:column;align-items:flex-start;gap:12px}.settings-footer{padding:2rem 1rem 1.5rem}.settings-footer .footer-links{gap:1rem 1.5rem}}.pricing-page{min-height:100vh;background:linear-gradient(145deg,#0f0f1a,#1a1a2e);color:#fff;display:flex;flex-direction:column}.pricing-header-content{max-width:1200px;margin:40px auto 48px;text-align:center;padding:0 20px}.pricing-header-content h1{font-size:36px;font-weight:700;margin:0 0 12px;background:linear-gradient(135deg,#00b830,#009926);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-subtitle{color:#888;font-size:18px;margin:0}.pricing-content{max-width:1200px;margin:0 auto;padding:0 20px;flex:1}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-bottom:60px}.pricing-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:32px;position:relative;transition:all .3s ease}.pricing-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.pricing-card.highlighted{border-color:#00b830;background:#00b8301a}.pricing-card.current{border-color:#4caf5080;background:#4caf500d}.popular-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:linear-gradient(135deg,#00b830,#009926);color:#0a0a0a;padding:4px 16px;border-radius:20px;font-size:12px;font-weight:500}.plan-name{font-size:24px;font-weight:600;margin:0 0 16px;color:#fff}.plan-price{margin-bottom:8px}.plan-price .price{font-size:48px;font-weight:700;color:#fff}.plan-price .period{font-size:16px;color:#888}.plan-credits{margin-bottom:24px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.1)}.plan-credits .credits-count{font-size:24px;font-weight:600;color:#ffc107}.plan-credits .credits-label{font-size:14px;color:#888;margin-left:8px}.plan-features{list-style:none;padding:0;margin:0 0 24px}.plan-features li{padding:8px 0;color:#b0b0b0;font-size:14px;display:flex;align-items:center;gap:8px}.plan-features li:before{content:"✓";color:#4caf50;font-weight:700}.plan-cta{width:100%;padding:14px 24px;border-radius:10px;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s;border:none;background:linear-gradient(135deg,#00b830,#009926);color:#0a0a0a}.plan-cta:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #00b83066}.plan-cta.current{background:#4caf5033;color:#4caf50;cursor:default}.plan-cta:disabled{opacity:.7}a.plan-cta.contact-us{display:block;text-align:center;text-decoration:none;box-sizing:border-box}.promo-section{background:#ffffff0d;border-radius:16px;padding:32px;text-align:center;margin-bottom:48px}.promo-section h2{font-size:24px;margin:0 0 8px}.promo-section>p{color:#888;margin:0 0 24px}.promo-form{display:flex;gap:12px;max-width:400px;margin:0 auto}.promo-input{flex:1;padding:14px 18px;background:#0000004d;border:1px solid rgba(255,255,255,.15);border-radius:10px;color:#fff;font-size:16px;font-family:monospace;text-transform:uppercase;letter-spacing:2px}.promo-input:focus{outline:none;border-color:#00b830}.promo-submit{padding:14px 24px;background:#4caf50;border:none;border-radius:10px;color:#fff;font-size:16px;font-weight:500;cursor:pointer;transition:all .2s}.promo-submit:hover:not(:disabled){background:#43a047}.promo-submit:disabled{opacity:.5;cursor:not-allowed}.promo-signin-note{margin-top:16px}.promo-signin-button{padding:10px 20px;background:linear-gradient(135deg,#00b830,#009926);border:none;border-radius:8px;color:#0a0a0a;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.promo-signin-button:hover{transform:translateY(-2px);box-shadow:0 4px 16px #00b83066}.promo-error{color:#f44336;font-size:14px;margin-top:12px}.promo-success{color:#4caf50;font-size:14px;margin-top:12px}.credit-costs-section{background:#ffffff0d;border-radius:16px;padding:32px;text-align:center}.credit-costs-section h2{font-size:24px;margin:0 0 8px}.credit-costs-section>p{color:#888;margin:0 0 24px}.credit-costs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.credit-cost-item{background:#0003;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px}.cost-action{font-size:14px;color:#b0b0b0}.cost-amount{font-size:20px;font-weight:600;color:#ffc107}.cost-note{font-size:12px;color:#666}@media(max-width:900px){.pricing-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto 60px}.pricing-card.highlighted{order:-1}.credit-costs-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.pricing-page{padding:20px 16px}.back-button{position:relative;left:auto;top:auto;margin-bottom:24px}.pricing-header h1{font-size:28px}.pricing-subtitle{font-size:16px}.promo-form{flex-direction:column}.credit-costs-grid{grid-template-columns:1fr}}
