@import url("https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;600;700;800;900&family=JetBrains+Mono:wght@400;500;700&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{line-height:inherit}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{text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;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}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af}input::placeholder,textarea::placeholder{color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}input:where(:not([type])),input:where([type=date]),input:where([type=datetime-local]),input:where([type=email]),input:where([type=month]),input:where([type=number]),input:where([type=password]),input:where([type=search]),input:where([type=tel]),input:where([type=text]),input:where([type=time]),input:where([type=url]),input:where([type=week]),select,select:where([multiple]),textarea{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow:0 0 #0000}input:where(:not([type])):focus,input:where([type=date]):focus,input:where([type=datetime-local]):focus,input:where([type=email]):focus,input:where([type=month]):focus,input:where([type=number]):focus,input:where([type=password]):focus,input:where([type=search]):focus,input:where([type=tel]):focus,input:where([type=text]):focus,input:where([type=time]):focus,input:where([type=url]):focus,input:where([type=week]):focus,select:focus,select:where([multiple]):focus,textarea:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:#2563eb}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-meridiem-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-year-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}select:where([multiple]),select:where([size]:not([size="1"])){background-image:none;background-position:0 0;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}input:where([type=checkbox]),input:where([type=radio]){-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:#2563eb;background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow:0 0 #0000}input:where([type=checkbox]){border-radius:0}input:where([type=radio]){border-radius:100%}input:where([type=checkbox]):focus,input:where([type=radio]):focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset:var(--tw-empty,/*!*/ /*!*/);--tw-ring-offset-width:2px;--tw-ring-offset-color:#fff;--tw-ring-color:#2563eb;--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}input:where([type=checkbox]):checked,input:where([type=radio]):checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}input:where([type=checkbox]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=checkbox]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=radio]):checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors:active){input:where([type=radio]):checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):checked:focus,input:where([type=checkbox]):checked:hover,input:where([type=radio]):checked:focus,input:where([type=radio]):checked:hover{border-color:transparent;background-color:currentColor}input:where([type=checkbox]):indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:50%;background-repeat:no-repeat}@media (forced-colors:active){input:where([type=checkbox]):indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}input:where([type=checkbox]):indeterminate:focus,input:where([type=checkbox]):indeterminate:hover{border-color:transparent;background-color:currentColor}input:where([type=file]){background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}input:where([type=file]):focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.\!visible{visibility:visible!important}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.inset-1{inset:.25rem}.bottom-3{bottom:.75rem}.bottom-4{bottom:1rem}.bottom-full{bottom:100%}.left-0{left:0}.left-3{left:.75rem}.left-4{left:1rem}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.order-1{order:1}.order-2{order:2}.order-3{order:3}.order-4{order:4}.order-5{order:5}.order-6{order:6}.order-first{order:-9999}.col-span-2{grid-column:span 2/span 2}.col-span-3{grid-column:span 3/span 3}.col-start-1{grid-column-start:1}.col-start-2{grid-column-start:2}.row-start-1{grid-row-start:1}.row-start-2{grid-row-start:2}.mx-auto{margin-left:auto;margin-right:auto}.my-2{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:.75rem;margin-bottom:.75rem}.my-4{margin-top:1rem;margin-bottom:1rem}.-ml-1{margin-left:-.25rem}.mb-1{margin-bottom:.25rem}.mb-1\.5{margin-bottom:.375rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-28{height:7rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[70dvh\]{height:70dvh}.h-\[clamp\(40rem\2c 88dvh\2c 52rem\)\]{height:clamp(40rem,88dvh,52rem)}.h-dvh{height:100dvh}.h-full{height:100%}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-52{max-height:13rem}.max-h-64{max-height:16rem}.max-h-72{max-height:18rem}.max-h-80{max-height:20rem}.max-h-\[28rem\]{max-height:28rem}.max-h-\[52vh\]{max-height:52vh}.max-h-\[60dvh\]{max-height:60dvh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[68dvh\]{max-height:68dvh}.max-h-\[92dvh\]{max-height:92dvh}.min-h-0{min-height:0}.min-h-11{min-height:2.75rem}.min-h-32{min-height:8rem}.min-h-56{min-height:14rem}.min-h-80{min-height:20rem}.min-h-\[50dvh\]{min-height:50dvh}.min-h-\[70dvh\]{min-height:70dvh}.min-h-dvh{min-height:100dvh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-11{width:2.75rem}.w-16{width:4rem}.w-2\.5{width:.625rem}.w-28{width:7rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-\[calc\(100vw-2rem\)\]{width:calc(100vw - 2rem)}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.min-w-0{min-width:0}.min-w-full{min-width:100%}.max-w-3xl{max-width:48rem}.max-w-52{max-width:13rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-\[10rem\]{max-width:10rem}.max-w-\[calc\(100\%-3rem\)\]{max-width:calc(100% - 3rem)}.max-w-\[calc\(100vw-3rem\)\]{max-width:calc(100vw - 3rem)}.max-w-\[min\(48rem\2c calc\(100vw-5rem\)\)\]{max-width:min(48rem,calc(100vw - 5rem))}.max-w-full{max-width:100%}.max-w-sm{max-width:24rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y:-50%}.-rotate-90,.-translate-y-1\/2{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate:-90deg}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize-y{resize:vertical}.scroll-mt-20{scroll-margin-top:5rem}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-\[3\.25rem_minmax\(0\2c 1fr\)\]{grid-template-columns:3.25rem minmax(0,1fr)}.grid-cols-\[auto\2c minmax\(0\2c 1fr\)\],.grid-cols-\[auto_minmax\(0\2c 1fr\)\]{grid-template-columns:auto minmax(0,1fr)}.grid-cols-\[auto_minmax\(0\2c 1fr\)_auto\]{grid-template-columns:auto minmax(0,1fr) auto}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-x-2{-moz-column-gap:.5rem;column-gap:.5rem}.gap-x-3{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-0\.5{row-gap:.125rem}.gap-y-1{row-gap:.25rem}.gap-y-1\.5{row-gap:.375rem}.gap-y-2{row-gap:.5rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse:0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-line>:not([hidden])~:not([hidden]){border-color:oklch(36% .018 255)}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-y{border-top-width:1px}.border-b,.border-y{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-\[oklch\(0\.77_0\.045_145\)\]{border-color:oklch(.77 .045 145)}.border-\[oklch\(0\.78_0\.035_155\)\]{border-color:oklch(.78 .035 155)}.border-\[oklch\(0\.78_0\.035_235\)\]{border-color:oklch(.78 .035 235)}.border-\[oklch\(0\.79_0\.03_335\)\]{border-color:oklch(.79 .03 335)}.border-\[oklch\(0\.80_0\.035_55\)\]{border-color:oklch(.8 .035 55)}.border-\[var\(--accent\)\]{border-color:var(--accent)}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-300{--tw-border-opacity:1;border-color:rgb(252 211 77/var(--tw-border-opacity,1))}.border-amber-400{--tw-border-opacity:1;border-color:rgb(251 191 36/var(--tw-border-opacity,1))}.border-amber-500\/40{border-color:rgb(245 158 11/.4)}.border-current{border-color:currentColor}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-300{--tw-border-opacity:1;border-color:rgb(110 231 183/var(--tw-border-opacity,1))}.border-emerald-400{--tw-border-opacity:1;border-color:rgb(52 211 153/var(--tw-border-opacity,1))}.border-emerald-500\/30{border-color:rgb(16 185 129/.3)}.border-emerald-500\/40{border-color:rgb(16 185 129/.4)}.border-indigo-200{--tw-border-opacity:1;border-color:rgb(199 210 254/var(--tw-border-opacity,1))}.border-ink{border-color:oklch(96% .006 105)}.border-line{border-color:oklch(36% .018 255)}.border-moss{border-color:oklch(72% .018 260)}.border-red-200{--tw-border-opacity:1;border-color:rgb(254 202 202/var(--tw-border-opacity,1))}.border-red-300{--tw-border-opacity:1;border-color:rgb(252 165 165/var(--tw-border-opacity,1))}.border-red-500\/40{border-color:rgb(239 68 68/.4)}.border-signal{border-color:oklch(91% .25 125)}.border-sky-200{--tw-border-opacity:1;border-color:rgb(186 230 253/var(--tw-border-opacity,1))}.border-slate-200{--tw-border-opacity:1;border-color:rgb(226 232 240/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.border-white\/10{border-color:rgb(255 255 255/.1)}.bg-\[\#f6f5f2\]{--tw-bg-opacity:1;background-color:rgb(246 245 242/var(--tw-bg-opacity,1))}.bg-\[oklch\(0\.89_0\.035_155\)\]{background-color:oklch(.89 .035 155)}.bg-\[oklch\(0\.89_0\.035_235\)\]{background-color:oklch(.89 .035 235)}.bg-\[oklch\(0\.90_0\.03_335\)\]{background-color:oklch(.9 .03 335)}.bg-\[oklch\(0\.91_0\.035_55\)\]{background-color:oklch(.91 .035 55)}.bg-\[oklch\(0\.92_0\.04_145\)\]{background-color:oklch(.92 .04 145)}.bg-\[oklch\(0\.95_0\.018_155\)\]{background-color:oklch(.95 .018 155)}.bg-\[oklch\(0\.95_0\.018_235\)\]{background-color:oklch(.95 .018 235)}.bg-\[oklch\(0\.96_0\.016_335\)\]{background-color:oklch(.96 .016 335)}.bg-\[oklch\(0\.96_0\.018_55\)\]{background-color:oklch(.96 .018 55)}.bg-\[var\(--accent-bg\)\]{background-color:var(--accent-bg)}.bg-amber-100{--tw-bg-opacity:1;background-color:rgb(254 243 199/var(--tw-bg-opacity,1))}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-50\/60{background-color:rgb(255 251 235/.6)}.bg-amber-500{--tw-bg-opacity:1;background-color:rgb(245 158 11/var(--tw-bg-opacity,1))}.bg-amber-500\/15{background-color:rgb(245 158 11/.15)}.bg-emerald-100{--tw-bg-opacity:1;background-color:rgb(209 250 229/var(--tw-bg-opacity,1))}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-50\/60{background-color:rgb(236 253 245/.6)}.bg-emerald-500{--tw-bg-opacity:1;background-color:rgb(16 185 129/var(--tw-bg-opacity,1))}.bg-emerald-500\/10{background-color:rgb(16 185 129/.1)}.bg-emerald-500\/15{background-color:rgb(16 185 129/.15)}.bg-indigo-100{--tw-bg-opacity:1;background-color:rgb(224 231 255/var(--tw-bg-opacity,1))}.bg-indigo-50{--tw-bg-opacity:1;background-color:rgb(238 242 255/var(--tw-bg-opacity,1))}.bg-ink{background-color:oklch(96% .006 105)}.bg-mist{background-color:oklch(22% .014 255)}.bg-moss{background-color:oklch(72% .018 260)}.bg-red-100{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.bg-red-50{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.bg-red-50\/60{background-color:rgb(254 242 242/.6)}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-red-500\/15{background-color:rgb(239 68 68/.15)}.bg-signal{background-color:oklch(91% .25 125)}.bg-sky-50{--tw-bg-opacity:1;background-color:rgb(240 249 255/var(--tw-bg-opacity,1))}.bg-slate-100{--tw-bg-opacity:1;background-color:rgb(241 245 249/var(--tw-bg-opacity,1))}.bg-slate-50{--tw-bg-opacity:1;background-color:rgb(248 250 252/var(--tw-bg-opacity,1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}.bg-white\/30{background-color:rgb(255 255 255/.3)}.bg-white\/60{background-color:rgb(255 255 255/.6)}.bg-white\/70{background-color:rgb(255 255 255/.7)}.bg-white\/85{background-color:rgb(255 255 255/.85)}.bg-white\/90{background-color:rgb(255 255 255/.9)}.bg-white\/95{background-color:rgb(255 255 255/.95)}.bg-\[linear-gradient\(45deg\2c \#f4f2ec_25\%\2c transparent_25\%\)\2c linear-gradient\(-45deg\2c \#f4f2ec_25\%\2c transparent_25\%\)\2c linear-gradient\(45deg\2c transparent_75\%\2c \#f4f2ec_75\%\)\2c linear-gradient\(-45deg\2c transparent_75\%\2c \#f4f2ec_75\%\)\]{background-image:linear-gradient(45deg,#f4f2ec 25%,transparent 0),linear-gradient(-45deg,#f4f2ec 25%,transparent 0),linear-gradient(45deg,transparent 75%,#f4f2ec 0),linear-gradient(-45deg,transparent 75%,#f4f2ec 0)}.bg-\[length\:18px_18px\]{background-size:18px 18px}.bg-\[position\:0_0\2c 0_9px\2c 9px_-9px\2c -9px_0\]{background-position:0 0,0 9px,9px -9px,-9px 0}.fill-mist{fill:oklch(22% .014 255)}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-2\.5{padding:.625rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-2\.5{padding-bottom:.625rem}.pb-20{padding-bottom:5rem}.pb-4{padding-bottom:1rem}.pb-\[max\(0\.5rem\2c env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.5rem,env(safe-area-inset-bottom))}.pb-\[max\(0\.625rem\2c env\(safe-area-inset-bottom\)\)\]{padding-bottom:max(.625rem,env(safe-area-inset-bottom))}.pl-0\.5{padding-left:.125rem}.pl-1{padding-left:.25rem}.pl-5{padding-left:1.25rem}.pl-9{padding-left:2.25rem}.pr-0\.5{padding-right:.125rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[0\.65rem\]{font-size:.65rem}.text-\[0\.85em\]{font-size:.85em}.text-\[0\.9375rem\]{font-size:.9375rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-extrabold{font-weight:800}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-6{line-height:1.5rem}.leading-7{line-height:1.75rem}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-normal{letter-spacing:0}.tracking-wide{letter-spacing:.025em}.text-\[var\(--accent-dark\)\]{color:var(--accent-dark)}.text-amber-300{--tw-text-opacity:1;color:rgb(252 211 77/var(--tw-text-opacity,1))}.text-amber-600{--tw-text-opacity:1;color:rgb(217 119 6/var(--tw-text-opacity,1))}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-amber-950{--tw-text-opacity:1;color:rgb(69 26 3/var(--tw-text-opacity,1))}.text-black{--tw-text-opacity:1;color:rgb(0 0 0/var(--tw-text-opacity,1))}.text-emerald-300{--tw-text-opacity:1;color:rgb(110 231 183/var(--tw-text-opacity,1))}.text-emerald-600{--tw-text-opacity:1;color:rgb(5 150 105/var(--tw-text-opacity,1))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:rgb(6 78 59/var(--tw-text-opacity,1))}.text-indigo-600{--tw-text-opacity:1;color:rgb(79 70 229/var(--tw-text-opacity,1))}.text-indigo-800{--tw-text-opacity:1;color:rgb(55 48 163/var(--tw-text-opacity,1))}.text-ink{color:oklch(96% .006 105)}.text-line{color:oklch(36% .018 255)}.text-mist{color:oklch(22% .014 255)}.text-moss{color:oklch(72% .018 260)}.text-red-300{--tw-text-opacity:1;color:rgb(252 165 165/var(--tw-text-opacity,1))}.text-red-600{--tw-text-opacity:1;color:rgb(220 38 38/var(--tw-text-opacity,1))}.text-red-700{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.text-red-800{--tw-text-opacity:1;color:rgb(153 27 27/var(--tw-text-opacity,1))}.text-red-900{--tw-text-opacity:1;color:rgb(127 29 29/var(--tw-text-opacity,1))}.text-signal{color:oklch(91% .25 125)}.text-sky-700{--tw-text-opacity:1;color:rgb(3 105 161/var(--tw-text-opacity,1))}.text-sky-800{--tw-text-opacity:1;color:rgb(7 89 133/var(--tw-text-opacity,1))}.text-sky-900{--tw-text-opacity:1;color:rgb(12 74 110/var(--tw-text-opacity,1))}.text-slate-700{--tw-text-opacity:1;color:rgb(51 65 85/var(--tw-text-opacity,1))}.text-slate-800{--tw-text-opacity:1;color:rgb(30 41 59/var(--tw-text-opacity,1))}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.shadow-\[0_0_12px_rgba\(198\2c 255\2c 56\2c 0\.30\)\]{--tw-shadow:0 0 12px rgba(198,255,56,0.30);--tw-shadow-colored:0 0 12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_18px_rgba\(198\2c 255\2c 56\2c 0\.28\)\]{--tw-shadow:0 0 18px rgba(198,255,56,0.28);--tw-shadow-colored:0 0 18px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_18px_rgba\(198\2c 255\2c 56\2c 0\.38\)\]{--tw-shadow:0 0 18px rgba(198,255,56,0.38);--tw-shadow-colored:0 0 18px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_0_6px_rgba\(198\2c 255\2c 56\2c 0\.6\)\]{--tw-shadow:0 0 6px rgba(198,255,56,0.6);--tw-shadow-colored:0 0 6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-\[0_24px_80px_rgba\(18\2c 24\2c 38\2c 0\.35\)\]{--tw-shadow:0 24px 80px rgba(18,24,38,0.35);--tw-shadow-colored:0 24px 80px var(--tw-shadow-color)}.shadow-\[0_24px_80px_rgba\(18\2c 24\2c 38\2c 0\.35\)\],.shadow-panel{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-panel{--tw-shadow:0 14px 40px oklch(20% 0.04 260/0.08);--tw-shadow-colored:0 14px 40px var(--tw-shadow-color)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-1{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-\[oklch\(0\.77_0\.045_155\)\]{--tw-ring-color:oklch(0.77 0.045 155)}.ring-\[oklch\(0\.77_0\.045_235\)\]{--tw-ring-color:oklch(0.77 0.045 235)}.ring-\[oklch\(0\.78_0\.04_335\)\]{--tw-ring-color:oklch(0.78 0.04 335)}.ring-\[oklch\(0\.79_0\.045_55\)\]{--tw-ring-color:oklch(0.79 0.045 55)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-sm{backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[width\]{transition-property:width;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}.\[overflow-wrap\:anywhere\]{overflow-wrap:anywhere}:root{--bg:oklch(97.5% 0.006 100);--bg-2:oklch(99% 0.003 100);--bg-3:oklch(94.5% 0.012 235);--surface:var(--bg-2);--surface-soft:var(--bg-3);--ink:oklch(25% 0.018 255);--muted:oklch(47% 0.018 255);--subtle:oklch(61% 0.016 255);--line:oklch(85% 0.012 245);--line-strong:oklch(72% 0.018 245);--accent:oklch(67% 0.16 220);--accent-dark:oklch(47% 0.14 220);--accent-bg:oklch(92% 0.06 220);--amber:oklch(62% 0.16 75);--amber-bg:oklch(95% 0.06 75);--rust:oklch(55% 0.17 25);--rust-bg:oklch(94% 0.045 25);--blue:oklch(57% 0.13 230);--shadow:0 12px 30px oklch(30% 0.025 255/0.08);--hand:"Outfit",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--r-1:8px;--r-2:14px;--r-3:24px}*{box-sizing:border-box}body,html{background:var(--bg);color:var(--ink)}body{min-height:100dvh;margin:0;font-family:var(--hand);font-size:14px;line-height:1.5;letter-spacing:0}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2' seed='3'/><feColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 0.04 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>")}body>*{position:relative;z-index:1}button,input,textarea{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a,button{color:inherit}a{text-decoration:none}svg{display:block;width:1.1rem;height:1.1rem}::-moz-selection{background:color-mix(in oklch,var(--accent) 22%,transparent)}::selection{background:color-mix(in oklch,var(--accent) 22%,transparent)}.factory-shell{display:grid;grid-template-columns:minmax(17.5rem,21rem) minmax(0,1fr);min-height:100dvh}.factory-sidebar{display:flex;flex-direction:column;gap:1rem;min-width:0;padding:1rem;border-right:1px solid var(--line);background:rgba(244,246,242,.82)}.brand-block,.brand-return{display:flex;align-items:center;gap:.8rem}.brand-block{padding:.65rem .65rem 1rem}.brand-return{min-height:2.5rem;padding:0 .65rem;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.72);font-weight:750}.brand-mark,.icon-box{display:grid;place-items:center;flex:0 0 auto;width:2.35rem;height:2.35rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--accent-dark);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}.brand-block h1,.detail-hero h1,.workspace-header h2{margin:0;color:var(--ink);font-weight:820;letter-spacing:0}.brand-block h1{font-size:1.04rem}.detail-summary span,.eyebrow,.metric-item span,.panel-title small,.section-heading{color:var(--muted);font-size:.72rem;font-weight:760;letter-spacing:.04em;text-transform:uppercase}.eyebrow{margin:0 0 .2rem}.composer-panel,.detail-panel,.sidebar-section{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.76);box-shadow:inset 0 1px 0 rgba(255,255,255,.85)}.sidebar-section{padding:.65rem}.panel-header,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem}.section-heading{min-height:2rem;padding:0 .15rem .55rem}.project-list{display:grid;gap:.45rem}.project-list-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.55rem;width:100%;min-height:3.4rem;padding:.7rem;border:1px solid transparent;border-radius:8px;background:transparent;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}.project-list-item.is-active,.project-list-item:hover{border-color:var(--line);background:var(--surface)}.ghost-action:active,.job-actions button:active,.primary-action:active,.project-list-item:active,.provider-card:active,.template-card:active,.text-action:active{transform:translateY(1px) scale(.99)}.project-list-item small,.project-list-item strong,.template-card small,.template-card strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-list-item strong{font-size:.88rem}.project-list-item small,.state-row small,.template-card small{margin-top:.18rem;color:var(--muted);font-size:.75rem}.create-project-panel{display:grid;gap:.65rem;margin-top:auto}.field-block{display:grid;gap:.32rem}.field-block span{color:var(--muted);font-size:.76rem;font-weight:700}.field-block input,.field-block textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.92);color:var(--ink);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.field-block input{min-height:2.35rem;padding:0 .7rem}.field-block textarea{resize:vertical;min-height:5.5rem;padding:.7rem;line-height:1.45}.field-block input:focus,.field-block textarea:focus{border-color:rgba(61,111,98,.72);background:var(--surface);box-shadow:0 0 0 3px rgba(61,111,98,.12)}.field-error{margin:0;color:var(--rust);font-size:.8rem;font-weight:720}.ghost-action,.primary-action,.text-action{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:2.55rem;border-radius:8px;font-weight:780;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,color .18s ease}.primary-action{width:100%;border:1px solid var(--accent-dark);background:var(--accent-dark);color:#f8fbf7}.primary-action:hover{background:color-mix(in oklch,var(--accent-dark) 86%,white)}.primary-action:disabled{cursor:wait;opacity:.78}.ghost-action,.primary-action.compact,.text-action{width:auto;padding:0 .85rem}.ghost-action{border:1px solid var(--line);background:rgba(255,255,255,.78)}.ghost-action:hover,.text-action:hover{border-color:var(--line-strong);background:var(--surface)}.text-action{min-height:2rem;border:1px solid transparent;background:transparent;color:var(--accent-dark);font-size:.82rem}.mini-skeleton{display:inline-block;width:1.1rem;height:.6rem;border-radius:999px;background:linear-gradient(90deg,rgba(255,255,255,.35),rgba(255,255,255,.85),rgba(255,255,255,.35));background-size:180% 100%;animation:shimmer .95s infinite}.factory-main{min-width:0;padding:1rem}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;max-width:1400px;margin:0 auto 1rem;padding:.65rem .2rem}.workspace-header h2{font-size:clamp(1.9rem,4vw,3.8rem);line-height:.98}.workspace-header p{margin:.45rem 0 0;color:var(--muted)}.detail-actions,.workspace-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:.55rem}.metric-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;max-width:1400px;margin:0 auto 1rem;border:1px solid var(--line);border-radius:8px;background:var(--line)}.metric-item{display:grid;gap:.3rem;min-width:0;padding:.85rem;background:rgba(255,255,255,.8)}.metric-item strong{min-width:0;overflow-wrap:anywhere;font-size:1rem}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(18rem,.8fr);gap:1rem;max-width:1400px;margin:0 auto 1rem}.workspace-column{min-width:0}.workspace-column,.workspace-column.wide{display:grid;align-content:start;gap:1rem}.panel-header{min-height:3rem;margin-bottom:.7rem}.panel-title{display:flex;align-items:center;gap:.65rem;min-width:0}.panel-title strong{display:block;min-width:0;overflow-wrap:anywhere;font-size:1rem}.provider-grid,.review-note,.state-stack{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.76)}.equal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;overflow:hidden;background:var(--line)}.provider-card{display:grid;align-content:start;gap:.7rem;min-height:12rem;padding:.9rem;border:0;text-align:left;cursor:pointer;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.provider-card.is-selected,.provider-card:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--provider-accent) 9%,white),white 64%),var(--surface)}.provider-card.is-selected{box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--provider-accent) 70%,white)}.provider-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.provider-card-top strong,.provider-label{overflow-wrap:anywhere}.provider-card-top span{flex:0 0 auto;padding:.22rem .46rem;border:1px solid color-mix(in srgb,var(--provider-accent) 36%,white);border-radius:999px;color:color-mix(in srgb,var(--provider-accent) 78%,var(--ink));font-size:.68rem;font-weight:760}.provider-label{color:var(--ink);font-size:.88rem;font-weight:760}.provider-summary{color:var(--muted);font-size:.8rem;line-height:1.45}.composer-panel{padding:.8rem}.composer-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(15rem,.95fr);gap:.8rem}.template-stack{display:grid;gap:.48rem}.template-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;width:100%;min-height:3.35rem;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.86);text-align:left;cursor:grab;transition:opacity .18s ease,transform .18s ease,border-color .18s ease,background .18s ease}.template-card:hover{border-color:var(--line-strong);background:var(--surface)}.template-card.is-dragging{opacity:.54}.template-drag-handle{display:grid;place-items:center;width:2rem;height:2rem;border-radius:8px;background:var(--surface-soft);color:var(--muted)}.effort-pill{flex:0 0 auto;padding:.25rem .45rem;border:1px solid var(--line);border-radius:999px;color:var(--muted);font-size:.7rem;font-weight:780}.drop-zone{display:grid;place-items:center;align-content:center;gap:.45rem;min-height:100%;padding:1rem;border:1px dashed var(--line-strong);border-radius:8px;background:linear-gradient(135deg,rgba(61,111,98,.08),rgba(154,107,47,.08));text-align:center;transition:border-color .18s ease,background .18s ease,transform .18s ease}.drop-zone svg{width:1.5rem;height:1.5rem;color:var(--accent-dark)}.drop-zone span{color:var(--muted);font-size:.82rem}.drop-zone.is-armed{background:rgba(61,111,98,.12);transform:translateY(-1px)}.state-stack{display:grid;overflow:hidden}.state-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:4rem;padding:.75rem;border-top:1px solid var(--line)}.state-row:first-child{border-top:0}.state-row b{display:grid;place-items:center;width:2rem;height:2rem;border-radius:999px;background:var(--surface-soft)}.state-row[data-state=approved] b{background:rgba(61,111,98,.14);color:var(--accent-dark)}.state-row[data-state=changes] b{background:rgba(147,79,61,.13);color:var(--rust)}.review-note{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.7rem;padding:.85rem}.review-note svg{width:1.35rem;height:1.35rem;color:var(--accent-dark)}.review-note p{margin:.25rem 0 0;color:var(--muted);font-size:.86rem;line-height:1.45}.review-board{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;max-width:1400px;margin:0 auto}.review-lane{min-width:0;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.72)}.detail-review-column header,.review-lane header{display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:2.65rem;padding:0 .75rem;border-bottom:1px solid var(--line);font-size:.85rem;font-weight:780}.detail-review-column header b,.review-lane header b{display:grid;place-items:center;min-width:1.55rem;height:1.55rem;border-radius:999px;background:var(--surface-soft);font-size:.76rem}.lane-body{display:grid;align-content:start;gap:.55rem;min-height:16rem;padding:.55rem}.empty-lane{display:grid;place-items:center;min-height:5rem;border:1px dashed var(--line);border-radius:8px;font-size:.82rem;font-weight:720}.detail-job,.job-card{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.job-card{display:grid;gap:.65rem;padding:.7rem;animation:riseIn .34s ease both}.job-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.55rem}.detail-job strong,.job-card-header strong{min-width:0;overflow-wrap:anywhere;font-size:.9rem}.detail-job span,.job-card-footer span,.job-card-header span{color:var(--muted);font-size:.72rem;font-weight:700;white-space:nowrap}.detail-job p,.job-card p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}.provider-chips{display:flex;flex-wrap:wrap;gap:.3rem}.provider-chips span{padding:.22rem .38rem;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.68rem;font-weight:760}.job-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.65rem}.job-actions{display:flex;gap:.3rem}.job-actions button{display:grid;place-items:center;width:1.9rem;height:1.9rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);cursor:pointer}.job-actions button:hover{border-color:var(--line-strong)}.job-actions button:disabled{cursor:not-allowed;opacity:.4}.reverse-icon{transform:rotate(180deg)}.project-detail-shell{min-height:100dvh;padding:1rem}.detail-grid,.detail-hero,.detail-topbar{max-width:1400px;margin-right:auto;margin-left:auto}.detail-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.detail-hero{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(18rem,.7fr);gap:1rem;align-items:stretch;margin-bottom:1rem}.detail-summary,.detail-title{border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.78)}.detail-title{padding:clamp(1rem,4vw,2rem)}.detail-title h1{max-width:13ch;font-size:clamp(2.25rem,7vw,5.8rem);line-height:.94}.detail-title p:last-child{margin:.85rem 0 0;color:var(--muted)}.detail-summary{display:grid;align-content:end;gap:1px;overflow:hidden}.detail-summary div{display:grid;gap:.25rem;padding:1rem}.detail-summary strong{overflow-wrap:anywhere;font-size:1.28rem}.detail-grid{display:grid;grid-template-columns:minmax(18rem,.85fr) minmax(0,1.35fr);gap:1rem}.detail-panel{padding:.85rem}.detail-panel-wide{grid-row:span 2}.approval-list,.provider-balance-list{display:grid;gap:.55rem}.provider-balance-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:3.2rem;padding:.6rem;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.provider-dot{width:.75rem;height:.75rem;border-radius:999px;background:var(--provider-accent)}.provider-balance-row small,.provider-balance-row strong{display:block}.provider-balance-row small{margin-top:.15rem;color:var(--muted);font-size:.74rem}.provider-balance-row b{color:var(--accent-dark);font-size:.74rem}.detail-review-matrix{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.detail-review-column{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:rgba(255,255,255,.72)}.detail-job,.detail-review-column .empty-lane{margin:.55rem}.detail-job{display:grid;gap:.55rem;padding:.65rem}.detail-job span{overflow:hidden;text-overflow:ellipsis}.approval-item{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;min-height:2.7rem;padding:.55rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted)}.approval-item span{display:grid;place-items:center;width:1.65rem;height:1.65rem;border-radius:999px;border:1px solid var(--line)}.approval-item.is-done{color:var(--ink)}.approval-item.is-done span{border-color:rgba(61,111,98,.32);background:rgba(61,111,98,.12);color:var(--accent-dark)}.insight-panel{display:grid;align-content:start;gap:.65rem;background:linear-gradient(135deg,rgba(61,111,98,.1),rgba(154,107,47,.08)),rgba(255,255,255,.78)}.insight-panel svg{width:1.4rem;height:1.4rem;color:var(--accent-dark)}.insight-panel p{margin:0;color:var(--muted);line-height:1.5}.bg-white{background-color:var(--surface)}.bg-mist,.bg-mist\/30,.bg-mist\/40,.bg-mist\/50,.hover\:bg-mist:hover,.hover\:bg-mist\/50:hover{background-color:color-mix(in oklch,var(--bg-3) 78%,transparent)}.bg-ink{background-color:var(--accent)}.border-line{border-color:var(--line)}.text-ink{color:var(--ink)}.text-moss{color:var(--muted)}.text-white{color:oklch(15% .018 250)}.shadow-panel{box-shadow:var(--shadow)}.focus-ring{transition:background .15s ease,border-color .15s ease,box-shadow .15s ease,color .15s ease,transform .15s ease}.focus-ring:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in oklch,var(--accent) 78%,white);outline-offset:2px}.focus-ring:hover,a.focus-ring:hover,button:hover{border-color:var(--accent)}a.focus-ring:active,button:active{transform:translateY(1px)}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{border-color:var(--line);border-radius:var(--r-1);background-color:color-mix(in oklch,var(--bg-3) 72%,transparent);color:var(--ink);box-shadow:none}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--subtle)}input::placeholder,textarea::placeholder{color:var(--subtle)}input:not([type=checkbox]):not([type=radio]):not([type=hidden]):focus,select:focus,textarea:focus{border-color:var(--accent);background-color:var(--surface);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 20%,transparent)}.detail-job span,.detail-summary span,.job-card-footer span,.job-card-header span,.metric-item span,.mono,code,pre{font-family:var(--mono)}.rounded,.rounded-lg,.rounded-md{border-radius:var(--r-1)}.grid.gap-4.rounded-lg.border.border-line.bg-white,.grid.gap-4.rounded-lg.border.border-line.bg-white.p-5,.pm-panel,.rounded-lg.border.border-line.bg-white,.rounded-lg.border.border-line.bg-white.p-5{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-2);box-shadow:var(--shadow)}.pm-row,.rounded-md.border.border-line.bg-mist\/30,.rounded-md.border.border-line.bg-mist\/40,.rounded-md.border.border-line.bg-mist\/50{background:color-mix(in oklch,var(--bg-3) 70%,transparent);border-color:var(--line);box-shadow:none}.pm-row:hover,.proj-row:hover,a.pm-row:hover{background:color-mix(in oklch,var(--bg-3) 88%,var(--accent-bg))}.eyebrow,.panel-title small,.pm-tagline,.section-heading,.text-xs.font-bold.uppercase,.text-xs.font-semibold.uppercase{font-family:var(--mono);letter-spacing:.08em}.brand-block h1,.detail-title h1,.ff-home h1,.workspace-header h2{font-family:var(--hand);font-weight:800}.ff-home h1{font-size:1.45rem;line-height:1.15;letter-spacing:-.01em;text-wrap:balance}.ff-home h2,.panel-title strong{font-size:1.08rem;font-weight:700}.pm-metrics{align-self:stretch}.pm-stat{min-height:5rem;align-content:center;background:var(--bg-2);border-color:var(--line)}.pm-stat svg{width:1rem;height:1rem}.pm-stat span:nth-child(2){color:var(--accent);font-family:var(--mono);font-size:1.2rem}.factory-shell{background:var(--bg)}.factory-sidebar{border-right-color:var(--line);background:color-mix(in oklch,var(--bg) 82%,transparent)}.brand-block{border-bottom:1px solid var(--line)}.brand-mark,.icon-box,.template-drag-handle{border-color:var(--line);background:var(--bg-3);color:var(--accent);box-shadow:none}.brand-return,.composer-panel,.detail-job,.detail-panel,.detail-review-column,.detail-summary,.detail-title,.job-card,.provider-grid,.review-lane,.review-note,.sidebar-section,.state-stack{border-color:var(--line);border-radius:var(--r-2);background:var(--surface);box-shadow:var(--shadow)}.composer-panel,.detail-panel,.sidebar-section{padding:.85rem}.approval-item,.brand-return,.metric-item,.project-list-item,.provider-balance-row,.template-card{background:color-mix(in oklch,var(--bg-3) 62%,transparent);border-color:var(--line)}.project-list-item.is-active,.project-list-item:hover{border-color:var(--accent);background:var(--accent-bg);color:var(--ink)}.btn,.focus-ring.inline-flex,.focus-ring.rounded,.focus-ring.rounded-md,.ghost-action,.primary-action,.text-action{border-radius:var(--r-1)}.bg-ink.px-3,.bg-ink.px-4,.focus-ring.bg-ink,.primary-action,a.bg-ink,button.bg-ink{border:1px solid var(--accent);background:var(--accent);color:var(--ink);box-shadow:0 8px 18px oklch(20% .04 260/.08)}.primary-action:hover,a.bg-ink:hover,button.bg-ink:hover{background:color-mix(in oklch,var(--accent) 86%,white)}.focus-ring.border.border-line,.ghost-action,a.border.border-line,button.border.border-line{background:var(--bg-2);border-color:var(--line);color:var(--ink)}.text-action{color:var(--accent)}.metric-strip,.provider-grid.equal-grid{background:var(--line);border-color:var(--line);border-radius:var(--r-2)}.provider-card{background:var(--surface);color:var(--ink)}.provider-card.is-selected,.provider-card:hover{background:linear-gradient(180deg,color-mix(in oklch,var(--provider-accent) 16%,var(--surface)),var(--surface) 68%),var(--surface)}.provider-card.is-selected{box-shadow:inset 0 0 0 2px color-mix(in oklch,var(--provider-accent) 70%,var(--line))}.effort-pill,.provider-card-top span,.provider-chips span,.tag,[class*=bg-emerald-100],[class*=bg-indigo-100],[class*=bg-slate-100]{border:1px solid var(--line);border-radius:999px;background:var(--bg-3);color:var(--muted);font-family:var(--mono)}.detail-job p,.insight-panel p,.job-card p,.provider-summary,.review-note p,.state-row small,.template-card small{color:var(--muted)}.drop-zone{border-color:var(--line-strong);background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--line) 42%,transparent) 0 1px,transparent 1px 9px),var(--bg-2)}.drop-zone.is-armed{border-color:var(--accent);background:var(--accent-bg)}.detail-review-column header,.review-lane header,.state-row{border-color:var(--line)}.approval-item span,.detail-review-column header b,.job-actions button,.review-lane header b,.state-row b{background:var(--bg-3);color:var(--ink);border-color:var(--line)}.approval-item.is-done span,.state-row[data-state=approved] b{background:color-mix(in oklch,var(--accent-bg) 82%,transparent);color:var(--accent)}.field-error,.state-row[data-state=changes] b{background:var(--rust-bg);color:var(--rust)}.detail-review-matrix,.review-board{gap:.85rem}.empty-lane{border-color:var(--line);background:repeating-linear-gradient(135deg,color-mix(in oklch,var(--line) 42%,transparent) 0 1px,transparent 1px 9px);color:var(--muted)}.detail-summary{background:var(--line)}.detail-summary div{background:var(--surface)}.insight-panel{background:radial-gradient(circle at top right,color-mix(in oklch,var(--accent-bg) 86%,transparent),transparent 18rem),var(--surface)}.bg-amber-50{background-color:var(--amber-bg)}.text-amber-700,.text-amber-800,.text-amber-900{color:var(--amber)}.border-amber-200{border-color:color-mix(in oklch,var(--amber) 62%,var(--line))}.bg-red-50{background-color:var(--rust-bg)}.text-red-700,.text-red-800{color:var(--rust)}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@keyframes riseIn{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translateY(0)}}@media (max-width:1180px){.detail-grid,.detail-hero,.factory-shell,.workspace-grid{grid-template-columns:1fr}.factory-sidebar{border-right:0;border-bottom:1px solid var(--line)}.create-project-panel{margin-top:0}.detail-review-matrix,.review-board{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.factory-main,.factory-sidebar,.project-detail-shell{padding:.75rem}.detail-topbar,.workspace-header{display:grid}.detail-actions,.workspace-actions{justify-content:stretch}.detail-actions>*,.workspace-actions>*{flex:1 1 12rem}.composer-grid,.detail-review-matrix,.equal-grid,.metric-strip,.review-board{grid-template-columns:1fr}.provider-card{min-height:auto}.detail-title h1{max-width:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}@media (pointer:coarse){[role=button],a.focus-ring,button,input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,summary,textarea{min-height:2.75rem}}@media (max-width:767px){input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea{font-size:16px!important}}@media (pointer:coarse) and (max-height:600px){.ff-chat-page.ff-chat-page{height:100dvh;min-height:0;overflow:hidden;padding:.5rem .5rem max(.5rem,env(safe-area-inset-bottom))}.ff-chat-page .ff-chat-page-header{padding:.5rem}.ff-chat-page .ff-chat-page-context{display:none}.ff-chat-page .ff-chat-page-body{margin-top:.5rem}.ff-chat-page .ff-chat-desktop-title,.ff-chat-page .ff-chat-session-sidebar{display:none}.ff-chat-page .ff-chat-mobile-title,.ff-chat-page .ff-chat-session-select{display:block}.ff-chat-page .ff-chat-mobile-new{display:inline-flex}.ff-project-mobile-nav.ff-project-mobile-nav{display:grid}}@media (pointer:coarse) and (max-width:767px){.ff-chat-page .ff-chat-page-header{padding:.5rem .625rem}.ff-chat-page .ff-chat-page-context{margin-top:.375rem}.ff-chat-page .ff-chat-page-context p{display:none}}.ff-topbar{flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:.85rem 1.1rem;border:1px solid var(--line);border-radius:var(--r-2);background:color-mix(in oklch,var(--surface) 84%,transparent);box-shadow:var(--shadow)}.ff-brand,.ff-topbar{display:flex;align-items:center}.ff-brand{gap:.85rem;min-width:0}.ff-brand-mark{display:grid;place-items:center;flex:none;width:2.6rem;height:2.6rem;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg-3);color:var(--accent)}.ff-brand-mark svg{width:1.4rem;height:1.4rem}.ff-eyebrow{font-family:var(--mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.ff-topbar-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.ff-prov-chip{display:inline-flex;align-items:center;gap:.5rem;padding:.4rem .75rem;border:1px solid var(--line);border-radius:999px;background:var(--bg-2);font-family:var(--mono);font-size:.74rem;color:var(--muted)}.ff-dot{width:.5rem;height:.5rem;border-radius:999px;flex:none}.ff-dot-ok{background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklch,var(--accent) 22%,transparent)}.ff-dot-warn{background:var(--amber);box-shadow:0 0 0 3px color-mix(in oklch,var(--amber) 20%,transparent)}.ff-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem;margin-bottom:1rem}.ff-count{font-family:var(--mono);font-size:.82rem;color:var(--accent)}.ff-proj-grid{display:grid;gap:.7rem}@media (min-width:1024px){.ff-proj-grid.is-two{grid-template-columns:1fr 1fr}}.ff-proj{display:flex;align-items:center;justify-content:space-between;gap:.9rem;padding:.85rem .95rem;border:1px solid var(--line);border-radius:var(--r-1);background:color-mix(in oklch,var(--bg-3) 60%,transparent)}.ff-proj:hover{border-color:var(--accent);background:color-mix(in oklch,var(--bg-3) 84%,var(--accent-bg))}.ff-proj-main{display:grid;gap:.22rem;min-width:0}.ff-proj-name{font-weight:700;color:var(--ink);font-size:.95rem}.ff-proj-name,.ff-proj-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-proj-sub{display:inline-flex;align-items:center;gap:.4rem;font-family:var(--mono);font-size:.73rem;color:var(--muted)}.ff-proj-sub svg{flex:none}.ff-proj-url{font-size:.73rem;color:var(--subtle);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-proj-meta{flex:none;display:inline-flex;align-items:center;gap:.55rem;font-family:var(--mono);font-size:.72rem;color:var(--muted)}.ff-proj-meta svg{color:var(--subtle)}.ff-prov-grid{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fill,minmax(15.5rem,1fr))}.ff-prov-card{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.8rem .9rem;border:1px solid var(--line);border-radius:var(--r-1);background:color-mix(in oklch,var(--bg-3) 58%,transparent)}.ff-prov-info{display:grid;gap:.15rem;min-width:0}.ff-prov-name{font-weight:700;color:var(--ink);font-size:.9rem}.ff-prov-model{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-prov-model,.ff-prov-state{font-family:var(--mono);font-size:.71rem;color:var(--muted)}.ff-prov-state{flex:none;display:inline-flex;align-items:center;gap:.4rem}.ff-disclosure{display:grid}.ff-disclosure>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:.8rem .95rem;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg-2);color:var(--ink);font-weight:600;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ff-disclosure>summary::-webkit-details-marker{display:none}.ff-disclosure>summary::marker{content:""}.ff-disclosure>summary:hover{border-color:var(--accent)}.ff-disclosure>summary:focus-visible{outline:2px solid color-mix(in oklch,var(--accent) 78%,white);outline-offset:2px}.ff-chevron{color:var(--muted);transition:transform .16s ease}.ff-disclosure[open]>summary .ff-chevron{transform:rotate(180deg)}.ff-chat-tools>summary{list-style:none;display:inline-flex;align-items:center;gap:.75rem;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:.72rem;color:var(--muted)}.ff-chat-tools>summary::-webkit-details-marker{display:none}.ff-chat-tools>summary::marker{content:""}.ff-chat-tools>summary:hover{color:var(--ink)}.ff-chat-tools-toggle{display:inline-flex;align-items:center;gap:.2rem;font-family:var(--mono);letter-spacing:.04em}.ff-chat-tools[open] .ff-chevron{transform:rotate(180deg)}.ff-working{display:inline-flex;align-items:center;gap:.5rem;font-size:.8rem}.ff-working,.ff-working svg{color:var(--accent)}.ff-proj-filter{display:flex;align-items:center;gap:.5rem;margin-bottom:.9rem;padding:0 .65rem;border:1px solid var(--line);border-radius:var(--r-1);background:color-mix(in oklch,var(--bg-3) 55%,transparent)}.ff-proj-filter:focus-within{border-color:var(--accent)}.ff-proj-filter input{border:0;background:transparent;padding:.55rem 0}.ff-proj-filter input:focus{background:transparent;box-shadow:none;outline:none}.ff-projects-head{align-items:center}.ff-folder-create,.ff-folder-current,.ff-folder-error,.ff-folder-manage,.ff-folder-project-main,.ff-folder-project-organize,.ff-projects-actions{display:flex;align-items:center}.ff-projects-actions{gap:.75rem}.ff-repo-clone-link{display:inline-flex;align-items:center;gap:.45rem;min-height:2.15rem;padding:0 .7rem;border:1px solid color-mix(in oklch,var(--accent) 64%,var(--line));border-radius:var(--r-1);background:var(--accent-bg);color:var(--accent);font-size:.78rem;font-weight:700;font-family:inherit;text-decoration:none;cursor:pointer}.ff-repo-clone-link:hover{border-color:var(--accent);background:color-mix(in oklch,var(--accent-bg) 78%,var(--bg-2));color:var(--accent-dark)}.ff-repo-browser{scroll-margin-top:1rem}.ff-folder-manage{gap:.45rem;min-height:2.15rem;padding:0 .7rem;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg-2);color:var(--muted);font-size:.78rem;font-weight:700;cursor:pointer}.ff-folder-manage.is-active,.ff-folder-manage:hover{border-color:var(--line-strong);color:var(--ink)}.ff-folder-manage.is-active{background:var(--accent-bg);color:var(--accent)}.ff-folder-create{gap:.55rem;margin:0 0 .9rem;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--r-1);background:color-mix(in oklch,var(--bg-3) 68%,transparent);color:var(--muted)}.ff-folder-create input{min-width:0;flex:1;height:2rem;padding:0 .55rem;border:1px solid var(--line);border-radius:6px;background:var(--bg-2);color:var(--ink);font-size:.82rem}.ff-folder-create button{display:inline-flex;align-items:center;gap:.4rem;min-height:2rem;padding:0 .65rem;border:1px solid var(--line-strong);border-radius:6px;background:var(--accent-bg);color:var(--accent);font-size:.76rem;font-weight:750;cursor:pointer}.ff-folder-create button:disabled{cursor:not-allowed;opacity:.5}.ff-folder-error{justify-content:space-between;gap:.75rem;margin-bottom:.9rem;padding:.6rem .7rem;border:1px solid color-mix(in oklch,var(--rust) 50%,var(--line));border-radius:var(--r-1);background:var(--rust-bg);color:oklch(88% .07 25);font-size:.78rem}.ff-folder-error button{flex:none;padding:.2rem;border:0;background:transparent;cursor:pointer}.ff-folder-browser{display:grid;grid-template-columns:minmax(14.5rem,.72fr) minmax(0,1.7fr);min-height:23rem;overflow:hidden;border:1px solid var(--line);border-radius:var(--r-1);background:var(--bg-2)}.ff-folder-list{display:grid;align-content:start;gap:.25rem;min-width:0;padding:.65rem;border-right:1px solid var(--line);background:color-mix(in oklch,var(--bg-3) 62%,var(--bg-2))}.ff-folder-entry{min-width:0;border:1px solid transparent;border-radius:6px;transition:border-color .16s ease-out,background .16s ease-out}.ff-folder-entry.is-drop-target{border-color:var(--accent);background:color-mix(in oklch,var(--accent-bg) 72%,transparent)}.ff-folder-entry-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;min-width:0}.ff-folder-button{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:.55rem;width:100%;min-height:2.45rem;padding:0 .55rem;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--muted);text-align:left;cursor:pointer}.ff-folder-button>span{min-width:0;overflow:hidden;color:var(--ink);font-size:.84rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.ff-folder-button>b{min-width:1.35rem;color:var(--subtle);font-family:var(--mono);font-size:.68rem;font-weight:500;text-align:right}.ff-folder-button:hover{background:color-mix(in oklch,var(--bg-2) 76%,transparent);color:var(--ink)}.ff-folder-button.is-active{background:var(--accent-bg);color:var(--accent)}.ff-folder-button.is-active>b,.ff-folder-button.is-active>span{color:var(--accent)}.ff-folder-chevron{color:var(--subtle)}.ff-folder-entry-actions{display:inline-flex;gap:.1rem;padding-right:.3rem}.ff-folder-entry-actions button,.ff-folder-rename button{display:grid;place-items:center;width:1.8rem;height:1.8rem;padding:0;border:0;border-radius:5px;background:transparent;color:var(--subtle);cursor:pointer}.ff-folder-entry-actions button:hover,.ff-folder-rename button:hover{background:var(--bg-2);color:var(--ink)}.ff-folder-rename{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:.2rem;min-height:2.45rem;padding:0 .3rem}.ff-folder-rename input{min-width:0;height:1.9rem;padding:0 .45rem;border:1px solid var(--accent);border-radius:5px;background:var(--bg-2);color:var(--ink);font-size:.8rem}.ff-folder-delete-confirm{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;padding:.35rem}.ff-folder-delete-confirm button{display:inline-flex;align-items:center;justify-content:center;gap:.3rem;min-height:1.9rem;padding:0 .35rem;border:1px solid var(--line);border-radius:5px;background:var(--bg-2);color:var(--muted);font-size:.69rem;font-weight:700;cursor:pointer}.ff-folder-delete-confirm button.is-danger{border-color:color-mix(in oklch,var(--rust) 50%,var(--line));background:var(--rust-bg);color:oklch(88% .07 25)}.ff-folder-content{min-width:0;background:color-mix(in oklch,var(--bg-2) 92%,var(--bg-3))}.ff-folder-content-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;min-height:3.35rem;padding:0 .9rem;border-bottom:1px solid var(--line)}.ff-folder-current{min-width:0;gap:.5rem;color:var(--accent)}.ff-folder-current strong{min-width:0;overflow:hidden;color:var(--ink);font-size:.88rem;text-overflow:ellipsis;white-space:nowrap}.ff-folder-content-count{color:var(--subtle);font-family:var(--mono);font-size:.7rem}.ff-folder-projects{display:grid}.ff-folder-project{display:flex;align-items:center;justify-content:space-between;gap:.85rem;min-width:0;min-height:4rem;padding:.65rem .9rem;border-bottom:1px solid var(--line);background:transparent;transition:background .16s ease-out}.ff-folder-project:last-child{border-bottom:0}a.ff-folder-project:hover{background:color-mix(in oklch,var(--accent-bg) 48%,transparent)}.ff-folder-project.is-busy{opacity:.58}.ff-folder-project.is-dragging{background:color-mix(in oklch,var(--accent-bg) 64%,transparent);opacity:.48}.ff-folder-project-main{min-width:0;flex:1;gap:.65rem}.ff-folder-drag{display:grid;place-items:center;flex:none;width:1.1rem;height:2rem;color:var(--subtle);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:color .16s ease-out}.ff-folder-drag:active{cursor:grabbing}.ff-folder-project:hover .ff-folder-drag{color:var(--muted)}.ff-folder-repo-icon{display:grid;place-items:center;flex:none;width:2rem;height:2rem;border:1px solid var(--line);border-radius:6px;background:var(--bg-3);color:var(--muted)}.ff-folder-project-copy{display:grid;gap:.16rem;min-width:0}.ff-folder-project-copy span,.ff-folder-project-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-folder-project-copy strong{color:var(--ink);font-size:.86rem;font-weight:700}.ff-folder-project-copy span{color:var(--subtle);font-family:var(--mono);font-size:.68rem}.ff-folder-project-meta{display:inline-flex;align-items:center;flex:none;gap:.45rem;color:var(--muted);font-family:var(--mono);font-size:.68rem}.ff-folder-project-organize{flex:none;gap:.4rem;color:var(--muted)}.ff-folder-project-organize select{width:min(13rem,26vw);height:2rem;padding:0 1.9rem 0 .5rem;border:1px solid var(--line);border-radius:6px;background-color:var(--bg-3);color:var(--ink);font-size:.72rem}.ff-folder-empty{margin:0;padding:2.5rem 1rem;color:var(--muted);font-size:.82rem;text-align:center}@media (max-width:760px){.ff-folder-browser{grid-template-columns:minmax(0,1fr)}.ff-folder-list{max-height:17rem;overflow-y:auto;border-right:0;border-bottom:1px solid var(--line)}.ff-folder-project{align-items:flex-start;min-height:4.5rem}.ff-folder-project.is-organizing{flex-direction:column}.ff-folder-project-organize,.ff-folder-project-organize select{width:100%}.ff-folder-project-meta{padding-top:.35rem}}@media (max-width:480px){.ff-projects-head{align-items:flex-start}.ff-projects-actions{width:100%;justify-content:space-between;flex-wrap:wrap}.ff-folder-create{display:grid;grid-template-columns:auto minmax(0,1fr)}.ff-folder-create button{grid-column:1/-1;justify-content:center}.ff-folder-project-meta{font-size:0}}.ff-sec-toggle{background:transparent;border:0;padding:0;cursor:pointer}.ff-sec-chevron{transition:transform .16s ease}.ff-sec-toggle:hover .truncate{color:var(--accent)}.marker\:font-semibold ::marker{font-weight:600}.marker\:text-moss ::marker{color:oklch(72% .018 260)}.marker\:font-semibold::marker{font-weight:600}.marker\:text-moss::marker{color:oklch(72% .018 260)}.first\:mt-0:first-child{margin-top:0}.last\:mb-0:last-child{margin-bottom:0}.last\:border-b-0:last-child{border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}.focus-within\:outline:focus-within{outline-style:solid}.focus-within\:outline-2:focus-within{outline-width:2px}.focus-within\:outline-offset-2:focus-within{outline-offset:2px}.focus-within\:outline-signal:focus-within{outline-color:oklch(91% .25 125)}.hover\:bg-amber-50:hover{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.hover\:bg-emerald-50:hover{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.hover\:bg-mist:hover{background-color:oklch(22% .014 255)}.hover\:bg-red-100:hover{--tw-bg-opacity:1;background-color:rgb(254 226 226/var(--tw-bg-opacity,1))}.hover\:bg-red-50:hover{--tw-bg-opacity:1;background-color:rgb(254 242 242/var(--tw-bg-opacity,1))}.hover\:bg-white\/70:hover{background-color:rgb(255 255 255/.7)}.hover\:text-ink:hover{color:oklch(96% .006 105)}.hover\:text-moss:hover{color:oklch(72% .018 260)}.hover\:text-red-700:hover{--tw-text-opacity:1;color:rgb(185 28 28/var(--tw-text-opacity,1))}.hover\:text-rose-600:hover{--tw-text-opacity:1;color:rgb(225 29 72/var(--tw-text-opacity,1))}.hover\:shadow-sm:hover{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.hover\:brightness-95:hover{--tw-brightness:brightness(.95);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-amber-600:focus{--tw-ring-opacity:1;--tw-ring-color:rgb(217 119 6/var(--tw-ring-opacity,1))}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.active\:translate-y-px:active{--tw-translate-y:1px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:640px){.sm\:w-96{width:24rem}.sm\:max-w-\[85\%\]{max-width:85%}.sm\:max-w-xs{max-width:20rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:gap-4{gap:1rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-4{padding-top:1rem;padding-bottom:1rem}}@media (min-width:768px){.md\:col-span-1{grid-column:span 1/span 1}.md\:col-span-2{grid-column:span 2/span 2}.md\:col-start-2{grid-column-start:2}.md\:col-start-3{grid-column-start:3}.md\:row-start-1{grid-row-start:1}.md\:mt-1{margin-top:.25rem}.md\:mt-4{margin-top:1rem}.md\:mt-5{margin-top:1.25rem}.md\:block{display:block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:grid{display:grid}.md\:hidden{display:none}.md\:h-10{height:2.5rem}.md\:h-3\.5{height:.875rem}.md\:h-6{height:1.5rem}.md\:h-\[clamp\(28rem\2c 70dvh\2c 34rem\)\]{height:clamp(28rem,70dvh,34rem)}.md\:h-auto{height:auto}.md\:max-h-none{max-height:none}.md\:min-h-0{min-height:0}.md\:min-h-dvh{min-height:100dvh}.md\:w-3\.5{width:.875rem}.md\:w-6{width:1.5rem}.md\:w-\[26rem\]{width:26rem}.md\:w-auto{width:auto}.md\:flex-none{flex:none}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[auto_minmax\(0\2c 1fr\)_auto\]{grid-template-columns:auto minmax(0,1fr) auto}.md\:gap-2{gap:.5rem}.md\:gap-3{gap:.75rem}.md\:gap-5{gap:1.25rem}.md\:overflow-visible{overflow:visible}.md\:p-0\.5{padding:.125rem}.md\:p-3{padding:.75rem}.md\:p-5{padding:1.25rem}.md\:px-1{padding-left:.25rem;padding-right:.25rem}.md\:px-3{padding-left:.75rem;padding-right:.75rem}.md\:px-4{padding-left:1rem;padding-right:1rem}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}.md\:px-6{padding-left:1.5rem;padding-right:1.5rem}.md\:py-3{padding-top:.75rem;padding-bottom:.75rem}.md\:py-5{padding-top:1.25rem;padding-bottom:1.25rem}.md\:py-6{padding-top:1.5rem;padding-bottom:1.5rem}.md\:pb-24{padding-bottom:6rem}.md\:text-2xl{font-size:1.5rem;line-height:2rem}.md\:text-3xl{font-size:1.875rem;line-height:2.25rem}.md\:text-sm{font-size:.875rem;line-height:1.25rem}.md\:text-xl{font-size:1.25rem;line-height:1.75rem}}@media (min-width:1024px){.lg\:inline{display:inline}.lg\:flex{display:flex}.lg\:inline-flex{display:inline-flex}.lg\:hidden{display:none}.lg\:h-\[calc\(200dvh-30rem\)\]{height:calc(200dvh - 30rem)}.lg\:h-auto{height:auto}.lg\:max-h-none{max-height:none}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-\[18rem_minmax\(0\2c 1fr\)\]{grid-template-columns:18rem minmax(0,1fr)}.lg\:grid-cols-\[320px_minmax\(0\2c 1fr\)\]{grid-template-columns:320px minmax(0,1fr)}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_22rem\]{grid-template-columns:minmax(0,1fr) 22rem}.lg\:grid-cols-\[minmax\(0\2c 20rem\)_minmax\(0\2c 1fr\)\]{grid-template-columns:minmax(0,20rem) minmax(0,1fr)}.lg\:p-1{padding:.25rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}.lg\:opacity-0{opacity:0}.lg\:focus-within\:opacity-100:focus-within{opacity:1}.group:hover .lg\:group-hover\:opacity-100{opacity:1}}@media (min-width:1280px){.xl\:w-56{width:14rem}.xl\:grid-cols-\[minmax\(0\2c 1fr\)_24rem\]{grid-template-columns:minmax(0,1fr) 24rem}}