@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;}:root{--font-display: "Inter", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--text-2xs: .75rem;--text-xs: .75rem;--text-sm: .8125rem;--text-md: .875rem;--text-base: .9375rem;--text-lg: 1.125rem;--text-xl: 1.5rem;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-semibold: 600;--weight-bold: 700;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px;--radius-xs: 3px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 12px;--radius-full: 50%;--easing: cubic-bezier(.16, 1, .3, 1);--duration-fast: .1s;--duration-base: .15s;--duration-slow: .25s;--topbar-height: 48px}[data-theme=dark]{--bg-page: #0a0a0a;--bg-surface: #111111;--bg-elevated: #1a1a1a;--bg-raised: #222222;--bg-hover: rgba(255,255,255,.04);--bg-active: rgba(255,255,255,.08);--bg-input: #111111;--bg-input-focus: #1a1a1a;--text-primary: #e5e5e5;--text-secondary: #999999;--text-muted: #8a8a8a;--accent: #3b82f6;--accent-surface: rgba(59,130,246,.1);--color-success: #22c55e;--color-warning: #eab308;--color-error: #ef4444;--color-info: #8b5cf6;--color-cyan: #06b6d4;--color-teal: #14b8a6;--color-pink: #ec4899;--color-orange: #f97316;--color-lime: #84cc16;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.14);--shadow-lg: 0 4px 24px rgba(0,0,0,.4);--shadow-card: none;--scrollbar-thumb: rgba(255,255,255,.08);--code-prompt: #8b5cf6;--code-flag: #a78bfa;--code-value: #fbbf24;--code-comment: #6b7280}[data-theme=light]{--bg-page: #f5f5f5;--bg-surface: #fafafa;--bg-elevated: #f0f0f0;--bg-raised: #e8e8e8;--bg-hover: rgba(0,0,0,.05);--bg-active: rgba(0,0,0,.09);--bg-input: #fafafa;--bg-input-focus: #ffffff;--text-primary: #555555;--text-secondary: #777777;--text-muted: #999999;--accent: #3b82f6;--accent-surface: rgba(59,130,246,.08);--color-success: #16a34a;--color-warning: #d97706;--color-error: #dc2626;--color-info: #7c3aed;--color-cyan: #0891b2;--color-teal: #0d9488;--color-pink: #db2777;--color-orange: #ea580c;--color-lime: #65a30d;--border: rgba(0,0,0,.1);--border-strong: rgba(0,0,0,.18);--shadow-lg: 0 4px 24px rgba(0,0,0,.08);--shadow-card: 0 1px 3px rgba(0,0,0,.04);--scrollbar-thumb: rgba(0,0,0,.1);--code-prompt: #7c3aed;--code-flag: #6d28d9;--code-value: #b45309;--code-comment: #9ca3af}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);font-size:var(--text-md);color:var(--text-primary);background:var(--bg-page);line-height:1.55}h1,h2,h3,h4,h5,h6{font-weight:var(--weight-semibold);letter-spacing:-.01em;line-height:1.3}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font-family:inherit;font-size:inherit;color:inherit;border:none;outline:none;background:none}button{cursor:pointer}code,pre{font-family:var(--font-mono)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.si{display:inline-block;background-color:currentColor;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}.si-trash{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='3 6 5 6 21 6'/%3E%3Cpath d='M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6'/%3E%3Cpath d='M10 11v6'/%3E%3Cpath d='M14 11v6'/%3E%3Cpath d='M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2'/%3E%3C/svg%3E")}.si-arrow-left{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='19' y1='12' x2='5' y2='12'/%3E%3Cpolyline points='12 19 5 12 12 5'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='19' y1='12' x2='5' y2='12'/%3E%3Cpolyline points='12 19 5 12 12 5'/%3E%3C/svg%3E")}.si-arrow-right{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='5' y1='12' x2='19' y2='12'/%3E%3Cpolyline points='12 5 19 12 12 19'/%3E%3C/svg%3E")}.si-bolt{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='13 2 3 14 12 14 11 22 21 10 12 10 13 2'/%3E%3C/svg%3E")}.si-user{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2'/%3E%3Ccircle cx='12' cy='7' r='4'/%3E%3C/svg%3E")}.si-folder{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z'/%3E%3C/svg%3E")}.si-settings{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06A1.65 1.65 0 0 0 4.68 15a1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06A1.65 1.65 0 0 0 9 4.68a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06A1.65 1.65 0 0 0 19.4 9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z'/%3E%3C/svg%3E")}.si-logout{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4'/%3E%3Cpolyline points='16 17 21 12 16 7'/%3E%3Cline x1='21' y1='12' x2='9' y2='12'/%3E%3C/svg%3E")}.si-shield{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z'/%3E%3C/svg%3E")}.si-moon{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z'/%3E%3C/svg%3E")}.si-sun{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Cline x1='12' y1='1' x2='12' y2='3'/%3E%3Cline x1='12' y1='21' x2='12' y2='23'/%3E%3Cline x1='4.22' y1='4.22' x2='5.64' y2='5.64'/%3E%3Cline x1='18.36' y1='18.36' x2='19.78' y2='19.78'/%3E%3Cline x1='1' y1='12' x2='3' y2='12'/%3E%3Cline x1='21' y1='12' x2='23' y2='12'/%3E%3Cline x1='4.22' y1='19.78' x2='5.64' y2='18.36'/%3E%3Cline x1='18.36' y1='5.64' x2='19.78' y2='4.22'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='5'/%3E%3Cline x1='12' y1='1' x2='12' y2='3'/%3E%3Cline x1='12' y1='21' x2='12' y2='23'/%3E%3Cline x1='4.22' y1='4.22' x2='5.64' y2='5.64'/%3E%3Cline x1='18.36' y1='18.36' x2='19.78' y2='19.78'/%3E%3Cline x1='1' y1='12' x2='3' y2='12'/%3E%3Cline x1='21' y1='12' x2='23' y2='12'/%3E%3Cline x1='4.22' y1='19.78' x2='5.64' y2='18.36'/%3E%3Cline x1='18.36' y1='5.64' x2='19.78' y2='4.22'/%3E%3C/svg%3E")}.si-eye{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E")}.si-layers{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 2 7 12 12 22 7 12 2'/%3E%3Cpolyline points='2 17 12 22 22 17'/%3E%3Cpolyline points='2 12 12 17 22 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolygon points='12 2 2 7 12 12 22 7 12 2'/%3E%3Cpolyline points='2 17 12 22 22 17'/%3E%3Cpolyline points='2 12 12 17 22 12'/%3E%3C/svg%3E")}.si-chevrons-right{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='13 17 18 12 13 7'/%3E%3Cpolyline points='6 17 11 12 6 7'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='13 17 18 12 13 7'/%3E%3Cpolyline points='6 17 11 12 6 7'/%3E%3C/svg%3E")}.si-chevrons-left{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='11 17 6 12 11 7'/%3E%3Cpolyline points='18 17 13 12 18 7'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='11 17 6 12 11 7'/%3E%3Cpolyline points='18 17 13 12 18 7'/%3E%3C/svg%3E")}.si-edit{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 3a2.828 2.828 0 1 1 4 4L7.5 20.5 2 22l1.5-5.5L17 3z'/%3E%3C/svg%3E")}.si-check{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}.si-x{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E")}.si-pin{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 17v5'/%3E%3Cpath d='M5 17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V6h1a2 2 0 0 0 0-4H8a2 2 0 0 0 0 4h1v4.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24Z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 17v5'/%3E%3Cpath d='M5 17h14v-1.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V6h1a2 2 0 0 0 0-4H8a2 2 0 0 0 0 4h1v4.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24Z'/%3E%3C/svg%3E")}.si-more-vertical{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='12' cy='5' r='1'/%3E%3Ccircle cx='12' cy='19' r='1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='1'/%3E%3Ccircle cx='12' cy='5' r='1'/%3E%3Ccircle cx='12' cy='19' r='1'/%3E%3C/svg%3E")}.si-search{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E")}.si-book-open{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'/%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'/%3E%3C/svg%3E")}.error-page{text-align:center;padding:var(--space-8);color:var(--text-primary)}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-5);--bg-page: #0a0a0a;--bg-surface: #111111;--bg-elevated: #1a1a1a;--bg-raised: #222222;--bg-hover: rgba(255,255,255,.04);--bg-active: rgba(255,255,255,.08);--bg-input: #111111;--bg-input-focus: #1a1a1a;--text-primary: #e5e5e5;--text-secondary: #999999;--accent: #3b82f6;--accent-surface: rgba(59,130,246,.1);--color-success: #22c55e;--color-warning: #eab308;--color-error: #ef4444;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.14);background:var(--bg-page);color:var(--text-primary)}.auth-wrapper{width:100%;max-width:380px;display:flex;flex-direction:column;align-items:center;position:relative;z-index:1}.auth-brand{height:5.5rem;margin-bottom:var(--space-7);-webkit-user-select:none;user-select:none}.auth-card{width:100%;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-6)}.auth-heading{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-primary);margin-bottom:var(--space-5)}.field{margin-bottom:var(--space-3)}.field label{display:block;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.04em}.field input{width:100%;padding:10px 12px;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:var(--text-md);transition:border-color var(--duration-fast) var(--easing)}.field input:focus{border-color:var(--text-muted)}.field input::placeholder{color:var(--text-muted)}.field input:disabled{opacity:.4;cursor:not-allowed}.field input:-webkit-autofill,.field input:-webkit-autofill:hover,.field input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg-page) inset;-webkit-text-fill-color:var(--text-primary);caret-color:var(--text-primary);transition:background-color 5000s ease-in-out 0s}.auth-btn{width:100%;padding:10px;margin-top:var(--space-4);background:var(--text-primary);color:var(--bg-page);font-size:var(--text-md);font-weight:var(--weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--easing);position:relative}.auth-btn:hover:not(:disabled){opacity:.85}.auth-btn:disabled{opacity:.4;cursor:not-allowed}.auth-btn.loading{color:transparent}.auth-btn.loading:after{content:"";position:absolute;width:16px;height:16px;border:2px solid rgba(0,0,0,.15);border-top-color:var(--bg-page);border-radius:50%;animation:spin .5s linear infinite;top:50%;left:50%;margin:-8px 0 0 -8px}@keyframes spin{to{transform:rotate(360deg)}}.auth-btn.sent{background:var(--color-success);color:#fff;opacity:1}.auth-sent-message{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);text-align:center}.auth-error{padding:9px 12px;background:#ef44440f;border:1px solid rgba(239,68,68,.12);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--color-error);margin-bottom:var(--space-4)}.auth-alt{margin-top:var(--space-5);font-size:var(--text-sm);color:var(--text-muted)}.auth-alt a{color:var(--text-primary);font-weight:var(--weight-medium);text-decoration:none}.auth-alt a:hover{text-decoration:underline}.signup-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.field-hint{font-size:var(--text-xs);color:var(--text-muted);margin-top:3px}.field-hint.ok{color:var(--color-success)}.field-hint.err{color:var(--color-error)}.pw-checklist{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:1px 8px}.pw-check-item{font-size:var(--text-2xs);color:var(--color-error);transition:color var(--duration-fast) var(--easing)}.pw-check-item.met{color:var(--color-success)}.pw-strength{display:flex;gap:3px;margin-top:var(--space-1)}.pw-bar{height:2px;flex:1;border-radius:1px;background:var(--bg-raised);transition:background var(--duration-base)}.pw-bar.active.weak{background:var(--color-error)}.pw-bar.active.med{background:var(--color-warning)}.pw-bar.active.strong{background:var(--color-success)}.pw-label{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px}.starfield{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:0}.star-layer{position:absolute;top:0;left:0;width:200%;height:100%;animation:drift var(--speed) linear infinite}@keyframes drift{0%{transform:translate(-50%)}to{transform:translate(0)}}.star{position:absolute;border-radius:50%;background:var(--bg-surface);opacity:var(--o);animation:twinkle ease-in-out infinite alternate}.star.bright{box-shadow:0 0 6px 1px #ffffff40}.star.bright:before,.star.bright:after{content:"";position:absolute;top:50%;left:50%;background:#ffffff59;border-radius:1px}.star.bright:before{width:10px;height:1px;transform:translate(-50%,-50%)}.star.bright:after{width:1px;height:10px;transform:translate(-50%,-50%)}@keyframes twinkle{0%{opacity:var(--o)}to{opacity:.06}}.shooting-star{position:absolute;width:var(--len);height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.8));border-radius:1px;transform-origin:left center;transform:rotate(var(--angle));opacity:0;animation:shoot linear infinite}@keyframes shoot{0%{opacity:0;transform:rotate(var(--angle)) translate(0)}2%{opacity:1}6%{opacity:0;transform:rotate(var(--angle)) translate(250px)}to{opacity:0}}.auth-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0a0a}.auth-loading-spinner{width:28px;height:28px;border:2.5px solid var(--border);border-top-color:var(--text-primary);border-radius:50%;animation:spin .6s linear infinite}@media(max-width:480px){.auth-card{padding:var(--space-5)}.auth-brand{height:4.5rem;margin-bottom:var(--space-6)}.signup-row{grid-template-columns:1fr}}.docs-body{display:flex;flex:1;min-height:0;position:relative}.docs-sidebar{width:20%;min-width:240px;max-width:400px;flex-shrink:0;border-right:1px solid var(--border);background:var(--bg-surface);overflow-y:auto;display:flex;flex-direction:column}.docs-main{flex:1;min-width:0;overflow-y:auto;padding:var(--space-6) var(--space-8)}.app-topbar{height:64px}.app-topbar .app-topbar-left{padding-left:16px}.app-topbar .app-logo{font-size:var(--text-xl)}.docs-topbar-badge{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-muted);background:var(--bg-elevated);padding:2px 6px;border-radius:var(--radius-xs);letter-spacing:.03em}.docs-topbar-center{flex:1;display:flex;justify-content:center;padding:0 var(--space-4)}.docs-search-container{position:relative;width:100%;max-width:400px}.docs-search{display:flex;align-items:center;width:100%;height:32px;padding:0 var(--space-3);gap:var(--space-2);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);transition:border-color var(--duration-fast) var(--easing)}.docs-search:focus-within{border-color:var(--border-strong)}.docs-search-icon{color:var(--text-muted);flex-shrink:0}.docs-search input{all:unset;flex:1;font-size:var(--text-sm);color:var(--text-primary);min-width:0}.docs-search input::placeholder{color:var(--text-muted)}.docs-search-kbd{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xs);padding:1px 5px;line-height:1.4;flex-shrink:0}.docs-search-dropdown{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:360px;overflow-y:auto;z-index:50;padding:var(--space-1) 0}.docs-search-result{all:unset;box-sizing:border-box;display:block;width:100%;padding:var(--space-2) var(--space-3);cursor:pointer;transition:background var(--duration-fast) var(--easing);text-align:left}.docs-search-result:hover,.docs-search-result.active{background:var(--bg-hover)}.docs-search-result-title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);display:flex;align-items:center;gap:var(--space-2)}.docs-search-result-section{font-size:var(--text-2xs);font-weight:var(--weight-regular);color:var(--text-muted);white-space:nowrap}.docs-search-result-snippet{font-size:var(--text-xs);color:var(--text-muted);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.docs-topbar-actions{gap:var(--space-2)}.docs-try-btn{font-size:var(--text-sm);font-weight:var(--weight-medium);color:#fff;background:var(--accent);padding:8px 18px;border-radius:100px;text-decoration:none;white-space:nowrap;transition:opacity var(--duration-fast) var(--easing)}.docs-try-btn:hover{opacity:.85;text-decoration:none}.docs-theme-toggle{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing)}.docs-theme-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.docs-sidebar-nav{padding:var(--space-3) 0}.docs-sidebar-section{padding-bottom:var(--space-2)}.docs-sidebar-sep{height:1px;background:var(--border);margin:var(--space-2) var(--space-5) var(--space-2) 40px}.docs-sidebar-heading{font-size:var(--text-base);font-weight:var(--weight-bold);color:var(--text-primary);padding:var(--space-3) var(--space-5) var(--space-2) 40px}.docs-sidebar-link{display:block;width:fit-content;margin-left:40px;padding:var(--space-1) var(--space-3);font-size:var(--text-base);color:var(--text-secondary);text-decoration:none;border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing)}.docs-sidebar-link:hover{background:var(--bg-hover);color:var(--text-primary);text-decoration:none}.docs-sidebar-link.active{color:var(--text-primary);background:var(--bg-active)}.docs-sidebar-sublink{margin-left:56px}.docs-sidebar-toggle{display:flex;align-items:center;margin-left:40px;padding-right:var(--space-5)}.docs-sidebar-toggle-link{flex:1;min-width:0;width:auto;margin-left:0;font-size:var(--text-base)}.docs-sidebar-toggle-btn{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:var(--space-1) var(--space-2);border-radius:var(--radius-xs);transition:background var(--duration-fast) var(--easing)}.docs-sidebar-toggle-btn:hover{background:var(--bg-hover)}.docs-sidebar-chevron{display:inline-block;width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--text-muted);transition:transform var(--duration-base) var(--easing)}.docs-sidebar-toggle.collapsed .docs-sidebar-chevron{transform:rotate(-90deg)}.docs-toc{width:20%;min-width:240px;max-width:400px;flex-shrink:0;overflow-y:auto;border-left:1px solid var(--border);background:var(--bg-surface);padding:var(--space-3) var(--space-5)}.docs-toc-heading{font-size:var(--text-xs);font-weight:var(--weight-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding-bottom:var(--space-3)}.docs-toc-list{list-style:none;margin:0;padding:0;border-left:1px solid var(--border)}.docs-toc-link{display:block;font-size:var(--text-sm);color:var(--text-secondary);text-decoration:none;padding:var(--space-1) var(--space-3);margin-left:-1px;border-left:2px solid transparent;transition:color var(--duration-fast) var(--easing),border-color var(--duration-fast) var(--easing)}.docs-toc-link:hover{color:var(--text-primary);text-decoration:none}.docs-toc-link--active{color:var(--text-primary);border-left-color:var(--text-primary)}.docs-toc-link--h3{padding-left:var(--space-7)}.docs-prose{max-width:780px;margin:0 auto;padding-bottom:25vh;font-size:var(--text-base);text-align:justify}.docs-prose h1{font-size:var(--text-xl);font-weight:var(--weight-bold);color:var(--text-primary);margin-bottom:var(--space-5);padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.docs-prose h2{font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);margin-top:var(--space-8);margin-bottom:var(--space-4)}.docs-prose h3{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);margin-top:var(--space-6);margin-bottom:var(--space-3)}.docs-prose p{margin-bottom:var(--space-4);color:var(--text-secondary);line-height:1.7}.docs-prose a{color:var(--accent);text-decoration:none}.docs-prose a:hover{text-decoration:underline}.docs-prose ul,.docs-prose ol{margin-bottom:var(--space-4);padding-left:var(--space-6);color:var(--text-secondary)}.docs-prose li{margin-bottom:var(--space-2);line-height:1.7}.docs-prose li strong{color:var(--text-primary)}.docs-prose code{font-family:var(--font-mono);font-size:.875em;padding:2px 6px;background:var(--bg-elevated);border-radius:var(--radius-xs);color:var(--color-cyan)}.docs-prose pre{margin-bottom:var(--space-4);padding:var(--space-4) 48px var(--space-4) var(--space-4);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);overflow-x:auto}.docs-prose pre code{padding:0;background:none;border-radius:0;color:var(--text-primary);font-size:var(--text-sm);line-height:1.6}.docs-codeblock{position:relative;margin-bottom:var(--space-4)}.docs-prose pre{position:relative}.docs-copy-btn{all:unset;box-sizing:border-box;position:absolute;top:var(--space-4);right:var(--space-2);width:28px;height:28px;cursor:pointer;opacity:.4;background-color:var(--text-secondary);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='9' y='9' width='13' height='13' rx='2' ry='2'/%3E%3Cpath d='M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1'/%3E%3C/svg%3E");-webkit-mask-size:18px 18px;mask-size:18px 18px;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;transition:opacity var(--duration-fast) var(--easing)}.docs-copy-btn:hover{opacity:.8}.docs-copy-btn.copied{opacity:.8;background-color:var(--color-success);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E")}.docs-codeblock pre{margin-bottom:0;border-top-left-radius:0}.docs-codeblock-label{display:inline-block;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-bottom:none;border-radius:var(--radius-sm) var(--radius-sm) 0 0;padding:var(--space-1) var(--space-3);letter-spacing:.03em}.docs-codeblock-tabs{display:flex}.docs-codeblock-tab{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-muted);background:var(--bg-elevated);border:1px solid var(--border);border-bottom:none;padding:var(--space-1) var(--space-3);letter-spacing:.03em;transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.docs-codeblock-tab:first-child{border-radius:var(--radius-sm) 0 0 0}.docs-codeblock-tab:last-child{border-radius:0 var(--radius-sm) 0 0}.docs-codeblock-tab:not(:first-child){border-left:none}.docs-codeblock-tab:hover{color:var(--text-primary)}.docs-codeblock-tab.active{color:var(--accent)}.docs-codeblock-tabbed pre{border-top-left-radius:0;border-top-right-radius:0}.docs-code-highlighted code,.code-line{display:block}.code-prompt{color:var(--code-prompt);-webkit-user-select:none;user-select:none;font-weight:500}.code-flag{color:var(--code-flag)}.code-value{color:var(--code-value)}.code-comment{color:var(--code-comment)}.code-placeholder{color:var(--code-comment);font-style:italic}.code-text{color:var(--text-primary)}.docs-prose table{width:100%;margin-bottom:var(--space-4);border-collapse:collapse;font-size:var(--text-sm)}.docs-prose thead th{text-align:left;font-weight:var(--weight-semibold);color:var(--text-primary);padding:var(--space-2) var(--space-3);border-bottom:2px solid var(--border-strong);background:var(--bg-surface)}.docs-prose tbody td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border);color:var(--text-secondary);text-align:left}.docs-prose tbody tr:hover{background:var(--bg-hover)}.docs-prose hr{margin:var(--space-6) 0;border:none;border-top:1px solid var(--border)}.docs-prose blockquote{margin:var(--space-4) 0;padding:var(--space-3) var(--space-5);border-left:3px solid var(--color-warning);background:color-mix(in srgb,var(--color-warning) 8%,var(--bg-surface));border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary)}.docs-prose blockquote p:last-child{margin-bottom:0}.docs-prose strong{font-weight:var(--weight-semibold);color:var(--text-primary)}.docs-prose img{display:block;max-width:100%;height:auto;margin:var(--space-4) 0;border-radius:var(--radius-md);cursor:pointer;transition:opacity var(--duration-fast) var(--easing)}.docs-prose img:hover{opacity:.85}[data-theme=light] .docs-prose img[src*=eridani-full]{filter:invert(1)}.docs-lightbox-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000;cursor:zoom-out;transition:background var(--duration-base) var(--easing);pointer-events:none}.docs-lightbox-overlay.open{background:#000000d9;pointer-events:auto}.docs-lightbox-img{max-width:90vw;max-height:90vh;border-radius:var(--radius-md);opacity:0;transform:scale(.92);transition:opacity var(--duration-base) var(--easing),transform var(--duration-base) var(--easing)}.docs-lightbox-overlay.open .docs-lightbox-img{opacity:1;transform:scale(1)}.docs-nav-cards{display:flex;gap:var(--space-4);margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border)}.docs-nav-card{display:flex;align-items:center;gap:var(--space-3);flex:1 1 0;max-width:calc(50% - var(--space-4) / 2);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-surface);text-decoration:none;transition:background var(--duration-fast) var(--easing),border-color var(--duration-fast) var(--easing)}.docs-nav-card:hover{background:var(--bg-hover);border-color:var(--border-strong);text-decoration:none}.docs-nav-card-icon{color:var(--text-muted);flex-shrink:0;transition:color var(--duration-fast) var(--easing)}.docs-nav-card:hover .docs-nav-card-icon{color:var(--accent)}.docs-nav-card-text{display:flex;flex-direction:column;gap:2px;min-width:0}.docs-nav-card-label{font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.docs-nav-card-title{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.docs-nav-card-section{font-size:var(--text-2xs);color:var(--text-muted)}.docs-nav-card-next{margin-left:auto;justify-content:flex-end}.docs-nav-card-next .docs-nav-card-text{align-items:flex-end;text-align:right}.docs-footer{margin-top:var(--space-8);padding-top:var(--space-6);border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-6);font-size:var(--text-xs);color:var(--text-muted)}.docs-footer a{color:var(--text-muted);text-decoration:none;transition:color var(--duration-fast) var(--easing)}.docs-footer a:hover{color:var(--text-primary)}.docs-footer-links{display:flex;gap:var(--space-4)}@media(max-width:768px){.docs-topbar-center{display:none}.docs-sidebar{position:fixed;top:var(--topbar-height);left:0;bottom:0;z-index:20;width:280px;transform:translate(-100%);transition:transform var(--duration-base) var(--easing)}.docs-sidebar.sidebar-open{transform:translate(0)}.docs-main{padding:var(--space-4) var(--space-5)}.docs-nav-cards{flex-direction:column}}.landing-page{--lp-bg: #060609;--lp-s1: #0b0c12;--lp-s2: #101118;--lp-ac: #22c55e;--lp-ac2: #16a34a;--lp-ac3: #15803d;--lp-ac-dim: rgba(34, 197, 94, .07);--lp-ac-bdr: rgba(34, 197, 94, .18);--lp-ac-glow: rgba(34, 197, 94, .12);--lp-tx: #ececef;--lp-tx2: #8b92a5;--lp-tx3: #505868;--lp-b: rgba(255, 255, 255, .05);--lp-b2: rgba(255, 255, 255, .08);--lp-radius: 14px;font-family:var(--font-body);background:var(--lp-bg);color:var(--lp-tx);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}.landing-page *,.landing-page *:before,.landing-page *:after{box-sizing:border-box;margin:0;padding:0}.landing-page a{text-decoration:none;color:inherit}.lp-w{max-width:1060px;margin:0 auto;padding:0 48px}.lp-mono{font-family:JetBrains Mono,monospace}.lp-nav{position:fixed;top:16px;left:50%;transform:translate(-50%);z-index:100;padding:10px 20px;display:flex;align-items:center;gap:20px;background:#0b0c12bf;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);border:1px solid var(--lp-b2);border-radius:100px;width:auto;max-width:calc(100% - 40px)}.lp-logo{display:flex;align-items:center;gap:8px;padding-right:8px;cursor:pointer;background:none;border:none;color:inherit}.lp-brand{height:44px;width:auto;margin-top:-6px}.lp-brand-sm{height:44px}.lp-nav-center{display:flex;align-items:center;gap:6px}.lp-nav-center a{font-size:13px;color:var(--lp-tx3);transition:all .2s;padding:6px 12px;border-radius:8px;white-space:nowrap}.lp-nav-center a:hover{color:var(--lp-tx);background:#ffffff0d}.lp-nav-right{display:flex;align-items:center;gap:10px;margin-left:auto}.lp-nav-cta{font-size:12px;font-weight:600;padding:7px 18px;border-radius:100px;background:var(--lp-ac);color:#060609;transition:all .2s;border:none;white-space:nowrap}.lp-nav-cta:hover{box-shadow:0 0 20px var(--lp-ac-glow);transform:translateY(-1px)}.lp-lang-switch{display:flex;align-items:center;background:#ffffff0a;border:1px solid var(--lp-b);border-radius:100px;overflow:hidden;font-size:11px;font-weight:600;font-family:JetBrains Mono,monospace}.lp-lang-btn{padding:5px 10px;color:var(--lp-tx3);cursor:pointer;transition:.15s;border:none;background:none;font:inherit}.lp-lang-btn:hover{color:var(--lp-tx2)}.lp-lang-btn.active{background:#ffffff14;color:var(--lp-tx)}.lp-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 30px;border-radius:100px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;transition:all .25s;border:none}.lp-btn-primary{background:linear-gradient(135deg,var(--lp-ac) 0%,var(--lp-ac2) 50%,var(--lp-ac3) 100%);color:#fff;box-shadow:0 2px 16px var(--lp-ac-glow),inset 0 1px #ffffff26}.lp-btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 32px var(--lp-ac-bdr),inset 0 1px #ffffff26}.lp-btn-ghost{background:#ffffff0a;color:var(--lp-tx2);border:1px solid var(--lp-b2)}.lp-btn-ghost:hover{border-color:var(--lp-ac);color:#fff;background:var(--lp-ac);box-shadow:0 0 20px var(--lp-ac-glow)}.lp-btn svg{width:14px;height:14px;stroke:currentColor;stroke-width:2;fill:none}.lp-section{position:relative;z-index:1;padding:100px 0;border-top:1px solid var(--lp-b)}.lp-sec-label{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--lp-ac);margin-bottom:24px;font-family:JetBrains Mono,monospace;padding:5px 14px;border:1px solid var(--lp-ac-bdr);border-radius:100px;background:var(--lp-ac-dim)}.lp-sec-label-wrap{text-align:center}#how{--lp-ac: #3b82f6;--lp-ac2: #2563eb;--lp-ac3: #1d4ed8;--lp-ac-dim: rgba(59, 130, 246, .07);--lp-ac-bdr: rgba(59, 130, 246, .18);--lp-ac-glow: rgba(59, 130, 246, .12)}#cli{--lp-ac: #8b5cf6;--lp-ac2: #7c3aed;--lp-ac3: #6d28d9;--lp-ac-dim: rgba(139, 92, 246, .07);--lp-ac-bdr: rgba(139, 92, 246, .18);--lp-ac-glow: rgba(139, 92, 246, .12)}#who{--lp-ac: #ef4444;--lp-ac2: #dc2626;--lp-ac3: #b91c1c;--lp-ac-dim: rgba(239, 68, 68, .07);--lp-ac-bdr: rgba(239, 68, 68, .18);--lp-ac-glow: rgba(239, 68, 68, .12)}#infra{--lp-ac: #eab308;--lp-ac2: #ca8a04;--lp-ac3: #a16207;--lp-ac-dim: rgba(234, 179, 8, .07);--lp-ac-bdr: rgba(234, 179, 8, .18);--lp-ac-glow: rgba(234, 179, 8, .12)}.lp-hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:140px 0 100px;position:relative;overflow:hidden}.lp-hero:before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.02) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(ellipse 60% 50% at 50% 45%,#000 10%,transparent 70%);mask-image:radial-gradient(ellipse 60% 50% at 50% 45%,#000 10%,transparent 70%);pointer-events:none}.lp-hero-orb{position:absolute;width:650px;height:650px;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-55%);background:radial-gradient(circle,rgba(34,197,94,.14) 0%,rgba(34,197,94,.05) 35%,transparent 70%);filter:blur(60px);pointer-events:none;animation:lpOrbFloat 8s ease-in-out infinite}.lp-hero-orb2{position:absolute;width:420px;height:420px;border-radius:50%;top:45%;left:35%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(59,130,246,.07) 0%,transparent 70%);filter:blur(50px);pointer-events:none;animation:lpOrbFloat2 10s ease-in-out infinite}@keyframes lpOrbFloat{0%,to{transform:translate(-50%,-55%) scale(1)}25%{transform:translate(-48%,-57%) scale(1.05)}50%{transform:translate(-52%,-53%) scale(.97)}75%{transform:translate(-50%,-56%) scale(1.03)}}@keyframes lpOrbFloat2{0%,to{transform:translate(-50%,-50%) scale(1)}33%{transform:translate(-53%,-48%) scale(1.06)}66%{transform:translate(-47%,-52%) scale(.95)}}.lp-hero-inner{position:relative;z-index:2;max-width:820px;margin:0 auto;margin-top:-5vh;text-align:center;animation:lpHeroIn .8s ease-out both}@keyframes lpHeroIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.lp-hero-logo{height:clamp(120px,22vw,260px);width:auto;margin:0 auto 28px;display:block;mask-image:linear-gradient(180deg,#fff 65%,#ffffffb3);-webkit-mask-image:linear-gradient(180deg,#fff 65%,rgba(255,255,255,.7) 100%);opacity:.92}.lp-hero h1{font-size:clamp(1.4rem,3vw,2.2rem);font-weight:700;line-height:1.12;letter-spacing:-.035em;margin-bottom:20px;background:linear-gradient(180deg,#fff 30%,var(--lp-tx2) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.lp-hero-sub{font-size:clamp(13px,1.2vw,15px);color:var(--lp-tx2);font-weight:400;line-height:1.65;margin-bottom:36px;max-width:480px;margin-left:auto;margin-right:auto}.lp-hero-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.lp-hero-docs-btn{margin-top:10px}.lp-timeline{display:flex;align-items:flex-start;gap:0;max-width:860px;margin:0 auto}.lp-tl-step{flex:1;text-align:center;padding:0 20px}.lp-tl-marker{width:48px;height:48px;border-radius:50%;border:2px solid var(--lp-ac-bdr);background:var(--lp-s1);display:flex;align-items:center;justify-content:center;margin:0 auto 20px;transition:all .3s}.lp-tl-marker span{font-family:JetBrains Mono,monospace;font-size:16px;font-weight:700;color:var(--lp-ac)}.lp-tl-step:hover .lp-tl-marker{background:var(--lp-ac-dim);border-color:var(--lp-ac);box-shadow:0 0 24px var(--lp-ac-glow)}.lp-tl-line{width:60px;height:1px;background:linear-gradient(90deg,var(--lp-ac-bdr),var(--lp-b));margin-top:24px;flex-shrink:0}.lp-tl-content h3{font-size:16px;font-weight:600;color:var(--lp-tx);margin-bottom:10px}.lp-tl-content p{font-size:13px;color:var(--lp-tx2);line-height:1.65;font-weight:400}.lp-who-bg{background:transparent}.lp-who-sub{text-align:center;color:var(--lp-tx2);font-size:15px;margin-bottom:36px;font-weight:400;max-width:520px;margin-left:auto;margin-right:auto;line-height:1.65}.lp-audience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:860px;margin:0 auto}.lp-audience-card{padding:28px 24px;border-radius:var(--lp-radius);background:var(--lp-bg);border:1px solid var(--lp-b);transition:all .3s;position:relative;overflow:hidden}.lp-audience-card:before{content:"";position:absolute;top:0;left:24px;right:24px;height:1px;background:linear-gradient(90deg,transparent,var(--lp-ac),transparent);opacity:0;transition:opacity .3s}.lp-audience-card:hover:before{opacity:.5}.lp-audience-card:hover{border-color:var(--lp-b2);transform:translateY(-2px)}.lp-card-ico{width:38px;height:38px;border-radius:10px;background:var(--lp-ac-dim);border:1px solid var(--lp-ac-bdr);display:flex;align-items:center;justify-content:center;margin-bottom:16px}.lp-card-ico svg{width:16px;height:16px;stroke:var(--lp-ac);stroke-width:1.5;fill:none}.lp-audience-card h3{font-size:15px;font-weight:600;color:var(--lp-tx);margin-bottom:8px}.lp-audience-card p{font-size:13px;color:var(--lp-tx2);line-height:1.65;font-weight:400}.lp-orgs{display:flex;flex-wrap:wrap;gap:5px;margin-top:16px}.lp-org-tag{font-family:JetBrains Mono,monospace;font-size:10px;padding:3px 9px;border-radius:100px;background:#ffffff08;border:1px solid var(--lp-b);color:var(--lp-tx3);transition:all .2s}.lp-audience-card:hover .lp-org-tag{border-color:var(--lp-b2)}.lp-terminal{border:1px solid var(--lp-b2);border-radius:var(--lp-radius);overflow:hidden;background:var(--lp-s1);max-width:640px;margin:0 auto;box-shadow:0 20px 60px #0006,0 0 0 1px #ffffff0a}.lp-term-bar{display:flex;align-items:center;gap:6px;padding:12px 16px;border-bottom:1px solid var(--lp-b);background:#08080ef2}.lp-term-dot{width:8px;height:8px;border-radius:50%}.lp-term-dot-r{background:#ef444473}.lp-term-dot-y{background:#eab30873}.lp-term-dot-g{background:#22c55e73}.lp-term-title{margin-left:auto;font-size:10px;color:var(--lp-tx3);font-family:JetBrains Mono,monospace}.lp-term-body{padding:22px 24px;font-family:JetBrains Mono,monospace;font-size:13px;line-height:2;color:var(--lp-tx2)}.lp-term-body .prompt{color:var(--lp-ac);-webkit-user-select:none;user-select:none}.lp-term-body .cmd{color:var(--lp-tx)}.lp-term-body .comment{color:var(--lp-tx3)}.lp-term-body .out{opacity:.6}.lp-term-body .hl{color:var(--lp-ac);font-weight:600}.lp-term-body .flag{color:var(--lp-violet)}.lp-term-body .val{color:var(--lp-yellow)}.lp-term-spacer{height:12px}.lp-infra-split{display:grid;grid-template-columns:280px 1fr;gap:40px;max-width:860px;margin:0 auto;align-items:start}.lp-infra-stat-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--lp-b);border-radius:var(--lp-radius);overflow:hidden;background:var(--lp-s1)}.lp-infra-stat{padding:20px;border-bottom:1px solid var(--lp-b);display:flex;flex-direction:column;gap:4px}.lp-infra-stat:last-child{border-bottom:none}.lp-infra-stat strong{font-size:15px;font-weight:700;color:var(--lp-tx);line-height:1}.lp-infra-stat span{font-size:11.5px;color:var(--lp-tx2);font-weight:400}.lp-infra-right{display:flex;flex-direction:column;gap:12px}.lp-infra-item{display:flex;gap:16px;align-items:flex-start;padding:20px 24px;background:var(--lp-s1);border:1px solid var(--lp-b);border-radius:var(--lp-radius);transition:all .3s}.lp-infra-item:hover{border-color:var(--lp-b2);background:var(--lp-s2)}.lp-if-ico{width:36px;height:36px;min-width:36px;border-radius:10px;background:var(--lp-ac-dim);border:1px solid var(--lp-ac-bdr);display:flex;align-items:center;justify-content:center;margin-top:1px}.lp-if-ico svg{width:15px;height:15px;color:var(--lp-ac);stroke:var(--lp-ac);stroke-width:1.5;fill:none}.lp-infra-item strong{font-size:13px;font-weight:600;color:var(--lp-tx);display:block;margin-bottom:4px}.lp-infra-item p{font-size:12.5px;color:var(--lp-tx2);line-height:1.6;font-weight:400;margin:0}.lp-contact-sub{text-align:center;color:var(--lp-tx2);font-size:14px;margin-bottom:28px;font-weight:400;max-width:440px;margin-left:auto;margin-right:auto;line-height:1.6}.lp-wip-banner{max-width:440px;margin:0 auto 20px;padding:14px 16px;background:#eab3080f;border:1px solid rgba(161,98,7,.4);border-radius:var(--lp-radius)}.lp-wip-title{color:#eab308;font-size:13px;font-weight:600;margin:0 0 4px}.lp-wip-text{color:var(--lp-tx2);font-size:13px;line-height:1.5;margin:0}.lp-contact-form{max-width:440px;margin:0 auto;background:var(--lp-s1);border:1px solid var(--lp-b2);border-radius:var(--lp-radius);padding:32px 28px;box-shadow:0 20px 60px #0000004d}.lp-contact-form label{display:block;font-size:11px;font-weight:600;color:var(--lp-tx3);margin-bottom:6px;text-transform:uppercase;letter-spacing:.06em;font-family:JetBrains Mono,monospace}.lp-contact-form input{width:100%;padding:11px 14px;background:var(--lp-bg);border:1px solid var(--lp-b2);border-radius:10px;color:var(--lp-tx);font-size:14px;font-family:inherit;margin-bottom:16px;outline:none;transition:all .25s;font-weight:400}.lp-contact-form input:focus{border-color:var(--lp-ac-bdr);box-shadow:0 0 0 3px var(--lp-ac-dim)}.lp-contact-form input::placeholder{color:var(--lp-tx3)}.lp-contact-btn{width:100%;padding:13px;border-radius:100px;font-size:14px;font-weight:600;font-family:inherit;background:linear-gradient(135deg,var(--lp-ac),var(--lp-ac2));color:#fff;border:none;cursor:pointer;transition:all .25s;margin-top:4px;box-shadow:0 2px 12px var(--lp-ac-glow)}.lp-contact-btn:hover{box-shadow:0 8px 28px var(--lp-ac-bdr);transform:translateY(-1px)}.lp-contact-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.lp-contact-btn.sent{background:linear-gradient(135deg,var(--lp-ac2),var(--lp-ac3));pointer-events:none;opacity:1}.lp-contact-error{color:var(--color-error, #ef4444);font-size:13px;margin:4px 0 0}.lp-footer{position:relative;z-index:1;border-top:1px solid var(--lp-b);padding:56px 0 28px;background:#0b0c12bf;-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4)}.lp-ft-main{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:36px;margin-bottom:36px}.lp-ft-brand-col .lp-ft-logo{display:flex;align-items:center;gap:8px;margin-bottom:16px}.lp-ft-brand-col a{display:block;font-size:12.5px;color:var(--lp-tx2);margin-bottom:11px;transition:color .15s;font-weight:400}.lp-ft-brand-col a:hover{color:var(--lp-ac)}.lp-ft-certs-col{display:flex;flex-direction:row;align-items:flex-start;gap:12px;padding-top:16px}.lp-ft-cert{height:110px;width:auto;border-radius:4px;opacity:.85;transition:opacity .2s}.lp-ft-cert:hover{opacity:1}.lp-ft-col{padding-top:18px}.lp-ft-col-title{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:600;color:var(--lp-tx3);text-transform:uppercase;letter-spacing:.08em;margin-bottom:16px}.lp-ft-col a{display:block;font-size:12.5px;color:var(--lp-tx2);margin-bottom:11px;transition:color .15s;font-weight:400}.lp-ft-col a:hover{color:var(--lp-ac)}.lp-ft-col span{display:block;font-size:12.5px;color:var(--lp-tx2);margin-bottom:11px;font-weight:400}.lp-ft-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:24px;border-top:1px solid var(--lp-b);font-size:11px;color:var(--lp-tx3);flex-wrap:wrap;gap:10px}.lp-cookie-banner{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:200;background:#0b0c12d9;-webkit-backdrop-filter:blur(20px) saturate(1.3);backdrop-filter:blur(20px) saturate(1.3);border:1px solid var(--lp-b2);border-radius:var(--lp-radius);padding:14px 24px;display:flex;align-items:center;gap:16px;flex-wrap:wrap;transition:all .4s;max-width:calc(100% - 40px);box-shadow:0 20px 50px #00000080}.lp-cookie-banner.hidden{transform:translate(-50%) translateY(calc(100% + 40px));opacity:0;pointer-events:none}.lp-cookie-text{font-size:13px;color:var(--lp-tx2);line-height:1.5;max-width:460px}.lp-cookie-text a{color:var(--lp-ac);font-weight:500;cursor:pointer}.lp-cookie-btns{display:flex;gap:8px;flex-shrink:0}.lp-cookie-btn{padding:8px 18px;border-radius:100px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer;border:none;transition:all .2s}.lp-cookie-accept{background:var(--lp-ac);color:#060609}.lp-cookie-accept:hover{box-shadow:0 0 16px var(--lp-ac-glow)}.lp-cookie-decline{background:transparent;border:1px solid var(--lp-b2);color:var(--lp-tx2)}.lp-cookie-decline:hover{border-color:#fff3;color:var(--lp-tx)}.lp-legal-overlay{position:fixed;inset:0;z-index:300;background:#060609f5;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);overflow-y:auto;padding:80px 40px 40px}.lp-legal-close{position:fixed;top:20px;right:30px;z-index:301;width:36px;height:36px;border-radius:10px;background:var(--lp-s1);border:1px solid var(--lp-b2);color:var(--lp-tx2);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.15s}.lp-legal-close:hover{border-color:var(--lp-ac-bdr);color:var(--lp-tx)}.lp-legal-content{max-width:720px;margin:0 auto}.lp-legal-content h1{font-size:clamp(1.4rem,2.5vw,2rem);font-weight:700;margin-bottom:24px;letter-spacing:-.02em}.lp-legal-content h2{font-size:16px;font-weight:600;margin-top:28px;margin-bottom:10px;color:var(--lp-tx)}.lp-legal-content p{font-size:13px;color:var(--lp-tx2);line-height:1.7;margin-bottom:12px;font-weight:400}.lp-legal-content ul{margin:8px 0 16px 20px;font-size:13px;color:var(--lp-tx2);line-height:1.7}.lp-legal-content li{margin-bottom:6px}.lp-legal-content a{color:var(--lp-ac)}@media(max-width:900px){.lp-infra-split{grid-template-columns:1fr;gap:24px}.lp-infra-stat-list{flex-direction:row;flex-wrap:wrap}.lp-infra-stat{flex:1;min-width:120px;border-bottom:none;border-right:1px solid var(--lp-b)}.lp-infra-stat:last-child{border-right:none}.lp-audience-grid{grid-template-columns:1fr}.lp-ft-main{grid-template-columns:1fr 1fr}}@media(max-width:768px){.lp-timeline{flex-direction:column;align-items:center;gap:0}.lp-tl-line{width:1px;height:32px;margin:0 auto}.lp-tl-step{padding:0;max-width:360px}.lp-nav{top:10px;padding:8px 14px;gap:12px}.lp-cookie-banner{padding:14px 20px;flex-direction:column;text-align:center;bottom:12px}.lp-ft-main{grid-template-columns:1fr}.lp-ft-certs-col{flex-direction:row;justify-content:flex-start}.lp-w{padding:0 28px}}@media(max-width:640px){.lp-w{padding:0 20px}.lp-nav{padding:8px 12px;gap:8px;top:8px}.lp-nav-center{display:none}.lp-infra-stat-list{flex-direction:column}.lp-infra-stat{border-right:none;border-bottom:1px solid var(--lp-b)}.lp-legal-overlay{padding:60px 20px 20px}.lp-hero h1{font-size:clamp(1.2rem,5vw,1.8rem)}}.app-shell{height:100vh;display:flex;flex-direction:column;background:var(--bg-page);color:var(--text-primary)}.app-topbar{display:flex;align-items:center;justify-content:space-between;height:var(--topbar-height);padding:0 var(--space-6);border-bottom:1px solid var(--border);background:var(--bg-surface);flex-shrink:0}.app-topbar-left{display:flex;align-items:center;gap:var(--space-3)}.app-logo{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-primary);letter-spacing:-.02em;text-decoration:none}.app-topbar-right{position:relative;display:flex;align-items:center;gap:var(--space-2)}.app-docs-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);color:var(--text-secondary);transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing)}.app-docs-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.app-avatar-btn{all:unset;cursor:pointer;display:flex;align-items:center;border-radius:var(--radius-full);transition:box-shadow var(--duration-fast) var(--easing)}.app-avatar-btn:hover .app-avatar,.app-avatar-btn[aria-expanded=true] .app-avatar{box-shadow:0 0 0 2px var(--bg-surface),0 0 0 4px var(--text-muted)}.app-avatar{width:28px;height:28px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-xs);font-weight:var(--weight-semibold);color:#fff;-webkit-user-select:none;user-select:none;flex-shrink:0;transition:box-shadow var(--duration-fast) var(--easing)}.app-avatar-lg{width:36px;height:36px;font-size:var(--text-sm)}.app-dropdown{position:absolute;top:calc(100% + var(--space-2));right:0;width:200px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:100;padding:var(--space-1) 0;animation:dropdown-in var(--duration-base) var(--easing)}@keyframes dropdown-in{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-dropdown-header{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4)}.app-dropdown-user{min-width:0}.app-dropdown-name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.app-dropdown-sep{height:1px;background:var(--border);margin:var(--space-1) var(--space-3)}.app-dropdown-item{all:unset;cursor:pointer;display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing);box-sizing:border-box}.app-dropdown-item:hover{background:var(--bg-hover);color:var(--text-primary)}.app-dropdown-danger{color:var(--color-error)}.app-dropdown-danger:hover{background:var(--bg-hover);color:var(--color-error)}.sidebar-wip-banner{margin-top:auto;padding:var(--space-3) var(--space-4);border-top:1px solid var(--border);background:color-mix(in srgb,var(--color-warning) 5%,var(--bg-surface))}.sidebar-wip-title{color:var(--color-warning);font-size:var(--text-2xs);font-weight:600;margin:0 0 2px}.sidebar-wip-text{color:var(--text-muted);font-size:var(--text-2xs);line-height:1.5;margin:0}.sidebar-toggle{all:unset;box-sizing:border-box;display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing)}.sidebar-toggle:hover{background:var(--bg-hover)}.sidebar-toggle-icon,.sidebar-toggle-icon:before,.sidebar-toggle-icon:after{display:block;width:16px;height:2px;background:var(--text-secondary);border-radius:1px;position:relative}.sidebar-toggle-icon:before,.sidebar-toggle-icon:after{content:"";position:absolute;left:0;width:16px}.sidebar-toggle-icon:before{top:-5px}.sidebar-toggle-icon:after{top:5px}.sidebar-overlay{display:none}@media(max-width:768px){.sidebar-toggle{display:flex}.sidebar-overlay{display:block;position:fixed;top:var(--topbar-height);left:0;right:0;bottom:0;z-index:19;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:overlay-in var(--duration-base) var(--easing)}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}}.dialog-overlay{position:fixed;inset:0;z-index:100;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.dialog-box{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);max-width:400px;width:90%}.dialog-title{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-primary);margin-bottom:var(--space-2)}.dialog-message{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-5);line-height:1.5}.dialog-error{font-size:var(--text-sm);color:var(--color-error);margin-bottom:var(--space-3)}.dialog-actions{display:flex;gap:var(--space-2);justify-content:flex-end}.dialog-btn{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary)}.dialog-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.dialog-btn-danger{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing),opacity var(--duration-fast) var(--easing);border:1px solid var(--color-error);background:var(--color-error);color:var(--text-primary)}.dialog-btn-danger:hover{opacity:.85}.dialog-btn-danger:disabled,.dialog-btn:disabled{opacity:.5;cursor:not-allowed}.mid-truncate{display:inline-flex;min-width:0;max-width:100%}.mid-truncate-start{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}.mid-truncate-end{flex-shrink:0;white-space:nowrap}.admin-page{flex:1;overflow-y:auto;padding:var(--space-5)}.admin-container{max-width:960px;margin:0 auto}.admin-back{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:none;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--easing);margin-bottom:var(--space-3)}.admin-back:hover{color:var(--text-primary)}.admin-heading{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary);margin:0 0 var(--space-4)}.admin-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.admin-table th{text-align:left;padding:var(--space-2) var(--space-4);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg-surface)}.admin-table td{padding:var(--space-2) var(--space-4);color:var(--text-secondary);border-bottom:1px solid var(--border);vertical-align:middle;white-space:nowrap}.admin-table-name,.admin-table-mono,.admin-table-org{max-width:180px}.admin-table tr:last-child td{border-bottom:none}.admin-table tbody tr{transition:background var(--duration-fast) var(--easing)}.admin-table tbody tr:hover{background:var(--bg-hover)}.admin-table-name{color:var(--text-primary);font-weight:var(--weight-medium)}.admin-table-org{color:var(--text-muted);font-size:var(--text-xs)}.admin-table-mono{font-family:var(--font-mono);font-size:var(--text-xs)}.admin-table-date{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.admin-search-bar{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.admin-search-input{flex:1;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-family:var(--font-mono);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-primary);outline:none;box-sizing:border-box}.admin-search-input:focus{border-color:var(--accent);background:var(--bg-input-focus)}.admin-search-input::placeholder{color:var(--text-muted)}.admin-filter-cell{position:relative}.admin-filter-btn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;transition:color var(--duration-fast) var(--easing)}.admin-filter-btn:hover,.admin-filter-btn.filtering{color:var(--text-primary)}.admin-filter-chevron{font-size:var(--text-sm);line-height:1}.admin-filter-dropdown{position:absolute;top:100%;left:0;z-index:20;min-width:150px;margin-top:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);padding:var(--space-1) 0;animation:admin-dropdown-in var(--duration-fast) var(--easing)}@keyframes admin-dropdown-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.admin-filter-option{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--easing)}.admin-filter-option:hover{background:var(--bg-hover)}.admin-filter-option.active{background:var(--bg-active)}.admin-filter-label{font-weight:var(--weight-medium);color:var(--text-primary)}.admin-filter-count{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted)}.admin-th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;transition:color var(--duration-fast) var(--easing)}.admin-th-sortable:after{content:attr(data-chevron);display:inline-block;width:1em;text-align:center}.admin-th-sortable:hover{color:var(--text-primary)}.admin-cell-empty{text-align:center;padding:var(--space-8) var(--space-4);color:var(--text-muted);font-size:var(--text-sm)}.admin-badge{font-size:var(--text-2xs);font-weight:var(--weight-medium);padding:1px 8px;border:1px solid;border-radius:var(--radius-xs);letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;min-width:72px}.admin-badge--pending{color:var(--color-warning);border-color:var(--color-warning)}.admin-badge--approved{color:var(--color-success);border-color:var(--color-success)}.admin-badge--denied{color:var(--color-error);border-color:var(--color-error)}.admin-actions{display:flex;gap:4px}.admin-icon-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:var(--radius-xs);color:var(--text-muted);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.admin-icon-btn:disabled{opacity:.4;cursor:not-allowed}.admin-icon-btn--approve:hover:not(:disabled){color:var(--color-success);background:var(--bg-hover)}.admin-icon-btn--deny:hover:not(:disabled){color:var(--color-error);background:var(--bg-hover)}.admin-empty,.admin-loading{text-align:center;padding:var(--space-8) 0;color:var(--text-muted);font-size:var(--text-sm)}.admin-credentials{margin-top:var(--space-3);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);font-size:var(--text-sm)}.admin-credentials code{font-family:var(--font-mono);background:var(--bg-page);padding:2px 6px;border-radius:var(--radius-xs)}.admin-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}@media(max-width:768px){.admin-table th:nth-child(4),.admin-table td:nth-child(4),.admin-table th:nth-child(5),.admin-table td:nth-child(5){display:none}}.page-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;gap:var(--space-3);animation:page-loading-in .3s var(--easing)}.page-loading-brand{height:calc(var(--text-xl) * 3);-webkit-user-select:none;user-select:none}.page-loading-bar{position:relative;width:140px;height:3px;background:var(--border);border-radius:1px;overflow:hidden}.page-loading-bar:after{content:"";position:absolute;top:0;left:0;width:40%;height:100%;background:var(--accent);border-radius:1px;animation:page-loading-scan 7.5s var(--easing) infinite}@keyframes page-loading-scan{0%{transform:translate(-100%);opacity:0;background:var(--accent)}3%{opacity:1}17%{opacity:1}20%{transform:translate(350%);opacity:0}20.1%{transform:translate(-100%);opacity:0;background:var(--color-cyan)}23%{opacity:1}37%{opacity:1}40%{transform:translate(350%);opacity:0}40.1%{transform:translate(-100%);opacity:0;background:var(--color-teal)}43%{opacity:1}57%{opacity:1}60%{transform:translate(350%);opacity:0}60.1%{transform:translate(-100%);opacity:0;background:var(--color-info)}63%{opacity:1}77%{opacity:1}80%{transform:translate(350%);opacity:0}80.1%{transform:translate(-100%);opacity:0;background:var(--color-success)}83%{opacity:1}97%{opacity:1}to{transform:translate(350%);opacity:0}}@keyframes page-loading-in{0%{opacity:0}to{opacity:1}}.inline-edit{display:inline-flex;align-items:center;gap:var(--space-1);min-width:0}.inline-edit-text{min-width:0;max-width:100%}.inline-edit-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:22px;height:22px;border-radius:var(--radius-xs);color:var(--text-muted);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.inline-edit-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.inline-edit-btn-confirm:hover{color:var(--color-success)}.inline-edit-btn-cancel:hover{color:var(--color-error)}.inline-edit-edit-btn{transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.inline-edit-input{font-family:inherit;font-size:inherit;background:var(--bg-input);border:1px solid var(--accent);border-radius:var(--radius-xs);color:var(--text-primary);padding:2px var(--space-2);outline:none;min-width:80px;max-width:250px}.inline-edit-input:focus{background:var(--bg-input-focus)}.inline-edit-saving .inline-edit-btn{opacity:.5;pointer-events:none}.inline-edit-saving .inline-edit-input{opacity:.6}.dashboard-body{display:flex;flex:1;min-height:0;position:relative}.dashboard-loading .dashboard-sidebar{display:none}.dashboard-sidebar{width:260px;flex-shrink:0;border-right:1px solid var(--border);background:var(--bg-surface);overflow-y:auto;display:flex;flex-direction:column}.sidebar-heading{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-4) var(--space-5) var(--space-2)}.sidebar-empty{padding:var(--space-4) var(--space-5);font-size:var(--text-sm);color:var(--text-muted)}.sidebar-error{color:var(--color-error)}.sidebar-item{display:flex;flex-direction:column;gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-5);cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--easing);border-left:2px solid transparent}.sidebar-item:hover{background:var(--bg-hover)}.sidebar-item.active{background:var(--bg-active);border-left-color:var(--text-primary)}.sidebar-item-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.sidebar-item-name{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);min-width:0}.sidebar-item.active .sidebar-item-name{color:var(--text-primary)}.sidebar-item-count{font-size:var(--text-2xs);color:var(--text-muted);flex-shrink:0}.sidebar-item-tags{display:flex;gap:var(--space-2)}.sidebar-tag{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:.02em}.sidebar-tag-running{color:var(--accent)}.sidebar-tag-done{color:var(--color-success)}.sidebar-tag-error{color:var(--color-error)}.dashboard-main{flex:1;min-width:0;overflow-y:auto;padding:var(--space-6)}.main-header{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-5)}.main-project-name{font-family:var(--font-mono);font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-primary)}.main-job-count{font-size:var(--text-sm);color:var(--text-muted)}.dashboard-empty{text-align:center;padding:var(--space-8) 0;color:var(--text-muted);font-size:var(--text-md)}.dashboard-empty-hint{margin-top:var(--space-2);font-size:var(--text-sm);color:var(--text-muted)}.dashboard-empty-hint code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);background:var(--bg-elevated);padding:2px 6px;border-radius:var(--radius-xs)}.project-summary{display:flex;flex-direction:column;gap:var(--space-4);margin-bottom:var(--space-5)}.project-status-bar-wrap{display:flex;flex-direction:column;gap:var(--space-2)}.project-status-bar{display:flex;height:6px;border-radius:3px;overflow:hidden;gap:2px}.project-status-bar-segment{min-width:4px;border-radius:3px;transition:flex-grow var(--duration-base) var(--easing)}.project-status-labels{font-size:var(--text-xs);color:var(--text-muted)}.project-error-banner{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#ef44440f;border:1px solid rgba(239,68,68,.12);border-radius:var(--radius-sm);font-size:var(--text-xs);color:var(--color-error);overflow:hidden}.project-error-count{font-weight:var(--weight-medium);flex-shrink:0}.project-error-sep{color:var(--text-muted);flex-shrink:0}.project-error-msg{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.project-error-job{all:unset;font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--color-error);cursor:pointer;flex-shrink:0;text-decoration:underline;text-underline-offset:2px}.project-error-job:hover{color:var(--text-primary)}.project-error-time{color:var(--text-muted);flex-shrink:0;margin-left:auto}.task-cards{display:flex;flex-direction:column;gap:var(--space-4)}.task-card{border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.task-card-header{display:flex;align-items:center;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);background:var(--bg-surface);cursor:pointer;transition:background var(--duration-fast) var(--easing);overflow:hidden}.task-card-header:hover{background:var(--bg-hover)}.task-card-name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);min-width:80px;overflow:hidden;flex-shrink:1}.task-card-count{font-size:var(--text-2xs);color:var(--text-muted);flex-shrink:0;white-space:nowrap}.task-card-chevron{margin-left:auto;font-size:var(--text-lg);color:var(--text-muted);transition:transform var(--duration-base) var(--easing);flex-shrink:0}.task-header-cards+.task-card-chevron{margin-left:0}.task-card.collapsed .task-card-chevron{transform:rotate(-90deg)}.task-header-cards{display:flex;align-items:center;gap:var(--space-2);margin-left:auto;flex-shrink:0}.task-reward-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing),border-color var(--duration-fast) var(--easing)}.task-reward-card:not(.task-reward-card-static):hover{background:var(--bg-hover);border-color:var(--border-strong);cursor:pointer}.task-reward-card-static{cursor:default}.task-reward-label{font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.task-reward-value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);white-space:nowrap}.task-reward-detail{font-size:var(--text-2xs);color:var(--text-muted);white-space:nowrap}.task-reward-delta-pos{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-success)}.task-reward-delta-neg{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--color-error)}.task-card-table-wrap{overflow-x:auto;border-top:1px solid var(--border)}.task-card-table{width:100%;min-width:700px;border-collapse:collapse;font-size:var(--text-sm)}.task-card-table thead th{text-align:left;padding:var(--space-2) var(--space-4);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg-surface)}.task-card-table thead th.th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color var(--duration-fast) var(--easing)}.task-card-table thead th.th-sortable:hover{color:var(--text-primary)}.jobs-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.jobs-table thead th{text-align:left;padding:var(--space-2) var(--space-4);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border);background:var(--bg-surface)}.job-row{transition:background var(--duration-fast) var(--easing)}.job-row:hover{background:var(--bg-hover)}.job-row-clickable{cursor:pointer}.job-row-clickable:hover{background:var(--bg-active)}.job-row-clickable .job-code{color:var(--text-primary)}.job-cell{padding:var(--space-2) var(--space-4);color:var(--text-secondary);border-bottom:1px solid var(--border);white-space:nowrap}.job-row:last-child .job-cell{border-bottom:none}.job-code{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-primary);max-width:20ch}.job-name-cell{position:relative;padding-right:44px;min-width:0}.job-name-text{display:flex;flex-direction:column;gap:2px;min-width:0}.job-name-cell .inline-edit-edit-btn{position:absolute;right:0;top:50%;transform:translateY(-50%);opacity:0;width:32px;height:32px;transition:opacity var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.job-name-cell .inline-edit-edit-btn .si{width:16px;height:16px}.job-row:hover .job-name-cell .inline-edit-edit-btn{opacity:1}.job-code-sub{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted)}.job-status-badge{font-size:var(--text-2xs);font-weight:var(--weight-medium);padding:1px 8px;border:1px solid;border-radius:var(--radius-xs);letter-spacing:.02em;display:inline-flex;align-items:center;justify-content:center;min-width:72px}.job-progress{text-align:center;width:72px}.progress-ring-wrap{display:inline-flex;align-items:center;gap:var(--space-1)}.progress-ring-dash{color:var(--text-muted);font-size:var(--text-xs)}.progress-ring-svg{flex-shrink:0}.progress-ring-arc{transition:stroke-dashoffset .4s var(--easing)}.progress-ring-label{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--weight-medium);min-width:28px}.progress-ring-active .progress-ring-svg{animation:ring-pulse 2s ease-in-out infinite}@keyframes ring-pulse{0%,to{opacity:1;filter:drop-shadow(0 0 0px transparent)}50%{opacity:.8;filter:drop-shadow(0 0 4px var(--accent))}}.job-sparkline{width:80px;text-align:center}.sparkline{display:inline-block;vertical-align:middle}.sparkline-placeholder{color:var(--text-muted);font-size:var(--text-xs)}.job-eta{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-secondary);white-space:nowrap}.job-time{font-size:var(--text-xs);color:var(--text-secondary)}.job-actions-cell{width:76px;text-align:center}.job-row-action-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-xs);color:var(--text-muted);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.job-row-cancel-btn:hover{color:var(--color-warning);background:var(--bg-hover)}.job-row-delete-btn:hover{color:var(--color-error);background:var(--bg-hover)}.job-row-pin-btn:hover{color:var(--color-warning);background:var(--bg-hover)}.job-row-pin-btn.pinned{color:var(--color-warning)}.job-row-pinned{border-left:2px solid var(--color-warning)}.job-row-download-btn:hover{color:var(--accent);background:var(--bg-hover)}.job-row-download-btn .job-action-download-icon{transform:rotate(-90deg)}.th-status-filter{position:relative}.th-status-btn{all:unset;box-sizing:border-box;display:inline-flex;align-items:center;gap:4px;cursor:pointer;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;transition:color var(--duration-fast) var(--easing)}.th-status-btn:hover,.th-status-btn.filtering{color:var(--text-primary)}.th-status-chevron{font-size:var(--text-sm);line-height:1}.status-filter-dropdown{position:absolute;top:100%;left:0;z-index:20;min-width:150px;margin-top:2px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);padding:var(--space-1) 0;animation:dropdown-in var(--duration-fast) var(--easing)}.status-filter-option{all:unset;box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast) var(--easing)}.status-filter-option:hover{background:var(--bg-hover)}.status-filter-option.active{background:var(--bg-active)}.status-filter-label{font-weight:var(--weight-medium);color:var(--text-primary)}.status-filter-count{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted)}.job-search-dropdown{min-width:200px}.job-search-wrap{padding:var(--space-2) var(--space-3)}.job-search-input{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-family:var(--font-mono);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);color:var(--text-primary);outline:none;box-sizing:border-box}.job-search-input:focus{border-color:var(--accent);background:var(--bg-input-focus)}.job-search-input::placeholder{color:var(--text-muted)}.job-version-badge{font-family:var(--font-mono);font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-primary)}.job-library-badge{font-size:var(--text-2xs);font-weight:var(--weight-medium);color:var(--text-primary)}.job-version{font-family:var(--font-mono);font-size:var(--text-xs)}.job-cell-empty{text-align:center;color:var(--text-muted)}.job-row-error{background:#ef44440a}.job-row-error:hover{background:#ef444414}.job-row-error-detail .job-error-message{padding:var(--space-2) var(--space-4);font-size:var(--text-xs);color:var(--color-error);background:#ef44440a;border-bottom:1px solid var(--border)}@media(max-width:1024px){.task-header-cards{display:none}}@media(max-width:768px){.dashboard-sidebar{position:fixed;top:var(--topbar-height);left:0;bottom:0;z-index:20;width:280px;max-height:none;border-right:1px solid var(--border);border-bottom:none;transform:translate(-100%);transition:transform var(--duration-base) var(--easing)}.dashboard-sidebar.sidebar-open{transform:translate(0)}.sidebar-item{border-left:none;border-bottom:1px solid var(--border)}.sidebar-item.active{border-left:none;border-bottom-color:var(--text-primary)}.project-error-banner{flex-wrap:wrap}}.export-overlay{position:fixed;inset:0;z-index:1100;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.export-dialog{width:92vw;max-width:1100px;max-height:90vh;background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden}.export-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--border)}.export-header-title{font-size:var(--text-lg);font-weight:var(--weight-medium);color:var(--text-primary);margin:0}.export-close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-muted);font-size:20px;cursor:pointer;border-radius:var(--radius-xs);transition:background var(--duration-fast) var(--easing)}.export-close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.export-body{display:flex;flex:1;min-height:0;overflow:hidden}.export-settings{width:320px;min-width:320px;padding:var(--space-4) var(--space-5);overflow-y:auto;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:var(--space-3)}.export-section-title{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.export-field{display:flex;flex-direction:column;gap:4px}.export-field-half{flex:1;min-width:0}.export-row{display:flex;gap:var(--space-3);align-items:flex-end}.export-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em}.export-input{width:100%;padding:6px 10px;font-size:var(--text-sm);font-family:var(--font-body);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);outline:none;transition:border-color var(--duration-fast) var(--easing);box-sizing:border-box}.export-input:focus{border-color:var(--accent);background:var(--bg-input-focus)}.export-select{width:100%;padding:6px 10px;font-size:var(--text-sm);font-family:var(--font-body);color:var(--text-primary);background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-xs);outline:none;cursor:pointer;transition:border-color var(--duration-fast) var(--easing)}.export-select:focus{border-color:var(--accent)}.export-checkbox-label{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;padding-top:18px}.export-checkbox-label input[type=checkbox]{accent-color:var(--accent)}.export-series-labels{display:flex;flex-direction:column;gap:6px}.export-series-row{display:flex;align-items:center;gap:8px}.export-color-picker-wrapper{position:relative;flex-shrink:0}.export-series-swatch{width:24px;height:24px;border-radius:var(--radius-xs);flex-shrink:0;border:2px solid var(--border);cursor:pointer;padding:0;transition:border-color var(--duration-fast) var(--easing)}.export-series-swatch:hover{border-color:var(--border-strong)}.export-color-popover{position:absolute;top:100%;left:0;z-index:20;margin-top:4px;padding:8px;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);width:200px}.export-color-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-bottom:8px}.export-color-option{width:32px;height:24px;border:2px solid transparent;border-radius:var(--radius-xs);cursor:pointer;padding:0;transition:border-color var(--duration-fast) var(--easing),transform var(--duration-fast) var(--easing)}.export-color-option:hover{transform:scale(1.15);border-color:var(--border-strong)}.export-color-option.active{border-color:var(--text-primary)}.export-color-custom{display:flex;align-items:center;gap:6px;border-top:1px solid var(--border);padding-top:8px}.export-color-custom input[type=color]{width:32px;height:28px;border:1px solid var(--border);border-radius:var(--radius-xs);cursor:pointer;padding:0;background:none}.export-color-hex{flex:1;font-family:var(--font-mono);font-size:var(--text-xs)}.export-separator{width:100%;height:1px;min-height:1px;background:var(--border);margin:var(--space-2) 0;flex-shrink:0}.export-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-xs);overflow:hidden}.export-toggle-btn{flex:1;padding:5px 0;font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-body);color:var(--text-muted);background:var(--bg-input);border:none;cursor:pointer;transition:all var(--duration-fast) var(--easing)}.export-toggle-btn:not(:last-child){border-right:1px solid var(--border)}.export-toggle-btn.active{background:var(--accent-surface);color:var(--accent)}.export-toggle-btn:hover:not(.active){background:var(--bg-hover)}.export-filename-row{display:flex;align-items:center;gap:4px}.export-filename-row .export-input{flex:1}.export-filename-ext{font-size:var(--text-sm);color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap}.export-preview{flex:1;min-width:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:var(--bg-page)}.export-preview-canvas{border-radius:var(--radius-xs);overflow:hidden;box-shadow:0 1px 4px #00000026;flex-shrink:0}.export-preview-title{text-align:center;font-size:14px;font-weight:600;padding:8px 0 0;font-family:Inter,Helvetica,Arial,sans-serif}.export-footer{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-5);border-top:1px solid var(--border)}.export-footer-info{font-size:var(--text-xs);color:var(--text-muted);font-family:var(--font-mono)}.export-footer-actions{display:flex;gap:var(--space-2)}.export-btn-secondary{padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-secondary)}.export-btn-secondary:hover{background:var(--bg-hover);color:var(--text-primary)}.export-btn-primary{padding:var(--space-2) var(--space-5);font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-body);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--easing);border:none;background:var(--accent);color:var(--text-primary)}.export-btn-primary:hover{opacity:.9}.export-body{position:relative}.export-settings-toggle,.export-settings-overlay{display:none}.export-body-collapsed .export-settings-toggle{display:flex;align-items:center;justify-content:center;position:absolute;top:var(--space-2);left:var(--space-2);z-index:11;width:32px;height:32px;border-radius:var(--radius-sm);background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);font-size:16px;cursor:pointer;transition:background var(--duration-fast) var(--easing)}.export-body-collapsed .export-settings-toggle:hover{background:var(--bg-hover);color:var(--text-primary)}.export-body-collapsed .export-settings-overlay{display:block;position:absolute;inset:0;z-index:9;background:#0000004d;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:export-overlay-in var(--duration-base) var(--easing)}@keyframes export-overlay-in{0%{opacity:0}to{opacity:1}}.export-body-collapsed .export-settings{position:absolute;top:0;left:0;bottom:0;z-index:10;transform:translate(-100%);transition:transform var(--duration-base) var(--easing);background:var(--bg-surface);box-shadow:var(--shadow-lg)}.export-body-collapsed .export-settings.export-settings-open{transform:translate(0)}.job-detail-body{display:flex;flex:1;min-height:0}.job-detail-main{padding:var(--space-2) var(--space-6) 0;display:flex;flex-direction:column;overflow:hidden;flex:1;min-width:0}.job-tab-content{flex:1;min-height:0;overflow-y:auto;padding-bottom:var(--space-6)}.job-tab-content:before{content:"";display:block;height:var(--space-2)}.job-sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--border);background:var(--bg-surface);overflow-y:auto;display:flex;flex-direction:column}.job-sidebar-heading{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-4) var(--space-4) var(--space-1);margin-bottom:var(--space-1)}.job-sidebar-heading:after{content:"";display:block;height:1px;background:var(--border);margin:var(--space-1) calc(-1 * var(--space-1)) 0}.job-sidebar-empty{padding:var(--space-4);font-size:var(--text-sm);color:var(--text-muted)}.job-sidebar-skeleton{pointer-events:none;animation:chart-skeleton-in .3s var(--easing)}.job-sidebar-skeleton-info{display:flex;flex-direction:column;gap:6px;flex:1}.job-sidebar-skeleton-line{width:70%;height:10px;border-radius:var(--radius-xs);background:var(--bg-elevated);position:relative;overflow:hidden}.job-sidebar-skeleton-line.short{width:40%;height:8px}.job-sidebar-item{position:relative;display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);min-height:44px;transition:background var(--duration-fast) var(--easing);border-left:3px solid transparent;margin-bottom:var(--space-2)}.job-sidebar-item:after{content:"";position:absolute;bottom:calc(-.5 * var(--space-2));left:var(--space-3);right:var(--space-3);height:1px;background:var(--border)}.job-sidebar-item:hover{background:var(--bg-hover)}.job-sidebar-item.comparing{background:var(--bg-active)}.job-sidebar-item-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.job-sidebar-item-bottom{display:flex;align-items:center;gap:var(--space-2)}.job-sidebar-item-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.job-sidebar-code{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-primary);min-width:0}.job-sidebar-status-row{display:flex;align-items:baseline;gap:var(--space-2);min-width:0;overflow:hidden}.job-sidebar-code-sub{font-family:var(--font-mono);font-size:var(--text-2xs);color:var(--text-muted);white-space:nowrap;flex-shrink:1;overflow:hidden;text-overflow:ellipsis}.job-sidebar-status{font-size:var(--text-2xs);font-weight:var(--weight-medium)}.job-sidebar-trigger-area{position:relative;display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0}.job-sidebar-pin-indicator{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--color-warning);transition:opacity var(--duration-fast) var(--easing)}.job-sidebar-menu-trigger{all:unset;position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-xs);color:var(--text-muted);cursor:pointer;opacity:0;pointer-events:none;transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing),opacity var(--duration-fast) var(--easing)}.job-sidebar-item:hover .job-sidebar-pin-indicator{opacity:0}.job-sidebar-item:hover .job-sidebar-menu-trigger,.job-sidebar-menu-trigger.open{opacity:1;pointer-events:auto}.job-sidebar-menu-trigger:hover,.job-sidebar-menu-trigger.open{color:var(--text-primary);background:var(--bg-hover)}.job-sidebar-menu-trigger.open~.job-sidebar-pin-indicator,.job-sidebar-item:has(.job-sidebar-menu-trigger.open) .job-sidebar-pin-indicator{opacity:0}@media(hover:none){.job-sidebar-menu-trigger{opacity:1;pointer-events:auto}.job-sidebar-pin-indicator{display:none}}.job-sidebar-menu{position:absolute;top:100%;right:var(--space-2);z-index:20;min-width:140px;padding:var(--space-1) 0;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg)}.job-sidebar-menu-item{all:unset;display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);cursor:pointer;box-sizing:border-box;transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing)}.job-sidebar-menu-item:hover{background:var(--bg-hover);color:var(--text-primary)}.job-sidebar-menu-item.pinned,.job-sidebar-menu-item.pinned:hover{color:var(--color-warning)}.job-sidebar-menu-item.active{color:var(--accent)}.job-sidebar-menu-item.disabled{opacity:.35;cursor:not-allowed}.job-sidebar-menu-item.disabled:hover{background:none;color:var(--text-secondary)}.job-detail-back{font-size:var(--text-base);color:var(--text-muted);background:none;border:none;padding:0;cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:var(--space-1);transition:color var(--duration-fast) var(--easing)}.job-detail-back:hover{color:var(--text-primary)}.job-infobar{display:flex;align-items:center;gap:var(--space-5);padding:var(--space-2) 0;border-bottom:1px solid var(--border);flex-shrink:0;overflow:hidden}.job-infobar-name-group{display:flex;flex-direction:column;gap:2px;max-width:20ch;min-width:0;flex-shrink:.1;overflow:hidden}.job-infobar-code{font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary)}.job-infobar-code-sub{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--text-muted)}.job-infobar-badge{font-size:var(--text-xs);font-weight:var(--weight-medium);padding:3px 10px;border-radius:var(--radius-xs);border:1px solid;background:var(--bg-surface);letter-spacing:.02em;flex-shrink:0}.job-infobar-field{font-size:var(--text-base);color:var(--text-secondary);white-space:nowrap;flex-shrink:10;min-width:0;overflow:hidden}.job-infobar-task-value{font-weight:var(--weight-medium);color:var(--text-primary);max-width:25ch}.job-infobar-field strong{color:var(--text-primary);font-weight:var(--weight-medium)}.job-infobar-actions{display:flex;gap:var(--space-2);align-items:center;flex-shrink:0}.job-action-btn{display:inline-flex;align-items:center;gap:5px;padding:var(--space-1) var(--space-3);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing),color var(--duration-fast) var(--easing),border-color var(--duration-fast) var(--easing);border:1px solid var(--border);background:transparent;color:var(--text-secondary)}.job-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.job-action-btn:disabled{opacity:.5;cursor:not-allowed}.job-action-cancel{border-color:var(--color-warning);color:var(--color-warning)}.job-action-cancel:hover{background:var(--bg-hover);color:var(--color-warning)}.job-action-download{border-color:var(--accent);color:var(--accent)}.job-action-download:hover{background:var(--bg-hover);color:var(--accent)}.job-action-download-icon{transform:rotate(-90deg)}.job-action-delete{border-color:var(--color-error);color:var(--color-error)}.job-action-delete:hover{background:var(--bg-hover);color:var(--color-error)}.job-infobar-progress{display:flex;align-items:center;gap:var(--space-2);flex:1 1 160px;min-width:0}.job-infobar-progress-bar{flex:1 1 160px;min-width:40px;height:10px;border-radius:5px;background:var(--border);overflow:hidden}.job-infobar-progress-fill{height:100%;border-radius:5px;transition:width .4s var(--easing),background .3s var(--easing)}.job-infobar-progress-fill.training{animation:bar-pulse 2s ease-in-out infinite}@keyframes bar-pulse{0%,to{opacity:1;filter:drop-shadow(0 0 0px transparent)}50%{opacity:.75;filter:drop-shadow(0 0 6px var(--accent))}}.job-infobar-progress-pct{font-family:var(--font-mono);font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);flex-shrink:0;white-space:nowrap}.job-infobar-progress-sub{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap;flex-shrink:0}.job-detail-loading-state .job-sidebar{display:none}.job-detail-loading,.job-detail-error{padding:var(--space-6);color:var(--text-muted);font-size:var(--text-sm)}.job-detail-error{color:var(--color-error)}.charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-5)}@media(max-width:1280px){.charts-grid{grid-template-columns:1fr}}@media(max-width:960px){.job-infobar-field,.job-infobar-name-group .inline-edit-edit-btn,.job-infobar-progress-sub{display:none}}@media(max-width:768px){.job-infobar-progress-bar{width:80px}.job-infobar-progress-sub{display:none}.job-sidebar{position:fixed;top:var(--topbar-height);left:0;bottom:0;z-index:20;width:280px;transform:translate(-100%);transition:transform var(--duration-base) var(--easing)}.job-sidebar.sidebar-open{transform:translate(0)}}.job-tabs{display:flex;gap:var(--space-1);padding:var(--space-2) 0;border-bottom:1px solid var(--border);flex-shrink:0}.job-tab{all:unset;cursor:pointer;padding:var(--space-1) var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.job-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.job-tab.active{color:var(--text-primary);background:var(--bg-active)}.logs-viewer{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;min-height:400px;max-height:70vh;position:relative}.logs-header{font-size:var(--text-xs);color:var(--text-muted);padding:var(--space-2) var(--space-3);background:var(--bg-surface);border-bottom:1px solid var(--border);flex-shrink:0}.logs-body{overflow-y:auto;flex:1;padding:var(--space-3);background:var(--bg-raised);font-family:var(--font-mono);font-size:var(--text-xs)}.logs-line{display:flex;gap:var(--space-2);color:var(--text-secondary);white-space:pre-wrap;word-break:break-all;line-height:1.6}.logs-lineno{flex-shrink:0;text-align:right;color:var(--text-muted);-webkit-user-select:none;user-select:none}.logs-pin-btn{position:absolute;bottom:var(--space-3);right:var(--space-4);width:32px;height:32px;border-radius:var(--radius-full);border:1px solid var(--border);background:var(--bg-elevated);color:var(--text-primary);font-size:var(--text-base);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-card);transition:background var(--duration-fast) var(--easing)}.logs-pin-btn:hover{background:var(--bg-hover)}.logs-empty,.logs-error{padding:var(--space-6);font-size:var(--text-sm);color:var(--text-muted)}.logs-error{color:var(--color-error)}.ansi-black-fg{color:#555}.ansi-red-fg{color:#e06c75}.ansi-green-fg{color:#98c379}.ansi-yellow-fg{color:#e5c07b}.ansi-blue-fg{color:#61afef}.ansi-magenta-fg{color:#c678dd}.ansi-cyan-fg{color:#56b6c2}.ansi-white-fg{color:#dcdfe4}.ansi-bright-black-fg{color:#888}.ansi-bright-red-fg{color:#f44747}.ansi-bright-green-fg{color:#b5cea8}.ansi-bright-yellow-fg{color:#ffd68a}.ansi-bright-blue-fg{color:#7ec8e3}.ansi-bright-magenta-fg{color:#d4a0ff}.ansi-bright-cyan-fg{color:#7ee7f0}.ansi-bright-white-fg{color:#fff}.ansi-black-bg{background-color:#1e1e1e}.ansi-red-bg{background-color:#e06c75}.ansi-green-bg{background-color:#98c379}.ansi-yellow-bg{background-color:#e5c07b}.ansi-blue-bg{background-color:#61afef}.ansi-magenta-bg{background-color:#c678dd}.ansi-cyan-bg{background-color:#56b6c2}.ansi-white-bg{background-color:#dcdfe4}.ansi-bold{font-weight:700}.ansi-italic{font-style:italic}.ansi-underline{text-decoration:underline}.chart-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden}.chart-title{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.chart-title-text{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}.chart-stats{display:flex;align-items:baseline;gap:6px;flex-shrink:0}.chart-stat-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary)}.chart-stat-value{font-family:var(--font-mono);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.chart-stat-sep{color:var(--text-secondary)}.chart-body{padding:var(--space-4) var(--space-3) var(--space-2)}.chart-skeleton{animation:chart-skeleton-in .3s var(--easing)}.chart-skeleton-title{display:flex;align-items:center;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border)}.chart-skeleton-line{width:40%;height:12px;border-radius:var(--radius-xs);background:var(--bg-elevated);position:relative;overflow:hidden}.chart-skeleton-body{padding:var(--space-4) var(--space-3) var(--space-2)}.chart-skeleton-area{height:356px;border-radius:var(--radius-sm);background:var(--bg-elevated);position:relative;overflow:hidden}.chart-skeleton-pills{display:flex;gap:var(--space-2);margin-bottom:var(--space-4)}.chart-skeleton-pill{width:64px;height:28px;border-radius:var(--radius-sm);background:var(--bg-elevated);position:relative;overflow:hidden}.chart-skeleton-pill:after,.chart-skeleton-line:after,.chart-skeleton-area:after,.job-sidebar-skeleton-line:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0%,var(--bg-raised) 50%,transparent 100%);animation:chart-shimmer 1.5s ease-in-out infinite}@keyframes chart-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes chart-skeleton-in{0%{opacity:0}to{opacity:1}}.chart-actions{display:flex;align-items:center;gap:4px;margin-left:auto;flex-shrink:0}.chart-action-btn{all:unset;cursor:pointer;display:flex;align-items:center;justify-content:center;width:32px;height:28px;border-radius:var(--radius-xs);font-size:var(--text-base);color:var(--text-muted);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.chart-action-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.chart-action-btn.active{color:var(--accent);background:var(--accent-surface)}.chart-modal-overlay{position:fixed;inset:0;z-index:1000;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:var(--space-6)}.chart-modal-content{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;width:90vw;max-width:1200px;max-height:90vh;box-shadow:var(--shadow-lg)}.chart-modal-body{padding:var(--space-4) var(--space-3) var(--space-2)}.chart-tooltip{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-2) var(--space-3);font-size:var(--text-xs)}.chart-tooltip-label{color:var(--text-muted);margin-bottom:var(--space-1)}.chart-tooltip-item{font-family:var(--font-mono)}.chart-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-1) var(--space-3);font-size:var(--text-xs);padding:var(--space-1) 30px var(--space-1) 55px}.chart-legend-item{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:130px}.chart-legend-icon{width:14px;height:2px;flex-shrink:0;border-radius:1px}.chart-legend-icon-dashed{background:repeating-linear-gradient(90deg,currentColor 0 4px,transparent 4px 7px)!important}.chart-legend-label{font-size:var(--text-xs);min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.charts-empty{padding:var(--space-8);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.recharts-brush-slide{fill:var(--bg-active);fill-opacity:.3}.recharts-brush-traveller rect{fill:var(--bg-elevated);stroke:var(--border-strong)}.recharts-brush-texts text{font-size:13px;fill:var(--text-secondary)}.charts-group-pills{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4)}.charts-group-pill{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-muted);border-radius:var(--radius-sm);transition:color var(--duration-fast) var(--easing),background var(--duration-fast) var(--easing)}.charts-group-pill:hover{color:var(--text-primary);background:var(--bg-hover)}.charts-group-pill.active{color:var(--text-primary);background:var(--bg-active)}.charts-group-pill-count{font-size:var(--text-xs);color:var(--text-muted)}.charts-compare-bar{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4)}.charts-compare-loading{font-size:var(--text-xs);color:var(--text-muted)}.compare-legend{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md)}.compare-legend-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--duration-fast) var(--easing),opacity var(--duration-fast) var(--easing)}.compare-legend-item:hover:not(:disabled){background:var(--bg-hover)}.compare-legend-item:disabled{cursor:default}.compare-legend-item.disabled{opacity:.35}.compare-legend-item.disabled .compare-legend-code{text-decoration:line-through}.compare-legend-dot{width:10px;height:10px;border-radius:var(--radius-full);flex-shrink:0}.compare-legend-code{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-primary)}.compare-legend-sub{font-size:var(--text-2xs);color:var(--text-muted)}.config-empty{padding:var(--space-8);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}.config-sections{display:flex;flex-direction:column;gap:var(--space-3);overflow-x:auto}.config-section-chevron{font-size:var(--text-base);color:var(--text-muted);transition:transform var(--duration-fast) var(--easing);display:inline-block}.config-section-chevron.open{transform:rotate(180deg)}.config-val{font-family:var(--font-mono);font-size:var(--text-xs)}.config-val-num{color:var(--color-cyan)}.config-val-str{color:var(--color-success)}.config-val-bool{color:var(--color-warning)}.config-val-null{color:var(--text-muted);font-style:italic}.config-val-arr{color:var(--text-primary)}.config-compare-loading{color:var(--text-muted);font-size:var(--text-xs);padding:var(--space-4);text-align:center}.config-compare-table{width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;font-family:var(--font-mono);font-size:var(--text-2xs);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg-surface)}.config-compare-th{position:sticky;top:0;z-index:1;background:var(--bg-elevated);padding:var(--space-2) var(--space-3);text-align:left;font-weight:600;font-size:var(--text-2xs);border-bottom:1px solid var(--border-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-compare-key-col{width:30%;min-width:180px;color:var(--text-secondary);position:sticky;left:0;z-index:2}.config-sections.scrolled .config-compare-key-col,.config-sections.scrolled .config-compare-key{border-right:2px solid var(--border-strong)}.config-compare-job{font-weight:600}.config-compare-section-row{cursor:pointer}.config-compare-section-row td{padding:0;background:var(--bg-surface);border-bottom:1px solid var(--border)}.config-compare-section-row:hover td{background:var(--bg-hover)}.config-compare-section-label{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--text-primary);position:sticky;left:0;width:fit-content}.config-compare-td{padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--border);vertical-align:top;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.config-compare-key{color:var(--text-secondary);font-weight:500;position:sticky;left:0;z-index:1;background:var(--bg-surface)}.config-diff{background:var(--accent-surface);border-left:2px solid var(--accent)}.config-missing{color:var(--text-muted);font-style:italic}.config-compare-row-diff .config-compare-key{color:var(--text-primary)}.profile-page{flex:1;overflow-y:auto;padding:var(--space-5)}.profile-container{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.profile-heading{font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary);grid-column:1 / -1}.profile-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.profile-card-heading{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-primary)}.profile-avatar-section{display:flex;align-items:center;gap:var(--space-3)}.profile-avatar{width:44px;height:44px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:var(--weight-semibold);color:var(--text-primary);-webkit-user-select:none;user-select:none;flex-shrink:0}.profile-avatar-info{display:flex;flex-direction:column;gap:2px;min-width:0}.profile-avatar-name{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-primary)}.profile-avatar-role{font-size:var(--text-xs);color:var(--text-muted)}.profile-fields{display:flex;flex-direction:column}.profile-btn{align-self:flex-start;padding:var(--space-2) var(--space-5);background:var(--text-primary);color:var(--bg-page);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--easing)}.profile-btn:hover:not(:disabled){opacity:.85}.profile-btn:disabled{opacity:.4;cursor:not-allowed}.profile-msg{font-size:var(--text-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm)}.profile-msg.ok{color:var(--color-success);background:#10b98114;border:1px solid rgba(16,185,129,.15)}.profile-msg.err{color:var(--color-error);background:#ef44440f;border:1px solid rgba(239,68,68,.12)}@media(max-width:768px){.profile-container{grid-template-columns:1fr;max-width:560px}}.settings-page{flex:1;overflow-y:auto;padding:var(--space-5)}.settings-container{max-width:960px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.settings-back{grid-column:1 / -1;display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:none;font-size:var(--text-sm);color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--easing)}.settings-back:hover{color:var(--text-primary)}.settings-heading{grid-column:1 / -1;font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--text-primary)}.settings-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-3)}.settings-card:last-of-type{grid-column:2;grid-row:3 / 5}.settings-card-heading{font-size:var(--text-base);font-weight:var(--weight-medium);color:var(--text-primary)}.settings-field{display:flex;flex-direction:column;gap:6px}.settings-label{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.settings-select{width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-family:var(--font-body);color:var(--text-primary);background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;cursor:pointer;transition:border-color var(--duration-fast) var(--easing)}.settings-select:focus{border-color:var(--accent)}.settings-toggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.settings-toggle-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-body);color:var(--text-muted);background:var(--bg-page);border:none;cursor:pointer;transition:all var(--duration-fast) var(--easing)}.settings-toggle-btn:not(:last-child){border-right:1px solid var(--border)}.settings-toggle-btn.active{background:var(--accent-surface);color:var(--accent)}.settings-toggle-btn:hover:not(.active){background:var(--bg-hover)}.settings-checkbox-label{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer}.settings-checkbox-label input[type=checkbox]{accent-color:var(--accent)}.settings-reset-btn{grid-column:1 / -1;justify-self:start;padding:var(--space-2) var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);font-family:var(--font-body);color:var(--text-muted);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-fast) var(--easing)}.settings-reset-btn:hover{color:var(--text-primary);border-color:var(--border-strong);background:var(--bg-hover)}@media(max-width:768px){.settings-container{grid-template-columns:1fr;max-width:560px}.settings-card:last-of-type{grid-column:auto;grid-row:auto}}
