.sidebar{width:260px;background:linear-gradient(180deg,#0f0f12,#09090b);border-right:1px solid rgba(255,255,255,.06);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100}.sidebar-brand{padding:1.5rem;display:flex;align-items:center;gap:.75rem;border-bottom:1px solid rgba(255,255,255,.06)}.brand-icon{color:#00d4ff}.sidebar-brand span{font-size:1.25rem;font-weight:700;background:linear-gradient(135deg,#fff,#a1a1aa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;letter-spacing:-.02em}.sidebar-collapse-btn{position:absolute;top:70px;right:-12px;width:24px;height:24px;background:#1e293b;border:1px solid rgba(255,255,255,.1);border-radius:50%;color:#a1a1aa;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.sidebar-collapse-btn:hover{background:#334155;color:#fff;border-color:#fff3}.sidebar.sidebar-collapsed{width:72px}.sidebar.sidebar-collapsed .sidebar-brand-text,.sidebar.sidebar-collapsed .nav-item span,.sidebar.sidebar-collapsed .nav-section-label,.sidebar.sidebar-collapsed .user-details,.sidebar.sidebar-collapsed .nav-item .external-link-icon{display:none}.sidebar.sidebar-collapsed .sidebar-brand{justify-content:center;padding:1.5rem .5rem}.sidebar.sidebar-collapsed .nav-item{justify-content:center;padding:.75rem}.sidebar.sidebar-collapsed .nav-section{padding:0 .5rem}.sidebar.sidebar-collapsed .user-card{justify-content:center}.sidebar.sidebar-collapsed .sidebar-footer{flex-direction:column;gap:.5rem;padding:.75rem .5rem}.sidebar.sidebar-collapsed .sidebar-footer .settings-btn,.sidebar.sidebar-collapsed .sidebar-footer .logout-btn{width:100%}.sidebar.sidebar-collapsed .sidebar-collapse-btn{right:-12px}.sidebar.sidebar-collapsed+.page-main,.sidebar.sidebar-collapsed~.page-main{margin-left:72px}.sidebar{transition:width .2s ease}@media(max-width:1024px){.sidebar-collapse-btn{display:none}}@media(max-width:768px){.sidebar-collapse-btn{display:none}}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-section{padding:0 .75rem;margin-bottom:1.5rem}.nav-section-label{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:#52525b;padding:.5rem .75rem;margin-bottom:.25rem}.nav-item{display:flex;align-items:center;gap:.75rem;padding:.625rem .75rem;border-radius:8px;color:#a1a1aa;text-decoration:none;font-size:.875rem;transition:all .15s ease;margin-bottom:2px}.nav-item:hover{background:#ffffff0a;color:#fff}.nav-item.active{background:#00d4ff1a;color:#00d4ff}.sidebar-footer{padding:1rem;border-top:1px solid rgba(255,255,255,.06);display:flex;align-items:center;gap:.75rem}.user-card{flex:1;min-width:0;display:flex;align-items:center;gap:.75rem}.user-avatar{width:36px;height:36px;border-radius:8px;background:linear-gradient(135deg,#00d4ff,#0ea5e9);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:#000}.user-details{display:flex;flex-direction:column;overflow:hidden}.user-name{font-size:.875rem;font-weight:500;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-role{font-size:.75rem;color:#71717a;text-transform:capitalize}.sidebar-footer .settings-btn,.sidebar-footer .logout-btn{flex-shrink:0;width:36px;height:36px;padding:0;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#71717a;cursor:pointer;transition:all .15s ease}.sidebar-footer .settings-btn:hover{background:#ffffff0d;color:#a1a1aa;border-color:#ffffff26}.sidebar-footer .logout-btn:hover{background:#ef44441a;border-color:#ef44444d;color:#ef4444}.page-main{flex:1;margin-left:260px;padding:2rem;min-height:100vh;transition:margin-left .2s ease}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem}.page-header h1{font-size:1.75rem;font-weight:600;color:#fff;margin-bottom:.25rem;letter-spacing:-.02em}.page-subtitle{color:#71717a;font-size:.9rem}.header-actions{display:flex;gap:.75rem}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#ffffff0d;color:#a1a1aa;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;text-decoration:none;transition:all .15s ease}.btn-secondary:hover{background:#ffffff14;color:#fff;border-color:#fff3}.btn-danger{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.card{background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.card-title{font-size:.9rem;font-weight:600;color:#fff}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:.875rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.06)}.data-table th{font-size:.75rem;font-weight:500;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.data-table td{font-size:.875rem;color:#e4e4e7}.data-table tbody tr{transition:background .15s ease}.data-table tbody tr:hover{background:#ffffff05}.form-label{display:block;font-size:.875rem;font-weight:500;color:#e4e4e7;margin-bottom:.5rem}.form-hint{font-size:.75rem;color:#71717a;font-weight:400;margin-left:.5rem}.form-input,.form-select,.form-textarea{width:100%;padding:.625rem .875rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;transition:all .15s ease}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.form-input::-moz-placeholder,.form-textarea::-moz-placeholder{color:#52525b}.form-input::placeholder,.form-textarea::placeholder{color:#52525b}.form-textarea{min-height:120px;resize:vertical;font-family:inherit}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.25rem .5rem;border-radius:4px;font-size:.7rem;font-weight:500}.badge-primary{background:#00d4ff26;color:#00d4ff}.badge-success{background:#22c55e26;color:#22c55e}.badge-warning{background:#fbbf2426;color:#fbbf24}.badge-danger{background:#ef444426;color:#ef4444}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#52525b;text-align:center}.loading-state svg,.empty-state svg{opacity:.5;margin-bottom:1rem}.spinner{width:24px;height:24px;border:2px solid rgba(255,255,255,.1);border-top-color:#00d4ff;border-radius:50%;animation:spin .8s linear infinite}@media(max-width:1024px){.sidebar{width:72px}.sidebar-brand span,.nav-item span,.nav-section-label,.user-details{display:none}.sidebar-brand{justify-content:center}.nav-item{justify-content:center;padding:.75rem}.user-card{justify-content:center}.page-main{margin-left:72px}}.design-session-page{margin-left:260px;min-height:100vh;background:linear-gradient(135deg,#0a0a0f,#12121a,#0a0a0f)}.design-session-page .design-session-main{padding:24px}.mobile-header{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:linear-gradient(180deg,#0f0f16fa,#0f0f16f2);border-bottom:1px solid rgba(255,255,255,.06);z-index:1000;align-items:center;padding:0 1rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-header .mobile-brand{display:flex;align-items:center;gap:.5rem;margin-left:auto;margin-right:auto;color:#fff;font-weight:600;font-size:1.1rem}.mobile-header .mobile-brand .brand-icon{color:#f59e0b}.mobile-menu-btn{background:transparent;border:none;color:#fff;padding:8px;cursor:pointer;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:background .2s}.mobile-menu-btn:hover{background:#ffffff1a}.mobile-overlay{display:none;position:fixed;inset:0;background:#0009;z-index:1001;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.mobile-close-btn{display:none;background:transparent;border:none;color:#fff9;padding:8px;cursor:pointer;border-radius:8px;margin-left:auto;transition:all .2s}.mobile-close-btn:hover{color:#fff;background:#ffffff1a}@media(max-width:768px){.mobile-header{display:flex}.mobile-overlay{display:block}.mobile-close-btn{display:flex}.sidebar{display:flex!important;position:fixed;top:0;left:0;bottom:0;width:260px;transform:translate(-100%);transition:transform .3s ease;z-index:1002}.sidebar.sidebar-open{transform:translate(0)}.page-main{margin-left:0;padding:1rem;padding-top:calc(56px + 1rem)}.page-header{flex-direction:column;gap:1rem}.sidebar-brand{display:flex;align-items:center}}@keyframes swarmWingFlapLeft{0%,to{transform:rotate(-10deg) rotate(-15deg) scaleY(1)}50%{transform:rotate(-10deg) rotate(-45deg) scaleY(.8)}}@keyframes swarmWingFlapRight{0%,to{transform:rotate(10deg) rotate(15deg) scaleY(1)}50%{transform:rotate(10deg) rotate(45deg) scaleY(.8)}}@keyframes swarmHover{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.swarm-spinner-container{animation:swarmHover .6s ease-in-out infinite;display:inline-block}.swarm-wing-left{transform-origin:65% 50%;animation:swarmWingFlapLeft .15s ease-in-out infinite}.swarm-wing-right{transform-origin:35% 50%;animation:swarmWingFlapRight .15s ease-in-out infinite}.brand-icon{display:inline-block;flex-shrink:0}@keyframes swarm-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.swarm-spin{animation:swarm-spin 1s linear infinite}@keyframes swarm-pulse{0%,to{opacity:1}50%{opacity:.5}}.swarm-pulse{animation:swarm-pulse 2s ease-in-out infinite}@keyframes swarm-blink{0%,to{opacity:1}50%{opacity:.3}}.swarm-blink{animation:swarm-blink 1s ease-in-out infinite}*,:before,:after{--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 / .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 / .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: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{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{margin:0;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{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{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,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.\!container{width:100%!important}.container{width:100%}@media(min-width:640px){.\!container{max-width:640px!important}.container{max-width:640px}}@media(min-width:768px){.\!container{max-width:768px!important}.container{max-width:768px}}@media(min-width:1024px){.\!container{max-width:1024px!important}.container{max-width:1024px}}@media(min-width:1280px){.\!container{max-width:1280px!important}.container{max-width:1280px}}@media(min-width:1536px){.\!container{max-width:1536px!important}.container{max-width:1536px}}.visible{visibility:visible}.invisible{visibility:hidden}.collapse{visibility:collapse}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{inset:0}.bottom-4{bottom:1rem}.left-0{left:0}.left-1\/2{left:50%}.left-2{left:.5rem}.left-3{left:.75rem}.right-0{right:0}.right-2{right:.5rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-4{top:1rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.-mx-2{margin-left:-.5rem;margin-right:-.5rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-6{margin-left:1.5rem}.mr-2{margin-right:.5rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-6{margin-top:1.5rem}.line-clamp-3{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.line-clamp-4{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.h-0\.5{height:.125rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-8{height:2rem}.h-full{height:100%}.h-screen{height:100vh}.max-h-32{max-height:8rem}.max-h-40{max-height:10rem}.max-h-48{max-height:12rem}.max-h-64{max-height:16rem}.max-h-80{max-height:20rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-16{width:4rem}.w-2{width:.5rem}.w-20{width:5rem}.w-24{width:6rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-56{width:14rem}.w-6{width:1.5rem}.w-8{width:2rem}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[160px\]{min-width:160px}.min-w-\[200px\]{min-width:200px}.min-w-\[80px\]{min-width:80px}.max-w-2xl{max-width:42rem}.max-w-\[200px\]{max-width:200px}.max-w-md{max-width:28rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(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}.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{resize:both}.list-decimal{list-style-type:decimal}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.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-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * 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-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * 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))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.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-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-l-2{border-left-width:2px}.border-t{border-top-width:1px}.border-blue-200{--tw-border-opacity: 1;border-color:rgb(191 219 254 / var(--tw-border-opacity, 1))}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-800{--tw-border-opacity: 1;border-color:rgb(30 64 175 / var(--tw-border-opacity, 1))}.border-emerald-200{--tw-border-opacity: 1;border-color:rgb(167 243 208 / var(--tw-border-opacity, 1))}.border-gray-200{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-400{--tw-border-opacity: 1;border-color:rgb(156 163 175 / var(--tw-border-opacity, 1))}.border-gray-500\/30{border-color:#6b72804d}.border-gray-600{--tw-border-opacity: 1;border-color:rgb(58 58 72 / var(--tw-border-opacity, 1))}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(42 42 54 / var(--tw-border-opacity, 1))}.border-gray-700\/50{border-color:#2a2a3680}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(26 26 36 / var(--tw-border-opacity, 1))}.border-gray-800\/50{border-color:#1a1a2480}.border-green-200{--tw-border-opacity: 1;border-color:rgb(187 247 208 / var(--tw-border-opacity, 1))}.border-purple-200{--tw-border-opacity: 1;border-color:rgb(233 213 255 / var(--tw-border-opacity, 1))}.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{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity, 1))}.border-red-500\/30{border-color:#ef44444d}.border-red-500\/50{border-color:#ef444480}.border-red-800{--tw-border-opacity: 1;border-color:rgb(153 27 27 / var(--tw-border-opacity, 1))}.border-red-800\/50{border-color:#991b1b80}.border-transparent{border-color:transparent}.border-yellow-200{--tw-border-opacity: 1;border-color:rgb(254 240 138 / var(--tw-border-opacity, 1))}.border-yellow-500\/30{border-color:#eab3084d}.border-yellow-700{--tw-border-opacity: 1;border-color:rgb(161 98 7 / var(--tw-border-opacity, 1))}.border-yellow-800{--tw-border-opacity: 1;border-color:rgb(133 77 14 / var(--tw-border-opacity, 1))}.border-t-blue-500{--tw-border-opacity: 1;border-top-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity, 1))}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-900\/20{background-color:#1e3a8a33}.bg-blue-950{--tw-bg-opacity: 1;background-color:rgb(23 37 84 / var(--tw-bg-opacity, 1))}.bg-cyan-900\/40{background-color:#164e6366}.bg-emerald-50{--tw-bg-opacity: 1;background-color:rgb(236 253 245 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-400{--tw-bg-opacity: 1;background-color:rgb(156 163 175 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-gray-500\/20{background-color:#6b728033}.bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(42 42 54 / var(--tw-bg-opacity, 1))}.bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(26 26 36 / var(--tw-bg-opacity, 1))}.bg-gray-800\/50{background-color:#1a1a2480}.bg-gray-900{--tw-bg-opacity: 1;background-color:rgb(17 17 24 / var(--tw-bg-opacity, 1))}.bg-gray-900\/50{background-color:#11111880}.bg-gray-950{--tw-bg-opacity: 1;background-color:rgb(10 10 15 / var(--tw-bg-opacity, 1))}.bg-green-100{--tw-bg-opacity: 1;background-color:rgb(220 252 231 / var(--tw-bg-opacity, 1))}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-green-50{--tw-bg-opacity: 1;background-color:rgb(240 253 244 / var(--tw-bg-opacity, 1))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/20{background-color:#22c55e33}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-green-900\/40{background-color:#14532d66}.bg-green-950{--tw-bg-opacity: 1;background-color:rgb(5 46 22 / var(--tw-bg-opacity, 1))}.bg-indigo-900\/40{background-color:#312e8166}.bg-orange-900\/40{background-color:#7c2d1266}.bg-pink-900\/40{background-color:#83184366}.bg-purple-50{--tw-bg-opacity: 1;background-color:rgb(250 245 255 / var(--tw-bg-opacity, 1))}.bg-purple-900\/40{background-color:#581c8766}.bg-red-100{--tw-bg-opacity: 1;background-color:rgb(254 226 226 / var(--tw-bg-opacity, 1))}.bg-red-200{--tw-bg-opacity: 1;background-color:rgb(254 202 202 / var(--tw-bg-opacity, 1))}.bg-red-400{--tw-bg-opacity: 1;background-color:rgb(248 113 113 / 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-500{--tw-bg-opacity: 1;background-color:rgb(239 68 68 / var(--tw-bg-opacity, 1))}.bg-red-500\/10{background-color:#ef44441a}.bg-red-500\/20{background-color:#ef444433}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-red-600\/30{background-color:#dc26264d}.bg-red-900{--tw-bg-opacity: 1;background-color:rgb(127 29 29 / var(--tw-bg-opacity, 1))}.bg-red-900\/30{background-color:#7f1d1d4d}.bg-red-900\/50{background-color:#7f1d1d80}.bg-red-950{--tw-bg-opacity: 1;background-color:rgb(69 10 10 / var(--tw-bg-opacity, 1))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-100{--tw-bg-opacity: 1;background-color:rgb(254 249 195 / var(--tw-bg-opacity, 1))}.bg-yellow-50{--tw-bg-opacity: 1;background-color:rgb(254 252 232 / var(--tw-bg-opacity, 1))}.bg-yellow-500{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/20{background-color:#eab30833}.bg-yellow-500\/30{background-color:#eab3084d}.bg-yellow-500\/40{background-color:#eab30866}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-yellow-900\/20{background-color:#713f1233}.bg-yellow-950{--tw-bg-opacity: 1;background-color:rgb(66 32 6 / var(--tw-bg-opacity, 1))}.bg-opacity-30{--tw-bg-opacity: .3}.bg-opacity-50{--tw-bg-opacity: .5}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.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}.px-6{padding-left:1.5rem;padding-right:1.5rem}.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-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pl-10{padding-left:2.5rem}.pl-8{padding-left:2rem}.pl-9{padding-left:2.25rem}.pr-10{padding-right:2.5rem}.pr-4{padding-right:1rem}.pr-8{padding-right:2rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-center{text-align:center}.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-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-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.text-amber-500{--tw-text-opacity: 1;color:rgb(245 158 11 / var(--tw-text-opacity, 1))}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-blue-700{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.text-cyan-300{--tw-text-opacity: 1;color:rgb(103 232 249 / var(--tw-text-opacity, 1))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity, 1))}.text-cyan-500{--tw-text-opacity: 1;color:rgb(0 212 255 / var(--tw-text-opacity, 1))}.text-emerald-700{--tw-text-opacity: 1;color:rgb(4 120 87 / var(--tw-text-opacity, 1))}.text-gray-100{--tw-text-opacity: 1;color:rgb(243 244 246 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(58 58 72 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(42 42 54 / var(--tw-text-opacity, 1))}.text-gray-900{--tw-text-opacity: 1;color:rgb(17 17 24 / var(--tw-text-opacity, 1))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity, 1))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-green-700{--tw-text-opacity: 1;color:rgb(21 128 61 / var(--tw-text-opacity, 1))}.text-green-800{--tw-text-opacity: 1;color:rgb(22 101 52 / var(--tw-text-opacity, 1))}.text-indigo-300{--tw-text-opacity: 1;color:rgb(165 180 252 / var(--tw-text-opacity, 1))}.text-orange-300{--tw-text-opacity: 1;color:rgb(253 186 116 / var(--tw-text-opacity, 1))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-pink-300{--tw-text-opacity: 1;color:rgb(249 168 212 / var(--tw-text-opacity, 1))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity, 1))}.text-purple-300{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity, 1))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity, 1))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity, 1))}.text-purple-600{--tw-text-opacity: 1;color:rgb(147 51 234 / var(--tw-text-opacity, 1))}.text-purple-700{--tw-text-opacity: 1;color:rgb(126 34 206 / var(--tw-text-opacity, 1))}.text-red-300{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / 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-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-200{--tw-text-opacity: 1;color:rgb(254 240 138 / var(--tw-text-opacity, 1))}.text-yellow-300{--tw-text-opacity: 1;color:rgb(253 224 71 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.text-yellow-700{--tw-text-opacity: 1;color:rgb(161 98 7 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.placeholder-gray-500::-moz-placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.placeholder-gray-500::placeholder{--tw-placeholder-opacity: 1;color:rgb(107 114 128 / var(--tw-placeholder-opacity, 1))}.opacity-0{opacity:0}.opacity-50{opacity:.5}.opacity-80{opacity:.8}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px 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-sm{--tw-shadow: 0 1px 2px 0 rgb(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)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -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)}.outline{outline-style:solid}.blur{--tw-blur: blur(8px);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)}.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-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,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-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;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-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:dark;color:#ffffffde;background-color:#0a0a0f;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-height:100vh;width:100%}#root{width:100%;min-height:100vh}a{font-weight:500;color:#00d4ff;text-decoration:inherit}a:hover{color:#33dfff}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#00d4ff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.build-confirm-modal{max-width:500px;padding:2rem}.build-confirm-modal h2{margin:0 0 .5rem;font-size:1.5rem}.modal-subtitle{color:#888;margin-bottom:1.5rem}.estimate-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:1.5rem}.estimate-item{text-align:center;padding:1rem;background:#00d4ff1a;border-radius:8px;border:1px solid rgba(0,212,255,.2)}.estimate-value{display:block;font-size:1.5rem;font-weight:700;color:#00d4ff}.estimate-label{font-size:.75rem;color:#888;text-transform:uppercase}.warning-box{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#ffa5001a;border:1px solid rgba(255,165,0,.3);border-radius:8px;margin-bottom:1.5rem}.warning-icon{font-size:1.25rem}.warning-box p{margin:0;font-size:.875rem;color:orange}.confirm-checkbox{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem;cursor:pointer}.confirm-checkbox input{width:18px;height:18px;accent-color:#00d4ff}.confirm-checkbox span{font-size:.875rem}.modal-actions{display:flex;justify-content:flex-end;gap:1rem}.build-progress-page .build-progress-main{padding:2rem}.build-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;margin-bottom:1.5rem}.build-content-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.progress-section{grid-column:1 / -1;padding:1.5rem}.build-progress-bar{height:24px;background:#ffffff1a;border-radius:12px;overflow:hidden;margin-bottom:1rem}.build-progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:12px;transition:width .5s ease}.progress-stats{display:flex;justify-content:space-between;color:#888;font-size:.875rem}.complete-banner{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-radius:8px;margin-top:1rem}.complete-banner.success{background:#00ff881a;border:1px solid rgba(0,255,136,.3);color:#0f8}.complete-banner.error{background:#ff44441a;border:1px solid rgba(255,68,68,.3);color:#f44}.logs-section,.tickets-section{padding:1.5rem;max-height:400px;overflow-y:auto}.logs-container{font-family:monospace;font-size:.875rem}.log-entry{padding:.5rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.logs-empty{color:#666;font-style:italic}.tickets-list{display:flex;flex-direction:column;gap:.5rem}.ticket-item{display:flex;justify-content:space-between;padding:.75rem;background:#ffffff0d;border-radius:6px}.ticket-title{font-weight:500}.ticket-type{font-size:.75rem;color:#888;text-transform:uppercase}.hover\:bg-blue-100:hover{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(58 58 72 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700:hover{--tw-bg-opacity: 1;background-color:rgb(42 42 54 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-700\/50:hover{background-color:#2a2a3680}.hover\:bg-gray-800\/30:hover{background-color:#1a1a244d}.hover\:bg-gray-800\/70:hover{background-color:#1a1a24b3}.hover\:bg-gray-900:hover{--tw-bg-opacity: 1;background-color:rgb(17 17 24 / var(--tw-bg-opacity, 1))}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-red-950:hover{--tw-bg-opacity: 1;background-color:rgb(69 10 10 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-500:hover{--tw-bg-opacity: 1;background-color:rgb(234 179 8 / var(--tw-bg-opacity, 1))}.hover\:bg-yellow-500\/30:hover{background-color:#eab3084d}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:bg-opacity-80:hover{--tw-bg-opacity: .8}.hover\:text-blue-300:hover{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.hover\:text-blue-700:hover{--tw-text-opacity: 1;color:rgb(29 78 216 / var(--tw-text-opacity, 1))}.hover\:text-blue-800:hover{--tw-text-opacity: 1;color:rgb(30 64 175 / var(--tw-text-opacity, 1))}.hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.hover\:text-gray-600:hover{--tw-text-opacity: 1;color:rgb(58 58 72 / var(--tw-text-opacity, 1))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(42 42 54 / var(--tw-text-opacity, 1))}.hover\:text-red-300:hover{--tw-text-opacity: 1;color:rgb(252 165 165 / var(--tw-text-opacity, 1))}.hover\:text-red-500:hover{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.hover\:text-red-700:hover{--tw-text-opacity: 1;color:rgb(185 28 28 / var(--tw-text-opacity, 1))}.hover\:text-white:hover{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.hover\:opacity-75:hover{opacity:.75}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-blue-500:focus{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.focus\:border-cyan-500:focus{--tw-border-opacity: 1;border-color:rgb(0 212 255 / var(--tw-border-opacity, 1))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--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)}.focus\:ring-blue-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus\:ring-cyan-500:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(0 212 255 / var(--tw-ring-opacity, 1))}.focus\:ring-yellow-600:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(202 138 4 / var(--tw-ring-opacity, 1))}.focus\:ring-offset-0:focus{--tw-ring-offset-width: 0px}.focus\:ring-offset-yellow-950:focus{--tw-ring-offset-color: #422006}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(prefers-color-scheme:dark){.dark\:border-gray-600{--tw-border-opacity: 1;border-color:rgb(58 58 72 / var(--tw-border-opacity, 1))}.dark\:border-gray-700{--tw-border-opacity: 1;border-color:rgb(42 42 54 / var(--tw-border-opacity, 1))}.dark\:bg-blue-900\/20{background-color:#1e3a8a33}.dark\:bg-blue-900\/30{background-color:#1e3a8a4d}.dark\:bg-gray-700{--tw-bg-opacity: 1;background-color:rgb(42 42 54 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-800{--tw-bg-opacity: 1;background-color:rgb(26 26 36 / var(--tw-bg-opacity, 1))}.dark\:bg-gray-900\/30{background-color:#1111184d}.dark\:bg-green-900\/30{background-color:#14532d4d}.dark\:bg-red-900\/20{background-color:#7f1d1d33}.dark\:bg-red-900\/30{background-color:#7f1d1d4d}.dark\:bg-yellow-900\/20{background-color:#713f1233}.dark\:bg-yellow-900\/30{background-color:#713f124d}.dark\:text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.dark\:text-gray-300{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}.dark\:text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.dark\:text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.dark\:text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.dark\:text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.dark\:text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.dark\:hover\:bg-blue-900\/30:hover{background-color:#1e3a8a4d}.dark\:hover\:bg-gray-600:hover{--tw-bg-opacity: 1;background-color:rgb(58 58 72 / var(--tw-bg-opacity, 1))}.dark\:hover\:text-blue-300:hover{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-200:hover{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.dark\:hover\:text-gray-300:hover{--tw-text-opacity: 1;color:rgb(209 213 219 / var(--tw-text-opacity, 1))}}.toast-notification{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:10px;min-width:320px;max-width:420px;box-shadow:0 10px 40px #0000004d;position:relative;overflow:hidden}.toast-notification:before{content:"";position:absolute;top:0;left:0;width:100%;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.5),transparent);animation:shimmer 2s infinite}.toast-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:#ffffff26}.toast-icon svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.toast-content{flex:1;min-width:0}.toast-title{font-size:14px;font-weight:600;margin-bottom:2px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.toast-message{font-size:13px;color:#ffffffe6;line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.toast-dismiss{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fffc;font-size:18px;font-weight:300;cursor:pointer;transition:all .2s;margin-left:8px}.toast-dismiss:hover{background:#fff3;color:#fff;transform:scale(1.1)}.animate-enter{animation:slideInRight .3s ease-out}.animate-leave{animation:slideOutRight .3s ease-in;opacity:0}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideOutRight{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:0}}.toast-progress{position:absolute;bottom:0;left:0;height:3px;background:#ffffff4d;border-radius:0 0 10px 10px;transition:width .3s linear}.toast-notification.toast-spec{background:linear-gradient(135deg,#8b5cf6,#7c3aed);border:1px solid #7c3aed}.toast-notification.toast-build{background:linear-gradient(135deg,#3b82f6,#2563eb);border:1px solid #2563eb}.toast-notification.toast-ticket{background:linear-gradient(135deg,#10b981,#059669);border:1px solid #059669}.toast-notification.toast-agent{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #d97706}.toast-notification.toast-success{background:linear-gradient(135deg,#22c55e,#16a34a);border:1px solid #16a34a}.toast-notification.toast-error{background:linear-gradient(135deg,#ef4444,#dc2626);border:1px solid #dc2626}.toast-notification.toast-warning{background:linear-gradient(135deg,#f59e0b,#d97706);border:1px solid #d97706}.toast-notification.toast-info{background:linear-gradient(135deg,#3b82f6,#2563eb);border:1px solid #2563eb}.toast-notification.compact{min-width:280px;padding:10px 12px}.toast-notification.compact .toast-icon{width:24px;height:24px}.toast-notification.compact .toast-title{font-size:13px}.toast-notification.compact .toast-message{font-size:12px}@media(prefers-color-scheme:light){.toast-notification{box-shadow:0 10px 40px #00000026}}@media(max-width:480px){.toast-notification{min-width:calc(100vw - 32px);max-width:calc(100vw - 32px)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.toast-notification.important{animation:pulse 2s infinite}.Toaster>div{margin-bottom:8px!important}.settings-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .15s ease}.settings-modal{background:var(--bg-secondary, #1a1a2e);border:1px solid var(--border-color, #2d2d4a);border-radius:12px;width:90%;max-width:720px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .2s ease;box-shadow:0 20px 40px #0006}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;border-bottom:1px solid var(--border-color, #2d2d4a)}.settings-header h2{margin:0;font-size:1.125rem;font-weight:600}.settings-close{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .15s ease}.settings-close:hover{background:var(--bg-hover, #252540);color:var(--text-primary, #fff)}.settings-body{display:flex;flex:1;overflow:hidden}.settings-sidebar{width:160px;padding:.75rem;border-right:1px solid var(--border-color, #2d2d4a);display:flex;flex-direction:column;gap:.25rem}.settings-tab{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;background:none;border:none;border-radius:6px;color:var(--text-secondary, #888);font-size:.875rem;cursor:pointer;transition:all .15s ease;text-align:left}.settings-tab:hover{background:var(--bg-hover, #252540);color:var(--text-primary, #fff)}.settings-tab.active{background:var(--primary-color, #6366f1);color:#fff}.settings-content{flex:1;padding:1.25rem;overflow-y:auto}.section-header{margin-bottom:1.25rem}.section-header h3{margin:0 0 .5rem;font-size:1rem;font-weight:600}.section-description{margin:0;color:var(--text-secondary, #888);font-size:.875rem}.settings-loading,.settings-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;padding:2rem;color:var(--text-secondary, #888)}.settings-placeholder{text-align:center;color:var(--text-secondary, #888);padding:2rem}.providers-list{display:flex;flex-direction:column;gap:.5rem}.provider-row{border:1px solid var(--border-color, #2d2d4a);border-radius:8px;overflow:hidden;transition:border-color .15s ease}.provider-row.configured{border-color:var(--success-color, #22c55e)}.provider-row.expanded{border-color:var(--primary-color, #6366f1)}.provider-header{display:flex;align-items:center;justify-content:space-between;width:100%;padding:.875rem 1rem;background:none;border:none;color:var(--text-primary, #fff);cursor:pointer;transition:background .15s ease}.provider-header:hover{background:var(--bg-hover, #252540)}.provider-info{display:flex;flex-direction:column;align-items:flex-start;gap:.25rem}.provider-name{font-weight:600;font-size:.9375rem}.provider-status{display:flex;align-items:center;gap:.375rem;font-size:.75rem;color:var(--text-secondary, #888)}.status-icon.success{color:var(--success-color, #22c55e)}.status-unconfigured{color:var(--text-muted, #666)}.provider-details{padding:1rem;border-top:1px solid var(--border-color, #2d2d4a);background:var(--bg-tertiary, #12121f)}.provider-description{margin:0 0 .75rem;font-size:.875rem;color:var(--text-secondary, #888)}.provider-link{display:inline-flex;align-items:center;gap:.375rem;font-size:.875rem;color:var(--primary-color, #6366f1);text-decoration:none;margin-bottom:1rem}.provider-link:hover{text-decoration:underline}.existing-key{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:var(--bg-secondary, #1a1a2e);border-radius:6px;margin-bottom:.75rem}.key-label{font-size:.75rem;color:var(--text-secondary, #888)}.key-masked{font-family:monospace;font-size:.8125rem;color:var(--text-primary, #fff);flex:1}.key-input-group{display:flex;gap:.5rem}.input-wrapper{flex:1;position:relative}.key-input{width:100%;padding:.625rem 2.25rem .625rem .75rem;background:var(--bg-primary, #0f0f1a);border:1px solid var(--border-color, #2d2d4a);border-radius:6px;color:var(--text-primary, #fff);font-size:.875rem;font-family:monospace}.key-input:focus{outline:none;border-color:var(--primary-color, #6366f1)}.toggle-visibility{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:.25rem}.toggle-visibility:hover{color:var(--text-primary, #fff)}.btn-primary{display:inline-flex;align-items:center;gap:.375rem;padding:.625rem 1rem;background:var(--primary-color, #6366f1);border:none;border-radius:6px;color:#fff;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-primary:hover:not(:disabled){background:var(--primary-hover, #5558e3)}.btn-icon{background:none;border:none;color:var(--text-secondary, #888);cursor:pointer;padding:.25rem;border-radius:4px;transition:all .15s ease}.btn-icon:hover{background:var(--bg-hover, #252540);color:var(--text-primary, #fff)}.btn-icon.danger:hover{color:var(--error-color, #ef4444)}.save-result{margin-top:.75rem;padding:.5rem .75rem;border-radius:6px;font-size:.8125rem;animation:fadeIn .15s ease}.save-result.success{background:#22c55e26;color:var(--success-color, #22c55e)}.save-result.error{background:#ef444426;color:var(--error-color, #ef4444)}.config-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.375rem}.form-group label{font-size:.875rem;font-weight:500;color:var(--text-primary, #fff)}.form-select{padding:.625rem .75rem;background:var(--bg-primary, #0f0f1a);border:1px solid var(--border-color, #2d2d4a);border-radius:6px;color:var(--text-primary, #fff);font-size:.875rem;cursor:pointer}.form-select:focus{outline:none;border-color:var(--primary-color, #6366f1)}.no-providers-warning{padding:1.5rem;background:#eab3081a;border:1px solid rgba(234,179,8,.3);border-radius:8px;text-align:center}.no-providers-warning p{margin:0;color:var(--warning-color, #eab308);font-size:.875rem}.settings-btn{margin-top:auto;border:none;background:transparent;color:var(--text-secondary, #888);cursor:pointer;display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;width:100%;text-align:left;transition:all .2s ease}.settings-btn:hover{background:var(--bg-hover, #252540);color:var(--text-primary, #fff)}.loading-acknowledgment{position:fixed;inset:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .3s ease}.loading-card{background:linear-gradient(135deg,#111827f2,#1f2937f2);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:40px;max-width:480px;width:90%;box-shadow:0 20px 60px #00000080;animation:slideUp .4s ease}.loading-header{text-align:center;margin-bottom:32px}.loading-icon{width:80px;height:80px;margin:0 auto 20px;background:linear-gradient(135deg,#00d4ff33,#8a5cf633);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:pulse 2s ease-in-out infinite}.sparkle-icon{color:#00d4ff;animation:rotate 3s linear infinite}.loading-title{margin:0 0 8px;font-size:24px;font-weight:700;color:#fff;background:linear-gradient(135deg,#00d4ff,#8a5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.loading-project-name{margin:0;font-size:16px;color:#9ca3af;font-weight:500}.loading-stages{display:flex;flex-direction:column;gap:20px;margin-bottom:24px}.loading-stage{display:flex;align-items:center;gap:16px;padding:12px;border-radius:8px;transition:all .3s ease}.loading-stage.active{background:#00d4ff1a;border:1px solid rgba(0,212,255,.2)}.loading-stage.complete{opacity:.7}.loading-stage.pending{opacity:.4}.stage-indicator{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);transition:all .3s ease}.loading-stage.active .stage-indicator{background:#00d4ff33;border-color:#00d4ff}.loading-stage.complete .stage-indicator{background:#22c55e33;border-color:#22c55e}.check-icon{color:#22c55e}.spinner-icon{color:#00d4ff}.pending-dot{width:8px;height:8px;border-radius:50%;background:#6b7280}.stage-content{flex:1;display:flex;flex-direction:column;gap:4px}.stage-label{font-size:15px;font-weight:600;color:#fff}.stage-status{font-size:13px;color:#9ca3af}.loading-stage.active .stage-status{color:#00d4ff}.loading-stage.complete .stage-status{color:#22c55e}.loading-footer{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);text-align:center}.loading-success{margin:0;font-size:14px;font-weight:600;color:#22c55e;animation:fadeIn .5s ease}.loading-progress-bar{height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-top:24px}.loading-progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#8a5cf6);border-radius:2px;transition:width .5s ease}@keyframes pulse{0%,to{transform:scale(1);box-shadow:0 0 #00d4ffb3}50%{transform:scale(1.05);box-shadow:0 0 0 10px #00d4ff00}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.loading-card{padding:28px 20px}.loading-title{font-size:20px}.loading-icon{width:64px;height:64px}.stage-label{font-size:14px}}.contextual-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;min-height:60px}.contextual-loader--inline{flex-direction:row;min-height:auto;padding:8px}.contextual-loader--small{padding:8px;min-height:40px}.contextual-loader--small .contextual-loader__message{font-size:13px}.contextual-loader--small .contextual-loader__icon-wrapper{width:24px;height:24px}.contextual-loader--medium{padding:16px;min-height:60px}.contextual-loader--medium .contextual-loader__message{font-size:14px}.contextual-loader--medium .contextual-loader__icon-wrapper{width:32px;height:32px}.contextual-loader--large{padding:24px;min-height:80px}.contextual-loader--large .contextual-loader__message{font-size:16px}.contextual-loader--large .contextual-loader__icon-wrapper{width:40px;height:40px}.contextual-loader__content{display:flex;align-items:center;gap:12px;width:100%}.contextual-loader--inline .contextual-loader__content{justify-content:center}.contextual-loader__icon-wrapper{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,#3b82f61a,#8b5cf61a);flex-shrink:0}.contextual-loader__emoji{font-size:20px;line-height:1;animation:pulse 2s ease-in-out infinite}.contextual-loader--small .contextual-loader__emoji{font-size:16px}.contextual-loader--large .contextual-loader__emoji{font-size:24px}.contextual-loader__spinner{width:20px;height:20px;color:#3b82f6;animation:spin 1s linear infinite}.contextual-loader--small .contextual-loader__spinner{width:16px;height:16px}.contextual-loader--large .contextual-loader__spinner{width:24px;height:24px}.contextual-loader__message-wrapper{flex:1;min-width:0}.contextual-loader__message{color:#ffffffe6;font-weight:500;display:inline-block;animation:fadeIn .3s ease-in-out}.contextual-loader__dots{color:#ffffff80;margin-left:2px;display:inline-block;min-width:20px}.contextual-loader__progress{width:100%;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;margin-top:12px}.contextual-loader__progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:2px;transition:width .3s ease;box-shadow:0 0 10px #3b82f680}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.contextual-loader-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeInOverlay .2s ease-out}.contextual-loader-overlay .contextual-loader{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(59,130,246,.3);border-radius:12px;padding:24px 32px;box-shadow:0 10px 40px #0000004d,0 0 60px #3b82f61a}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.contextual-loader-inline{display:inline-flex;align-items:center;gap:8px}.contextual-loader-inline .contextual-loader__spinner{width:16px;height:16px}.contextual-loader-inline .contextual-loader__message{font-size:14px}.card-loading{position:relative;pointer-events:none;opacity:.7}.card-loading:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent,rgba(59,130,246,.1),transparent);animation:shimmer 2s infinite}@media(prefers-color-scheme:light){.contextual-loader__message{color:#1f2937}.contextual-loader__dots{color:#6b7280}.contextual-loader__icon-wrapper{background:linear-gradient(135deg,#3b82f626,#8b5cf626)}.contextual-loader-overlay{background:#ffffffe6}.contextual-loader-overlay .contextual-loader{background:#fff;border-color:#3b82f666}}@media(max-width:480px){.contextual-loader__message{font-size:13px}.contextual-loader-overlay .contextual-loader{padding:20px 24px;margin:16px}}.resume-draft-modal-overlay{position:fixed;inset:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.resume-draft-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #00000026;width:90%;max-width:500px;max-height:80vh;overflow:auto;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{padding:24px 24px 0;display:flex;align-items:center;gap:12px}.modal-icon{color:#3b82f6}.modal-header h2{margin:0;font-size:20px;font-weight:600;color:#111827}.modal-body{padding:16px 24px}.modal-description{color:#6b7280;margin:0 0 20px;font-size:14px}.draft-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:16px;margin-bottom:16px}.draft-field{display:flex;gap:8px;margin-bottom:12px;font-size:14px}.draft-field:last-child{margin-bottom:0}.field-label{color:#6b7280;font-weight:500;min-width:80px}.field-value{color:#111827;flex:1;display:flex;align-items:center;gap:6px}.field-value.description{font-style:italic;color:#374151;line-height:1.4}.draft-timestamp{display:flex;align-items:center;gap:6px;color:#9ca3af;font-size:12px}.modal-actions{padding:0 24px 24px;display:flex;gap:12px;justify-content:flex-end}.action-button{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none;display:flex;align-items:center;gap:8px}.action-button.primary{background:#3b82f6;color:#fff}.action-button.primary:hover{background:#2563eb;transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.action-button.secondary{background:#f3f4f6;color:#374151}.action-button.secondary:hover{background:#e5e7eb}@media(prefers-color-scheme:dark){.resume-draft-modal{background:#1f2937;color:#f9fafb}.modal-header h2{color:#f9fafb}.modal-description{color:#9ca3af}.draft-details{background:#111827;border-color:#374151}.field-label{color:#9ca3af}.field-value{color:#f3f4f6}.field-value.description{color:#d1d5db}.action-button.secondary{background:#374151;color:#f3f4f6}.action-button.secondary:hover{background:#4b5563}}.examples-modal-overlay{position:fixed;inset:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease-out}.examples-modal{background:#fff;border-radius:16px;box-shadow:0 25px 70px #0003;width:100%;max-width:800px;max-height:85vh;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.modal-header{padding:24px 28px;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:space-between}.header-content{display:flex;align-items:center;gap:12px}.modal-icon{color:#8b5cf6}.modal-header h2{margin:0;font-size:22px;font-weight:600;color:#111827}.close-button{background:none;border:none;padding:8px;border-radius:8px;cursor:pointer;color:#6b7280;transition:all .2s;display:flex;align-items:center;justify-content:center}.close-button:hover{background:#f3f4f6;color:#111827}.modal-body{padding:28px;overflow-y:auto;flex:1}.example-section{margin-bottom:32px}.example-section:last-child{margin-bottom:0}.example-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:#111827;display:flex;align-items:center;gap:8px}.example-description{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:20px;overflow-x:auto}.example-description pre{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;line-height:1.6;color:#374151;white-space:pre-wrap;word-wrap:break-word}.tips-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.tips-list li{display:flex;align-items:flex-start;gap:10px;font-size:14px;color:#374151;padding:12px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px}.tip-icon{color:#10b981;flex-shrink:0;margin-top:2px}.clarification-preview{display:flex;flex-direction:column;gap:10px}.preview-question{display:flex;align-items:flex-start;gap:12px;padding:12px 16px;background:#fef3c7;border:1px solid #fde68a;border-radius:8px;font-size:14px;line-height:1.5}.question-number{background:#f59e0b;color:#fff;min-width:24px;height:24px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;flex-shrink:0}.question-text{color:#78350f;flex:1}.modal-footer{padding:20px 28px;border-top:1px solid #e5e7eb;display:flex;justify-content:center}.got-it-button{padding:12px 32px;background:#8b5cf6;color:#fff;border:none;border-radius:8px;font-size:15px;font-weight:500;cursor:pointer;transition:all .2s}.got-it-button:hover{background:#7c3aed;transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}@media(max-width:640px){.examples-modal{max-height:95vh}.modal-body{padding:20px}.example-description{padding:16px}.example-description pre{font-size:13px}}@media(prefers-color-scheme:dark){.examples-modal{background:#1f2937;color:#f9fafb}.modal-header{border-bottom-color:#374151}.modal-header h2{color:#f9fafb}.close-button{color:#9ca3af}.close-button:hover{background:#374151;color:#f3f4f6}.example-section h3{color:#f3f4f6}.example-description{background:#111827;border-color:#374151}.example-description pre{color:#d1d5db}.tips-list li{background:#064e3b;border-color:#047857;color:#d1d5db}.preview-question{background:#78350f;border-color:#92400e}.question-text{color:#fef3c7}.modal-footer{border-top-color:#374151}}.progress-stepper{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:20px;margin-bottom:24px}.stepper-header{display:flex;align-items:center;gap:6px;margin-bottom:16px;color:#fff9;font-size:13px}.stepper-header svg{opacity:.6}.time-estimate{font-weight:500}.stepper-steps{display:flex;gap:0;margin-bottom:12px}.stepper-step{flex:1;display:flex;flex-direction:column;align-items:center;position:relative}.step-indicator{display:flex;align-items:center;justify-content:center;position:relative;width:100%;margin-bottom:8px}.step-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);transition:all .3s ease;z-index:2;position:relative}.step-icon.completed{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.stepper-step.current .step-icon{background:#667eea33;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a}.step-number{font-size:14px;font-weight:600;color:#fff9}.stepper-step.current .step-number{color:#667eea}.step-connector{position:absolute;top:16px;left:calc(50% + 16px);right:calc(-50% + 16px);height:2px;background:#ffffff1a;transition:background .3s ease;z-index:1}.step-connector.completed{background:linear-gradient(90deg,#667eea,#764ba2)}.step-label{font-size:12px;text-align:center;color:#fff6;font-weight:500;line-height:1.3;transition:color .3s ease;max-width:100px}.stepper-step.completed .step-label{color:#fff9}.stepper-step.current .step-label{color:#667eea;font-weight:600}.stepper-progress-bar{height:4px;background:#ffffff0d;border-radius:2px;overflow:hidden;margin-top:8px}.stepper-progress-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:2px}@media(max-width:768px){.progress-stepper{padding:16px}.step-icon{width:28px;height:28px}.step-label{font-size:11px;max-width:80px}.step-number,.stepper-header{font-size:12px}}@keyframes stepComplete{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}.step-icon.completed{animation:stepComplete .4s ease}.spec-preview{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:24px;height:-moz-fit-content;height:fit-content;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow-y:auto}.spec-preview.empty{display:flex;align-items:center;justify-content:center;min-height:400px}.preview-placeholder{text-align:center;color:#fff6}.preview-placeholder svg{opacity:.3;margin-bottom:16px}.preview-placeholder h3{font-size:18px;font-weight:600;margin-bottom:8px;color:#fff9}.preview-placeholder p{font-size:14px;max-width:250px;margin:0 auto}.preview-header{display:flex;align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.1)}.preview-header svg{color:#667eea}.preview-header h3{font-size:16px;font-weight:600;color:#ffffffe6;margin:0}.preview-content{display:flex;flex-direction:column;gap:20px}.preview-section{animation:fadeInUp .3s ease}.preview-section h4{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#ffffff80;margin-bottom:8px}.preview-value{font-size:14px;line-height:1.6;color:#fffc;margin:0;padding:12px;background:#ffffff08;border-radius:8px;border-left:3px solid #667eea}.component-list{display:flex;flex-direction:column;gap:8px}.component-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#667eea0d;border:1px solid rgba(102,126,234,.2);border-radius:8px;font-size:13px;color:#fffc;transition:all .2s ease}.component-item:hover{background:#667eea1a;border-color:#667eea4d}.component-item svg{color:#667eea;flex-shrink:0}.component-item .check{margin-left:auto;color:#10b981}.repo-preview{display:flex;align-items:center;gap:8px;padding:12px;background:#ffffff08;border-radius:8px;border-left:3px solid #f59e0b}.repo-preview .repo-name{font-size:14px;font-weight:500;color:#ffffffe6}.repo-preview .repo-lang{font-size:11px;padding:2px 8px;background:#f59e0b33;border-radius:4px;color:#fbbf24}.preview-hint{display:flex;align-items:center;gap:8px;padding:12px;background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:8px;margin-top:8px}.preview-hint svg{color:#3b82f6;flex-shrink:0}.preview-hint span{font-size:12px;color:#fff9;line-height:1.5}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.spec-preview::-webkit-scrollbar{width:6px}.spec-preview::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.spec-preview::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.spec-preview::-webkit-scrollbar-thumb:hover{background:#ffffff26}@media(max-width:1024px){.spec-preview{position:relative;top:0;max-height:none;margin-top:24px}}.quick-actions{background:#ffffff05;border:1px solid rgba(255,255,255,.1);border-radius:12px;margin-bottom:24px;overflow:hidden}.quick-actions.collapsed,.quick-actions.expanded{padding:0}.quick-actions-header{display:flex;align-items:center;gap:8px;width:100%;padding:16px 20px;background:transparent;border:none;cursor:pointer;transition:background .2s ease}.quick-actions-header:hover{background:#ffffff08}.quick-actions-header svg{color:#fbbf24}.quick-actions-header h4{font-size:14px;font-weight:600;color:#ffffffe6;margin:0}.quick-actions-header .template-count{font-size:12px;color:#ffffff80;font-weight:400}.quick-actions-header .expand-icon{margin-left:auto;color:#fff6;transition:transform .2s ease}.quick-actions-header .expand-icon.rotated{transform:rotate(180deg)}.quick-actions-content{padding:0 20px 20px}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:20px}.template-card{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:16px;text-align:left;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.template-card:hover{background:#ffffff0d;border-color:#fbbf2466;transform:translateY(-2px);box-shadow:0 4px 12px #fbbf241a}.template-card:active{transform:translateY(0)}.template-icon{font-size:24px;margin-bottom:8px;display:block}.template-content h5{font-size:13px;font-weight:600;color:#ffffffe6;margin:0 0 4px}.template-content p{font-size:11px;color:#ffffff80;margin:0;line-height:1.4}.template-sparkle{position:absolute;top:12px;right:12px;color:#fbbf24;opacity:0;transition:opacity .2s ease}.template-card:hover .template-sparkle{opacity:1}.recent-projects{border-top:1px solid rgba(255,255,255,.05);padding-top:16px}.section-label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px}.section-label svg{opacity:.6}.recent-projects-list{display:flex;flex-direction:column;gap:8px}.recent-project-btn{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-size:13px;color:#fffc;cursor:pointer;transition:all .2s ease;text-align:left}.recent-project-btn:hover{background:#ffffff0d;border-color:#667eea66;color:#ffffffe6}.recent-project-btn svg{color:#667eea;flex-shrink:0}.recent-project-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:768px){.template-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.template-card{padding:12px}.template-icon{font-size:20px;margin-bottom:6px}.template-content h5{font-size:12px}.template-content p{font-size:10px}}@keyframes templatePulse{0%,to{box-shadow:0 0 #fbbf2466}50%{box-shadow:0 0 0 4px #fbbf2400}}.template-card:focus{animation:templatePulse 1s ease-in-out}.form-group.has-error label{color:#ff6b6b}.input-field.input-error{border-color:#ff6b6b;background:#ff44440d}.input-field.input-error:focus{border-color:#ff6b6b;box-shadow:0 0 0 3px #ff444426}.field-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;min-height:1.25rem}.field-error{color:#ff6b6b;font-size:.85rem;display:flex;align-items:center;gap:.25rem}.field-error:before{content:"⚠";font-size:.75rem}.textarea-footer .field-error{flex:1}.auto-save-indicator{display:inline-flex;align-items:center;gap:.35rem;margin-left:auto;padding:.25rem .5rem;font-size:.75rem;font-weight:400;color:#666;background:#32cd321a;border-radius:4px;opacity:.7;transition:opacity .3s ease,background .3s ease}.auto-save-indicator.visible{opacity:1;background:#32cd3233;color:#32cd32}.auto-save-indicator svg{color:#32cd32}.form-header-title{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.form-header-title h2{margin:0}.char-count{transition:color .2s ease}.char-count-warning{color:#f0ad4e!important;font-weight:500}.char-count-danger{color:#ff6b6b!important;font-weight:600}.form-actions{display:flex;flex-direction:column;align-items:stretch;gap:.75rem}.start-over-link{background:transparent;border:none;color:#fff6;font-size:.85rem;cursor:pointer;padding:.5rem;transition:color .2s ease;text-decoration:underline;text-underline-offset:2px}.start-over-link:hover{color:#ffffffb3}.field-hint{color:#666;font-size:.85rem;font-weight:400;margin-bottom:.75rem;display:block}.repo-loading{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#1a1a2e;border-radius:6px;color:#888}.repo-loading .spin{animation:spin 1s linear infinite}.progressive-section{opacity:0;transform:translateY(-10px);animation:fadeInSlideDown .4s ease-out forwards;margin-top:1.5rem}.progressive-section.fade-in{animation:fadeInSlideDown .4s ease-out forwards}@keyframes fadeInSlideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group{transition:all .3s ease}.form-group:focus-within{background:#3b82f605;border-radius:8px;margin:-8px;padding:8px}.repo-error{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#ff44441a;border:1px solid rgba(255,68,68,.3);border-radius:6px;color:#ff6b6b}.repo-error .retry-btn{margin-left:auto;padding:.35rem .75rem;background:transparent;border:1px solid #ff6b6b;border-radius:4px;color:#ff6b6b;cursor:pointer;font-size:.85rem}.repo-error .retry-btn:hover{background:#f443}.repo-selector{position:relative}.repo-dropdown-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#0a0a0a;border:1px solid #333;border-radius:6px;color:#fff;cursor:pointer;transition:border-color .2s,background .2s}.repo-dropdown-trigger:hover{border-color:#555;background:#111}.repo-dropdown-trigger.open{border-color:#f80;border-bottom-left-radius:0;border-bottom-right-radius:0}.repo-dropdown-trigger .placeholder{color:#666}.repo-dropdown-trigger .selected-repo{display:flex;align-items:center;gap:.5rem}.repo-dropdown-trigger .chevron{transition:transform .2s;color:#666}.repo-dropdown-trigger .chevron.rotated{transform:rotate(180deg)}.repo-dropdown{position:absolute;top:100%;left:0;right:0;background:#1a1a2e;border:1px solid #ff8800;border-top:none;border-bottom-left-radius:6px;border-bottom-right-radius:6px;z-index:100;max-height:350px;display:flex;flex-direction:column}.repo-search{display:flex;align-items:center;gap:.5rem;padding:.75rem;border-bottom:1px solid #333;color:#666}.repo-search input{flex:1;background:transparent;border:none;color:#fff;font-size:.9rem;outline:none}.repo-search input::-moz-placeholder{color:#555}.repo-search input::placeholder{color:#555}.repo-list{overflow-y:auto;max-height:280px}.repo-list::-webkit-scrollbar{width:6px}.repo-list::-webkit-scrollbar-track{background:#111}.repo-list::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.no-repos{padding:1.5rem;text-align:center;color:#666}.repo-option{width:100%;display:flex;align-items:flex-start;justify-content:space-between;padding:.75rem 1rem;background:transparent;border:none;color:#fff;cursor:pointer;text-align:left;transition:background .15s}.repo-option:hover{background:#ff88001a}.repo-option.selected{background:#ff880026}.repo-option-content{flex:1;min-width:0}.repo-option-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.repo-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-lang{font-size:.75rem;padding:.15rem .4rem;background:#ffffff1a;border-radius:3px;color:#aaa}.repo-desc{font-size:.8rem;color:#666;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.repo-option .check-icon{color:#f80;margin-left:.5rem;flex-shrink:0}.supporting-repos-container{background:#0a0a0a;border:1px solid #333;border-radius:6px;overflow:hidden}.supporting-repos-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#1a1a2e;border-bottom:1px solid #333;gap:1rem}.supporting-repo-search{display:flex;align-items:center;gap:.5rem;flex:1;color:#666}.supporting-repo-search input{flex:1;background:transparent;border:none;color:#fff;font-size:.9rem;outline:none}.supporting-repo-search input::-moz-placeholder{color:#555}.supporting-repo-search input::placeholder{color:#555}.supporting-repo-item.disabled{opacity:.5;cursor:not-allowed}.supporting-repo-item.disabled:hover{background:transparent}.selected-count{font-size:.85rem;color:#888}.supporting-repos-list{max-height:300px;overflow-y:auto}.supporting-repos-list::-webkit-scrollbar{width:6px}.supporting-repos-list::-webkit-scrollbar-track{background:#0a0a0a}.supporting-repos-list::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.supporting-repo-item{display:flex;align-items:flex-start;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .15s;border-bottom:1px solid #222}.supporting-repo-item:last-child{border-bottom:none}.supporting-repo-item:hover{background:#ff88000d}.supporting-repo-item.selected{background:#ff88001a}.supporting-repo-item input[type=checkbox]{position:absolute;opacity:0;pointer-events:none}.checkbox-custom{width:18px;height:18px;min-width:18px;border:2px solid #444;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s;margin-top:2px}.supporting-repo-item.selected .checkbox-custom{background:#f80;border-color:#f80}.checkbox-custom svg{color:#fff}.supporting-repo-item .repo-info{flex:1;min-width:0}.supporting-repo-item .repo-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem;color:#fff}.supporting-repo-item .repo-name{font-weight:500}.supporting-repo-item .repo-lang{font-size:.7rem;padding:.1rem .35rem;background:#ffffff14;border-radius:3px;color:#999}.supporting-repo-item .repo-desc{font-size:.8rem;color:#666;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selected-repos-summary{margin-top:1rem;padding:.75rem;background:#ff88001a;border:1px solid rgba(255,136,0,.3);border-radius:6px}.selected-repos-summary h4{font-size:.85rem;margin-bottom:.5rem;color:#f80}.selected-repo-tag{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;background:#ffffff1a;border-radius:4px;font-size:.8rem;margin-right:.5rem;margin-bottom:.35rem}.selected-repo-tag.main{background:#ff88004d;color:#f80}.repo-section-header{padding:.5rem .75rem;font-size:.75rem;font-weight:600;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;background:#0003;border-bottom:1px solid rgba(255,255,255,.05)}.repo-section-divider{height:1px;background:#ffffff0d;margin:.25rem 0}.repo-option.recent{background:#3b82f60d;border-left:2px solid rgba(59,130,246,.3)}.repo-option.recent:hover{background:#3b82f61a;border-left-color:#3b82f680}.repo-pattern-option{padding:.65rem .75rem;background:#ff88000d;border:1px solid rgba(255,136,0,.1);border-radius:4px;margin:.25rem .5rem;cursor:pointer;transition:all .2s ease}.repo-pattern-option:hover{background:#ff88001a;border-color:#ff88004d;transform:translate(2px)}.repo-pattern-option h4{margin:0 0 .25rem;font-size:.85rem;color:#f80}.repo-pattern-option p{margin:0;font-size:.75rem;color:#fff9}.confirm-modal{background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;max-width:420px;width:90%}.confirm-modal h3{margin:0 0 1rem;color:#fff;font-size:1.25rem}.confirm-modal p{color:#ffffffb3;font-size:.95rem;line-height:1.5;margin:0 0 1.5rem}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.btn-secondary{padding:.6rem 1.25rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.9rem;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:#ffffff26;border-color:#ffffff4d}.btn-danger{padding:.6rem 1.25rem;background:#f443;border:1px solid rgba(255,68,68,.4);border-radius:6px;color:#ff6b6b;font-size:.9rem;cursor:pointer;transition:all .2s ease}.btn-danger:hover{background:#ff44444d;border-color:#f449}.create-project-two-column{display:grid;grid-template-columns:1fr 400px;gap:24px;align-items:start}.create-project-form-column,.create-project-preview-column{min-width:0}@media(max-width:1024px){.create-project-two-column{grid-template-columns:1fr}.create-project-preview-column{order:-1}}.chat-message{display:flex;gap:.75rem;margin-bottom:1rem;animation:slideInLeft .3s ease-out}.chat-message-user{flex-direction:row-reverse;animation:slideInRight .3s ease-out}.chat-message-system{justify-content:center;animation:slideInLeft .3s ease-out}.chat-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.9rem;font-weight:600}.chat-avatar-user{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000;box-shadow:0 2px 8px #00d4ff4d}.chat-avatar-assistant{background:linear-gradient(135deg,#8b5cf6,#6366f1);color:#fff;box-shadow:0 2px 8px #8b5cf64d}.chat-bubble{max-width:75%;padding:.875rem 1rem;font-size:.9375rem;line-height:1.6;word-wrap:break-word}.chat-bubble-user{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000;border-radius:1rem 1rem .25rem;box-shadow:0 2px 12px #00d4ff40}.chat-bubble-assistant{background:#8b5cf61f;border:1px solid rgba(139,92,246,.25);color:#e4e4e7;border-radius:1rem 1rem 1rem .25rem}.chat-bubble-system{background:#6b728026;border:1px solid rgba(107,114,128,.2);color:#9ca3af;border-radius:.75rem;padding:.5rem 1rem;font-size:.85rem;text-align:center}.chat-message-time{font-size:.7rem;color:#52525b;margin-top:.25rem}.chat-message-user .chat-message-time{text-align:right;color:#0006}.chat-bubble pre{background:#0000004d;padding:.75rem;border-radius:6px;overflow-x:auto;margin:.5rem 0;font-size:.85rem}.chat-bubble code{font-family:ui-monospace,monospace}.chat-bubble p code{background:#0003;padding:.15rem .35rem;border-radius:4px;font-size:.875em}@media(max-width:768px){.chat-bubble{max-width:90%}}@keyframes typingBounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-8px);opacity:1}}.typing-indicator{display:flex;gap:.75rem;margin-bottom:1rem;animation:fadeIn .3s ease}.typing-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#00d4ff,#0ea5e9);display:flex;align-items:center;justify-content:center;color:#000;font-size:.9rem;font-weight:600;box-shadow:0 2px 8px #00d4ff4d}.typing-bubble{padding:.875rem 1.25rem;border-radius:1rem 1rem 1rem .25rem;background:#00d4ff1a;border:1px solid rgba(0,212,255,.2);display:flex;align-items:center;gap:.75rem}.typing-bubble span{color:#71717a;font-size:.85rem}.typing-dots{display:flex;gap:5px;align-items:center}.typing-dot{width:8px;height:8px;border-radius:50%;background:#00d4ff;animation:typingBounce 1.4s ease-in-out infinite;box-shadow:0 0 6px #00d4ff80}.typing-dot:nth-child(1){animation-delay:0s}.typing-dot:nth-child(2){animation-delay:.2s}.typing-dot:nth-child(3){animation-delay:.4s}.spec-modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.spec-modal{background:#0f0f12;border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;max-width:700px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #00000080}.spec-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.spec-modal-header h2{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;color:#fff;margin:0}.spec-modal-close{background:transparent;border:none;color:#71717a;cursor:pointer;padding:.5rem;border-radius:6px;transition:all .15s}.spec-modal-close:hover{background:#ffffff1a;color:#fff}.spec-modal-body{flex:1;overflow-y:auto;padding:1.5rem}.spec-section{margin-bottom:1.5rem}.spec-section:last-child{margin-bottom:0}.spec-section h3{font-size:.9rem;font-weight:600;color:#00d4ff;margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.spec-section p{color:#d4d4d8;line-height:1.6;margin:0}.spec-features{list-style:none;padding:0;margin:0}.spec-features li{background:#ffffff08;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:1rem;margin-bottom:.75rem}.spec-features li:last-child{margin-bottom:0}.spec-features li strong{display:block;color:#fff;margin-bottom:.25rem}.spec-features li p{font-size:.875rem;color:#a1a1aa;margin:0}.spec-section ul:not(.spec-features){padding-left:1.25rem;margin:0}.spec-section ul:not(.spec-features) li{color:#d4d4d8;margin-bottom:.5rem;line-height:1.5}.spec-modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}.btn-revision{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.3);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease}.btn-revision:hover{background:#fbbf2440}.spec-review-panel{display:flex;flex-direction:column;background:#14161ef2;border-radius:12px;overflow:hidden}.spec-review-panel.empty{padding:40px;text-align:center;color:#666}.spec-review-panel .empty-icon{font-size:48px;display:block;margin-bottom:16px;opacity:.5}.spec-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.1)}.spec-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.spec-title-row h2{margin:0;font-size:1.5rem;color:#fff}.header-actions{display:flex;gap:8px}.edit-btn,.save-btn,.cancel-btn{padding:8px 16px;border:none;border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.edit-btn{background:#00d4ff33;color:#00d4ff}.edit-btn:hover{background:#00d4ff4d}.save-btn{background:#0f8;color:#000}.save-btn:hover{background:#00cc6a}.cancel-btn{background:#ffffff1a;color:#fff}.cancel-btn:hover{background:#fff3}.spec-tabs{display:flex;gap:4px}.spec-tab{padding:10px 16px;background:transparent;border:none;color:#888;cursor:pointer;border-radius:6px 6px 0 0;transition:all .2s;font-size:14px}.spec-tab:hover{color:#fff;background:#ffffff0d}.spec-tab.active{color:#00d4ff;background:#00d4ff1a;border-bottom:2px solid #00d4ff}.spec-tab span{margin-right:6px}.spec-content{padding:20px;max-height:500px;overflow-y:auto}.tab-content{animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.spec-field{margin-bottom:20px}.spec-field label{display:block;font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.spec-title{margin:0;font-size:1.25rem;color:#fff}.spec-summary,.spec-text{color:#ccc;line-height:1.6;margin:0}.spec-list{margin:0;padding-left:20px;color:#ccc}.spec-list li{margin-bottom:6px;line-height:1.5}.spec-list.warning li{color:orange}.spec-list.info li{color:#00d4ff}.spec-input,.spec-textarea{width:100%;padding:10px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:14px;transition:border-color .2s}.spec-input:focus,.spec-textarea:focus{outline:none;border-color:#00d4ff}.spec-input.small{padding:6px 10px;font-size:13px}.spec-textarea{resize:vertical;min-height:60px;font-family:inherit}.editable-list{display:flex;flex-direction:column;gap:8px}.list-item-edit{display:flex;gap:8px;align-items:center}.list-item-edit .spec-input{flex:1}.remove-btn{width:28px;height:28px;padding:0;border:none;background:#f443;color:#f44;border-radius:4px;cursor:pointer;font-size:16px}.remove-btn:hover{background:#ff44444d}.remove-btn.small{width:24px;height:24px;font-size:14px}.add-btn{padding:8px 12px;background:#00ff881a;color:#0f8;border:1px dashed rgba(0,255,136,.3);border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.add-btn:hover{background:#0f83}.add-btn.small{padding:4px 8px;font-size:12px}.users-edit{display:flex;flex-direction:column;gap:12px}.user-field{display:flex;align-items:center;gap:12px}.user-field span{min-width:80px;color:#888;font-size:13px}.user-field .spec-input{flex:1}.users-display{display:flex;flex-direction:column;gap:8px}.user-item{color:#ccc}.user-item strong{color:#00d4ff;margin-right:8px}.features-display,.features-edit{display:flex;flex-direction:column;gap:16px}.feature-card,.feature-card-edit{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:16px}.feature-header,.feature-header-edit{display:flex;align-items:center;gap:12px;margin-bottom:8px}.feature-header h4{margin:0;flex:1;color:#fff}.feature-card-edit .feature-name{flex:1;font-weight:600}.priority-badge{padding:4px 10px;border-radius:12px;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#fff}.priority-select{padding:6px 10px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;color:#fff;font-size:13px}.feature-description{color:#aaa;font-size:14px;margin:0 0 12px;line-height:1.5}.acceptance-criteria,.acceptance-edit{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.acceptance-criteria h5{margin:0 0 8px;font-size:12px;color:#888;text-transform:uppercase}.acceptance-criteria ul{margin:0;padding-left:16px}.acceptance-criteria li{color:#0f8;font-size:13px;margin-bottom:4px}.acceptance-edit label{font-size:11px;color:#888;display:block;margin-bottom:8px}.acceptance-item{margin-bottom:6px}.tags-edit{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.tag-item{display:flex;align-items:center;gap:4px}.tag-item .spec-input{width:120px}.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{padding:6px 12px;background:#9370db33;color:#9370db;border-radius:16px;font-size:13px}.spec-actions{padding:20px;border-top:1px solid rgba(255,255,255,.1);display:flex;gap:12px;flex-wrap:wrap}.approve-btn,.revision-btn,.submit-btn{padding:12px 24px;border:none;border-radius:8px;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.approve-btn{background:linear-gradient(135deg,#0f8,#00cc6a);color:#000;flex:1}.approve-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 20px #00ff884d}.revision-btn{background:#ffa50033;color:orange;border:1px solid rgba(255,165,0,.3)}.revision-btn:hover:not(:disabled){background:#ffa5004d}.approve-btn:disabled,.revision-btn:disabled,.submit-btn:disabled{opacity:.5;cursor:not-allowed}.revision-form{width:100%}.revision-textarea{width:100%;padding:12px;background:#ffffff0d;border:1px solid rgba(255,165,0,.3);border-radius:8px;color:#fff;font-size:14px;resize:vertical;min-height:80px;font-family:inherit}.revision-textarea:focus{outline:none;border-color:orange}.revision-actions{display:flex;gap:12px;margin-top:12px}.submit-btn{background:orange;color:#000;flex:1}.submit-btn:hover:not(:disabled){background:#cc8400}.spec-content::-webkit-scrollbar{width:6px}.spec-content::-webkit-scrollbar-track{background:#ffffff05}.spec-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.spec-content::-webkit-scrollbar-thumb:hover{background:#ffffff26}.integration-display,.integration-edit{display:flex;flex-direction:column;gap:16px}.integration-section{margin-bottom:8px}.integration-section strong{color:#888;font-size:12px;text-transform:uppercase;display:block;margin-bottom:6px}.file-list{margin:0;padding-left:0;list-style:none}.file-item{padding:4px 10px;background:#ffa5001a;color:orange;border-radius:4px;font-size:13px;font-family:monospace;margin-bottom:4px;display:inline-block;margin-right:8px}.file-item.new{background:#00ff881a;color:#0f8}.feature-files,.feature-types{margin-top:12px;padding-top:12px;border-top:1px solid rgba(255,255,255,.05)}.feature-files h5,.feature-types h5,.type-section h5{margin:0 0 8px;font-size:11px;color:#888;text-transform:uppercase}.file-tags{display:flex;flex-wrap:wrap;gap:6px}.file-tag{padding:3px 8px;background:#9370db26;color:#9370db;border-radius:4px;font-size:12px;font-family:monospace}.type-section{margin-bottom:8px}.type-tags{color:#00d4ff;font-size:13px;font-family:monospace}.type-definitions{display:flex;flex-direction:column;gap:12px}.type-definition-card{background:#00d4ff0d;border:1px solid rgba(0,212,255,.15);border-radius:8px;padding:12px}.type-name{margin:0 0 6px;color:#00d4ff;font-family:monospace;font-size:14px}.type-description{color:#aaa;font-size:13px;margin:0 0 10px}.type-fields{display:flex;flex-direction:column;gap:4px}.type-field{display:flex;gap:12px;font-size:12px}.field-name{color:#fff;min-width:100px}.field-type{color:#888;font-family:monospace}.tech-tags.new-deps .tech-tag.new{background:#00ff8826;color:#0f8}.risks-display,.risks-edit{display:flex;flex-direction:column;gap:12px}.risk-card{background:#ffa50014;border-left:3px solid #ffa500;padding:12px;border-radius:0 6px 6px 0}.risk-area{color:orange;font-weight:500;margin-bottom:6px}.risk-mitigation{color:#aaa;font-size:13px;padding-left:20px}.risk-item-edit{display:flex;gap:8px;align-items:center}.risk-item-edit .spec-input{flex:1}.testing-strategy{display:flex;flex-direction:column;gap:16px}.test-section{background:#9370db14;border-radius:6px;padding:12px}.test-section h5{margin:0 0 8px;font-size:12px;color:#9370db;text-transform:uppercase}.test-section .spec-list{margin:0;padding-left:16px}.test-section .spec-list li{color:#ccc;font-size:13px}@media(max-width:768px){.spec-tabs{overflow-x:auto}.spec-actions{flex-direction:column}.approve-btn,.revision-btn{width:100%}}.repo-analysis-panel{background:#1e1e2899;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:16px;margin-bottom:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.repo-analysis-panel.loading{display:flex;align-items:center;gap:10px;color:#00d4ff;font-size:14px}.repo-analysis-panel.loading .spin{animation:spin 1s linear infinite}.repo-analysis-panel h3{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#fff;margin:0 0 12px}.repo-analysis-panel .analysis-section{margin-bottom:12px}.repo-analysis-panel .analysis-section:last-child{margin-bottom:0}.repo-analysis-panel h4{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:500;color:#ffffffb3;margin:0 0 8px}.repo-analysis-panel .tags{display:flex;flex-wrap:wrap;gap:6px}.repo-analysis-panel .tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:500}.repo-analysis-panel .tag.language{background:#3b82f633;color:#60a5fa;border:1px solid rgba(59,130,246,.3)}.repo-analysis-panel .tag.framework{background:#a855f733;color:#c084fc;border:1px solid rgba(168,85,247,.3)}.repo-analysis-panel .tag.database{background:#22c55e33;color:#4ade80;border:1px solid rgba(34,197,94,.3)}.repo-analysis-panel .entry-points{list-style:none;padding:0;margin:0}.repo-analysis-panel .entry-points li{padding:4px 0;font-size:12px}.repo-analysis-panel .entry-points code{background:#0000004d;padding:2px 8px;border-radius:4px;color:#00d4ff;font-family:monospace;font-size:11px}.repo-analysis-panel .file-summary{display:flex;flex-wrap:wrap;gap:6px}.repo-analysis-panel .dir-tag{background:#ffffff1a;padding:4px 10px;border-radius:8px;font-size:11px;color:#fffc;font-family:monospace}.workflow-stepper{display:flex;justify-content:center;align-items:center;gap:0;padding:1rem 1.5rem;background:#ffffff05;border-radius:12px;border:1px solid rgba(255,255,255,.06)}.stepper-item{display:flex;align-items:center;gap:.5rem;cursor:default}.stepper-item:not(:last-child):after{content:"";width:48px;height:2px;background:#27272a;margin:0 .75rem;transition:background .3s ease}.stepper-item-completed:not(:last-child):after{background:var(--color-green, #22c55e)}.stepper-indicator{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #27272a;background:#0a0a0a;color:#52525b;transition:all .3s ease;flex-shrink:0}.stepper-item-completed .stepper-indicator{background:var(--color-green, #22c55e);border-color:var(--color-green, #22c55e);color:#fff}.stepper-item-active .stepper-indicator{border-color:#00d4ff;color:#00d4ff;box-shadow:0 0 0 4px #00d4ff26;animation:pulse-glow 2s ease-in-out infinite}.stepper-item-failed .stepper-indicator{border-color:var(--color-red, #ef4444);color:var(--color-red, #ef4444);background:#ef44441a}.stepper-item-pending .stepper-indicator{border-color:#27272a;color:#52525b}@keyframes pulse-glow{0%,to{box-shadow:0 0 0 4px #00d4ff26}50%{box-shadow:0 0 0 8px #00d4ff14}}.stepper-label{font-size:.875rem;font-weight:500;color:#52525b;transition:color .3s ease;white-space:nowrap}.stepper-item-completed .stepper-label{color:var(--color-green, #22c55e)}.stepper-item-active .stepper-label{color:#fff;font-weight:600}.stepper-item-failed .stepper-label{color:var(--color-red, #ef4444)}.workflow-stepper-loading .stepper-indicator.skeleton{background:linear-gradient(90deg,#1a1a1a 25%,#27272a,#1a1a1a 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite;border-color:transparent}.workflow-stepper-loading .stepper-label.skeleton-text{width:50px;height:14px;border-radius:4px;background:linear-gradient(90deg,#1a1a1a 25%,#27272a,#1a1a1a 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s ease-in-out infinite}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.stepper-item[role=button]{cursor:pointer}.stepper-item[role=button]:hover .stepper-indicator{transform:scale(1.05)}.stepper-item[role=button]:focus{outline:none}.stepper-item[role=button]:focus .stepper-indicator{box-shadow:0 0 0 3px #00d4ff4d}@media(max-width:640px){.stepper-label{display:none}.stepper-item:not(:last-child):after{width:24px;margin:0 .5rem}.workflow-stepper{padding:.75rem 1rem}}.workflow-stepper.workflow-stepper-compact .stepper-indicator{width:28px;height:28px}.workflow-stepper.workflow-stepper-compact .stepper-indicator svg{width:14px;height:14px}.workflow-stepper.workflow-stepper-compact .stepper-item:not(:last-child):after{width:32px}.connection-status{position:relative;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;min-width:120px;min-height:28px;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-color, rgba(255, 255, 255, .1));border-radius:8px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.connection-status:hover{background:var(--bg-tertiary, #334155);border-color:#fff3}.connection-status:focus{outline:2px solid var(--color-primary, #00d4ff);outline-offset:2px}.connection-status-header{display:flex;align-items:center;gap:8px}.status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.green{background:var(--color-success, #22c55e)}.status-dot.yellow{background:var(--color-warning, #f59e0b)}.status-dot.yellow.spinner{animation:spinner 1s linear infinite}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-dot.red{background:var(--color-error, #ef4444)}.status-dot.gray{background:var(--text-tertiary, #6b7280)}.status-label{font-size:12px;font-weight:500;color:var(--text-primary, #ffffff);white-space:nowrap}.connection-status.expanded{flex-direction:column;align-items:stretch;padding:10px 14px}.connection-status-details{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, rgba(255, 255, 255, .1));display:flex;flex-direction:column;gap:8px;animation:slideDown .2s ease-in-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.detail-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.detail-label{font-size:11px;color:var(--text-secondary, #94a3b8)}.detail-value{font-size:11px;font-weight:500;color:var(--text-primary, #ffffff);font-variant-numeric:tabular-nums}.retry-button{margin-top:4px;padding:6px 12px;background:var(--color-primary, #00d4ff);color:var(--bg-primary, #0f172a);border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease-in-out}.retry-button:hover{background:var(--color-primary-hover, #00b8e6);transform:translateY(-1px)}.retry-button:active{transform:translateY(0)}.retry-button:focus{outline:2px solid var(--color-primary, #00d4ff);outline-offset:2px}@media(max-width:640px){.connection-status{padding:4px 8px}.connection-status:not(.expanded) .status-label{display:none}.connection-status.expanded{position:fixed;top:60px;right:12px;z-index:100;box-shadow:0 4px 12px #0000004d;min-width:200px}.connection-status.expanded .status-label{display:block}}@media(prefers-reduced-motion:reduce){.status-dot.pulse,.status-dot.spinner,.connection-status-details{animation:none}.connection-status,.retry-button{transition:none}}.kbd-help-overlay{position:fixed;inset:0;background:#000000b3;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;animation:fadeIn .2s ease}.kbd-help-panel{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(0,212,255,.2);border-radius:12px;width:90%;max-width:600px;max-height:85vh;overflow:hidden;box-shadow:0 20px 60px #00000080,0 0 40px #00d4ff1a;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.kbd-help-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.kbd-help-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#fff}.kbd-help-close{background:none;border:none;color:#666;cursor:pointer;padding:.5rem;transition:color .2s}.kbd-help-close:hover{color:#fff}.kbd-help-body{padding:1.5rem;max-height:calc(85vh - 160px);overflow-y:auto}.kbd-help-body::-webkit-scrollbar{width:6px}.kbd-help-body::-webkit-scrollbar-track{background:#ffffff05}.kbd-help-body::-webkit-scrollbar-thumb{background:#00d4ff4d;border-radius:3px}.kbd-help-body::-webkit-scrollbar-thumb:hover{background:#00d4ff80}.kbd-shortcut-category{margin-bottom:1.5rem}.kbd-shortcut-category:last-child{margin-bottom:0}.kbd-shortcut-category h4{margin:0 0 .75rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#00d4ff}.kbd-shortcut-list{display:flex;flex-direction:column;gap:.5rem}.kbd-shortcut-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#0003;border:1px solid rgba(255,255,255,.04);border-radius:8px;transition:all .2s}.kbd-shortcut-item:hover{background:#0000004d;border-color:#00d4ff33}.kbd-shortcut-keys{display:flex;align-items:center;gap:.25rem;min-width:120px}kbd{display:inline-block;padding:.25rem .5rem;font-family:SF Pro Text,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,monospace;font-size:.75rem;font-weight:600;color:#fff;background:linear-gradient(180deg,#2a2a3e,#1a1a2e);border:1px solid rgba(255,255,255,.1);border-bottom-width:2px;border-radius:4px;box-shadow:0 2px 4px #0003;text-transform:uppercase;letter-spacing:.5px}.kbd-plus{color:#666;font-size:.8rem;margin:0 .15rem}.kbd-shortcut-desc{display:flex;align-items:center;gap:.5rem;flex:1;margin-left:1rem;color:#ccc;font-size:.9rem}.kbd-shortcut-icon{color:#00d4ff;flex-shrink:0}.kbd-help-footer{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);background:#0003}.kbd-help-footer p{margin:0;font-size:.85rem;color:#888;text-align:center}.kbd-help-footer kbd{padding:.15rem .4rem;font-size:.7rem}@media(max-width:640px){.kbd-help-panel{width:95%;max-height:90vh}.kbd-help-header{padding:1rem}.kbd-help-body{padding:1rem;max-height:calc(90vh - 140px)}.kbd-shortcut-item{flex-direction:column;align-items:flex-start;gap:.5rem}.kbd-shortcut-desc{margin-left:0}.kbd-shortcut-keys{min-width:auto}}.whats-next-panel{width:320px;background:linear-gradient(145deg,#1e293b,#0f172a);border:1px solid #334155;border-radius:12px;overflow:visible;display:flex;flex-direction:column;height:auto;min-height:-moz-fit-content;min-height:fit-content}.whats-next-panel .panel-header{padding:1.25rem;background:linear-gradient(135deg,#3b82f61a,#8b5cf60d);border-bottom:1px solid #334155;display:flex;justify-content:space-between;align-items:center}.panel-header .header-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:#f1f5f9}.panel-header .header-title svg{color:#3b82f6}.panel-header .state-indicator{padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:500;text-transform:capitalize;background:#64748b33;color:#94a3b8;border:1px solid #475569}.panel-header .state-indicator[data-state=clarifying]{background:#00d4ff1a;color:#00d4ff;border-color:#00d4ff4d}.panel-header .state-indicator[data-state=reviewing]{background:#a855f71a;color:#a855f7;border-color:#a855f74d}.panel-header .state-indicator[data-state=approved]{background:#22c55e1a;color:#22c55e;border-color:#22c55e4d}.panel-header .state-indicator[data-state=building]{background:#8b5cf61a;color:#8b5cf6;border-color:#8b5cf64d}.whats-next-panel .panel-content{padding:1.25rem;overflow:visible}.action-section{margin-bottom:1.5rem}.action-card{background:linear-gradient(135deg,rgba(var(--action-color-rgb, 59, 130, 246),.1),rgba(var(--action-color-rgb, 59, 130, 246),.05));border:1px solid rgba(var(--action-color-rgb, 59, 130, 246),.3);border-radius:10px;padding:1rem;position:relative;overflow:hidden}.action-card:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--action-color, #3b82f6)}.action-card .action-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:10px;background:rgba(var(--action-color-rgb, 59, 130, 246),.15);margin-bottom:.75rem}.action-card .action-icon svg{color:var(--action-color, #3b82f6)}.action-card .action-details{margin-bottom:1rem}.action-card .action-details h3{margin:0 0 .25rem;font-size:1.1rem;font-weight:600;color:#f1f5f9}.action-card .action-help{margin:0;font-size:.85rem;color:#94a3b8;line-height:1.4}.action-card .action-button{width:100%;padding:.75rem;background:var(--action-color, #3b82f6);color:#fff;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.action-card .action-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(var(--action-color-rgb, 59, 130, 246),.4);filter:brightness(1.1)}.action-card .action-button:disabled{opacity:.5;cursor:not-allowed}.completion-message{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:1.5rem;text-align:center;background:linear-gradient(135deg,#22c55e1a,#10b9810d);border:1px solid rgba(34,197,94,.3);border-radius:10px;margin-bottom:1.5rem}.completion-message svg{color:#22c55e}.completion-message p{margin:0;color:#94a3b8;font-size:.9rem}.why-section,.topics-section,.progress-section,.tips-section{margin-bottom:1.25rem}.section-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem;font-size:.85rem;font-weight:500;color:#94a3b8}.section-header svg{opacity:.7}.why-text{margin:0;font-size:.875rem;color:#cbd5e1;line-height:1.5;padding:.75rem;background:#1e293b80;border-radius:8px;border-left:2px solid #3b82f6}.topics-list{list-style:none;padding:0;margin:0}.topic-item{display:flex;align-items:flex-start;gap:.5rem;padding:.5rem .75rem;margin-bottom:.5rem;background:#1e293b4d;border-radius:6px;font-size:.875rem;color:#cbd5e1;transition:all .2s}.topic-item:hover{background:#1e293b80;transform:translate(2px)}.topic-bullet{color:#3b82f6;font-weight:600}.progress-bar{width:100%;height:8px;background:#1e293b80;border-radius:4px;overflow:hidden;margin-bottom:.5rem}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .3s ease}.progress-text{font-size:.75rem;color:#64748b}.tip-text{margin:0;padding:.75rem;background:linear-gradient(135deg,#fbbf2414,#f59e0b0d);border:1px solid rgba(251,191,36,.2);border-radius:8px;font-size:.825rem;color:#fbbf24;line-height:1.4}@media(max-width:1400px){.whats-next-panel{width:280px}}@media(max-width:1200px){.whats-next-panel{width:100%;max-width:320px;margin-top:1rem}}.whats-next-panel{animation:slideIn .3s ease-out}.recovery-panel{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(239,68,68,.3);border-radius:12px;padding:20px;box-shadow:0 4px 6px #0000001a,0 0 20px #ef44441a;transition:all .3s ease}.recovery-panel:hover{box-shadow:0 4px 6px #00000026,0 0 30px #ef444426}.recovery-panel--compact{padding:12px;border-radius:8px}.recovery-panel__header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.recovery-panel--compact .recovery-panel__header{margin-bottom:12px}.recovery-panel__icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;background:#ef44441a;flex-shrink:0}.recovery-panel--compact .recovery-panel__icon{width:32px;height:32px;border-radius:8px}.recovery-panel__title-area{flex:1;min-width:0}.recovery-panel__title{margin:0;font-size:18px;font-weight:600;color:#fff;line-height:1.2}.recovery-panel--compact .recovery-panel__title{font-size:16px}.recovery-panel__error-code{display:inline-block;margin-top:4px;padding:2px 8px;font-size:11px;font-family:JetBrains Mono,monospace;font-weight:500;color:#ffffffb3;background:#ffffff0d;border-radius:4px;border:1px solid rgba(255,255,255,.1)}.recovery-panel__message{margin-bottom:16px}.recovery-panel--compact .recovery-panel__message{margin-bottom:12px}.recovery-panel__error-text{margin:0 0 8px;color:#ffffffe6;font-size:14px;line-height:1.5}.recovery-panel__suggestion{margin:0;padding:8px 12px;display:flex;align-items:center;gap:8px;font-size:13px;color:#fffc;background:#3b82f61a;border-radius:6px;border:1px solid rgba(59,130,246,.2)}.recovery-panel__suggestion-icon{flex-shrink:0;color:#3b82f6}.recovery-panel__checkpoint{display:flex;align-items:center;gap:8px;padding:8px 12px;margin-bottom:16px;font-size:13px;background:#22c55e1a;border:1px solid rgba(34,197,94,.2);border-radius:6px}.recovery-panel__checkpoint-icon{color:#22c55e;flex-shrink:0}.recovery-panel__checkpoint-label{color:#ffffffb3}.recovery-panel__checkpoint-value{color:#fff;font-weight:500;margin-left:4px}.recovery-panel__actions{display:flex;gap:8px;flex-wrap:wrap}.recovery-panel__btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden;white-space:nowrap;background-clip:padding-box}.recovery-panel--compact .recovery-panel__btn{padding:6px 12px;font-size:13px}.recovery-panel__btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0003}.recovery-panel__btn:active:not(:disabled){transform:translateY(0)}.recovery-panel__btn:disabled,.recovery-panel__btn.disabled{opacity:.5;cursor:not-allowed}.recovery-panel__btn--primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border-color:#2563eb}.recovery-panel__btn--primary:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8)}.recovery-panel__btn--secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.recovery-panel__btn--secondary:hover:not(:disabled){background:#ffffff26;border-color:#ffffff4d}.recovery-panel__btn--tertiary{background:#ffffff0d;color:#ffffffb3;border:1px solid rgba(255,255,255,.1)}.recovery-panel__btn--tertiary:hover:not(:disabled){background:#ffffff14;color:#ffffffe6;border-color:#fff3}.recovery-panel__retry-count{margin-left:4px;font-size:12px;color:#ffffffb3}.recovery-panel__btn .spin{animation:spin 1s linear infinite}.recovery-panel__max-retries{display:flex;align-items:center;gap:8px;margin-top:12px;padding:8px 12px;font-size:13px;color:#ffffffe6;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:6px}.recovery-panel__max-retries svg{color:#f59e0b;flex-shrink:0}.recovery-panel__details{margin-top:16px;border-top:1px solid rgba(255,255,255,.1);padding-top:12px}.recovery-panel__details-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;font-size:13px;color:#ffffffb3;background:transparent;border:1px solid rgba(255,255,255,.2);border-radius:6px;cursor:pointer;transition:all .2s ease}.recovery-panel__details-toggle:hover{color:#ffffffe6;background:#ffffff0d;border-color:#ffffff4d}.recovery-panel__details-content{margin-top:12px;padding:12px;font-family:JetBrains Mono,monospace;font-size:12px;line-height:1.5;color:#fffc;background:#0003;border:1px solid rgba(255,255,255,.1);border-radius:6px;overflow-x:auto;white-space:pre-wrap;word-break:break-word}.recovery-panel[data-context=build_start]{border-color:#f59e0b4d;box-shadow:0 4px 6px #0000001a,0 0 20px #f59e0b1a}.recovery-panel[data-context=validation]{border-color:#3b82f64d;box-shadow:0 4px 6px #0000001a,0 0 20px #3b82f61a}.recovery-panel{animation:slideInUp .3s ease-out}@keyframes slideInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:480px){.recovery-panel{padding:16px}.recovery-panel__actions{flex-direction:column}.recovery-panel__btn{width:100%;justify-content:center}}.activity-feed{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(59,130,246,.2);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:all .3s ease}.activity-feed--embedded{max-height:500px;box-shadow:0 4px 6px #0000001a,0 0 20px #3b82f60d}.activity-feed__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#3b82f61a;border-bottom:1px solid rgba(59,130,246,.2)}.activity-feed__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#fff}.activity-feed__icon{color:#3b82f6}.activity-feed__status{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.activity-feed__status--connected{background:#22c55e33;color:#22c55e;border:1px solid rgba(34,197,94,.3);animation:pulse 2s ease-in-out infinite}.activity-feed__toggle{padding:4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.activity-feed__toggle:hover{background:#ffffff1a;color:#fff}.activity-feed__progress{padding:12px 16px;background:#0003;border-bottom:1px solid rgba(255,255,255,.05)}.activity-feed__progress-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;margin-bottom:8px}.activity-feed__progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;transition:width .5s ease;box-shadow:0 0 10px #3b82f680;position:relative}.activity-feed__progress-fill:after{content:"";position:absolute;top:0;right:0;bottom:0;width:20px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3));animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-20px)}to{transform:translate(20px)}}.activity-feed__progress-stats{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:#ffffffb3}.activity-feed__progress-count{display:flex;align-items:center;gap:4px}.activity-feed__progress-percent{font-weight:600;color:#3b82f6}.activity-feed__banner{display:flex;align-items:center;gap:8px;padding:10px 16px;font-size:13px;font-weight:500;animation:slideInDown .3s ease-out}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.activity-feed__banner--success{background:linear-gradient(135deg,#22c55e33,#10b98133);color:#22c55e;border-bottom:1px solid rgba(34,197,94,.3)}.activity-feed__banner--error{background:linear-gradient(135deg,#ef444433,#dc262633);color:#ef4444;border-bottom:1px solid rgba(239,68,68,.3)}.activity-feed__activities{flex:1;overflow-y:auto;padding:8px;min-height:200px;max-height:300px}.activity-feed__activities::-webkit-scrollbar{width:6px}.activity-feed__activities::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.activity-feed__activities::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:3px}.activity-feed__activities::-webkit-scrollbar-thumb:hover{background:#3b82f680}.activity-feed__empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:#ffffff80;font-size:13px}.activity-feed__spinner{width:24px;height:24px;color:#3b82f6;animation:spin 1s linear infinite}.activity-feed__item{display:flex;gap:10px;padding:8px 12px;margin-bottom:4px;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;font-size:13px;animation:slideInLeft .3s ease-out;transition:all .2s ease}.activity-feed__item:hover{background:#ffffff0d;border-color:#ffffff1a}.activity-feed__item-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:6px;background:#3b82f61a;flex-shrink:0}.activity-feed__item--ticket .activity-feed__item-icon{background:#22c55e1a;color:#22c55e}.activity-feed__item--error .activity-feed__item-icon{background:#ef44441a;color:#ef4444}.activity-feed__item--complete .activity-feed__item-icon{background:#a855f71a;color:#a855f7}.activity-feed__item--progress .activity-feed__item-icon{background:#3b82f61a;color:#3b82f6}.activity-feed__item--status .activity-feed__item-icon{background:#f59e0b1a;color:#f59e0b}.activity-feed__item--info .activity-feed__item-icon{background:#9ca3af1a;color:#9ca3af}.activity-feed__item-content{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.activity-feed__item-message{color:#ffffffe6;line-height:1.4;word-break:break-word}.activity-feed__item-time{display:flex;align-items:center;gap:4px;font-size:11px;color:#ffffff80}.activity-feed__scroll-indicator{padding:8px 16px;background:#3b82f60d;border-top:1px solid rgba(59,130,246,.2);font-size:12px;color:#ffffffb3;text-align:center}.activity-feed__scroll-button{padding:4px 12px;background:#3b82f633;border:1px solid rgba(59,130,246,.3);border-radius:6px;color:#3b82f6;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.activity-feed__scroll-button:hover{background:#3b82f64d;transform:translateY(-1px)}.activity-feed--collapsed{max-height:48px}@media(prefers-color-scheme:light){.activity-feed{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#3b82f64d}.activity-feed__title{color:#1f2937}.activity-feed__activities{background:#fff}.activity-feed__item{background:#00000005;border-color:#0000000d}.activity-feed__item-message{color:#1f2937}}@media(max-width:768px){.activity-feed--embedded{max-height:400px}.activity-feed__activities{max-height:250px}}@media(max-width:480px){.activity-feed__header{padding:10px 12px}.activity-feed__title{font-size:13px}.activity-feed__item{padding:6px 10px;font-size:12px}}.session-timeline{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(59,130,246,.2);border-radius:12px;overflow:hidden;transition:all .3s ease}.session-timeline__header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background:#3b82f61a;border-bottom:1px solid rgba(59,130,246,.2)}.session-timeline__title{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#fff}.session-timeline__icon{color:#3b82f6}.session-timeline__count{padding:2px 8px;background:#3b82f633;border-radius:12px;font-size:11px;font-weight:500;color:#3b82f6}.session-timeline__toggle{padding:4px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.session-timeline__toggle:hover{background:#ffffff1a;color:#fff}.session-timeline__filters{display:flex;gap:8px;padding:8px 16px;background:#0003;border-bottom:1px solid rgba(255,255,255,.05)}.session-timeline__filter{padding:6px 12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#ffffffb3;font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease}.session-timeline__filter:hover{background:#ffffff1a;color:#fff}.session-timeline__filter.active{background:#3b82f633;border-color:#3b82f64d;color:#3b82f6}.session-timeline__events{padding:16px;max-height:500px;overflow-y:auto}.session-timeline__events::-webkit-scrollbar{width:6px}.session-timeline__events::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.session-timeline__events::-webkit-scrollbar-thumb{background:#3b82f64d;border-radius:3px}.session-timeline__events::-webkit-scrollbar-thumb:hover{background:#3b82f680}.session-timeline__loading,.session-timeline__empty{padding:40px 20px;text-align:center;color:#ffffff80;font-size:13px}.session-timeline__date-group{margin-bottom:24px}.session-timeline__date-group:last-child{margin-bottom:0}.session-timeline__date-header{padding:4px 8px;margin-bottom:12px;background:#3b82f61a;border:1px solid rgba(59,130,246,.2);border-radius:6px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#3b82f6;display:inline-block}.session-timeline__date-events{position:relative;padding-left:32px}.session-timeline__event{position:relative;display:flex;gap:12px;margin-bottom:16px;animation:slideInLeft .3s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.session-timeline__event:last-child{margin-bottom:0}.session-timeline__line{position:absolute;left:7px;top:24px;bottom:-16px;width:2px;background:linear-gradient(180deg,#3b82f64d,#3b82f61a)}.session-timeline__dot{position:absolute;left:0;top:4px;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;box-shadow:0 0 10px #0000004d;z-index:1}.session-timeline__dot svg{width:8px;height:8px}.session-timeline__event-content{flex:1;background:#ffffff08;border:1px solid rgba(255,255,255,.05);border-radius:8px;padding:10px 12px;transition:all .2s ease}.session-timeline__event-content:hover{background:#ffffff0d;border-color:#ffffff1a;transform:translate(2px)}.session-timeline__event-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.session-timeline__event-label{font-size:12px;font-weight:600;color:#fff}.session-timeline__event-time{font-size:11px;color:#ffffff80;font-family:JetBrains Mono,monospace}.session-timeline__event-description{font-size:13px;color:#fffc;line-height:1.4;margin-bottom:6px;word-break:break-word}.session-timeline__event-actor{display:flex;align-items:center;gap:6px;font-size:11px;color:#fff9}.session-timeline__event-actor svg{width:12px;height:12px;color:#fff6}.session-timeline__event-relative{color:#fff6;margin-left:4px}.session-timeline__event-metadata{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.05)}.session-timeline__metadata-item{padding:2px 6px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:4px;font-size:10px;font-family:JetBrains Mono,monospace;color:#fff9}.session-timeline__event--spec_generated .session-timeline__event-content{border-left:2px solid #8b5cf6}.session-timeline__event--spec_approved .session-timeline__event-content{border-left:2px solid #22c55e}.session-timeline__event--revision_requested .session-timeline__event-content{border-left:2px solid #f59e0b}.session-timeline__event--build_started .session-timeline__event-content{border-left:2px solid #8b5cf6}.session-timeline__event--ticket_created .session-timeline__event-content{border-left:2px solid #22c55e}.session-timeline__event--build_failed .session-timeline__event-content{border-left:2px solid #ef4444}.session-timeline__event--message_sent .session-timeline__event-content{border-left:2px solid #00d4ff}.session-timeline--collapsed{max-height:48px}@media(prefers-color-scheme:light){.session-timeline{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-color:#3b82f64d}.session-timeline__title{color:#1f2937}.session-timeline__event-content{background:#00000005;border-color:#0000000d}.session-timeline__event-description{color:#374151}.session-timeline__event-label{color:#1f2937}}@media(max-width:768px){.session-timeline__events{max-height:400px}.session-timeline__date-events{padding-left:24px}.session-timeline__event-content{padding:8px 10px}}@media(max-width:480px){.session-timeline__filters{flex-wrap:wrap}.session-timeline__filter{flex:1;min-width:80px;text-align:center}.session-timeline__event-description{font-size:12px}}.overflow-menu{position:relative;display:inline-block}.overflow-menu__trigger{padding:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#ffffffb3;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.overflow-menu__trigger:hover{background:#ffffff1a;border-color:#fff3;color:#fff}.overflow-menu__trigger:active{transform:scale(.95)}.overflow-menu__dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(59,130,246,.2);border-radius:12px;box-shadow:0 10px 30px #00000080;overflow:hidden;z-index:1000;animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.overflow-menu__header{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#3b82f61a;border-bottom:1px solid rgba(59,130,246,.2);font-size:12px;font-weight:600;color:#fff9;text-transform:uppercase;letter-spacing:.5px}.overflow-menu__header svg{color:#3b82f6}.overflow-menu__items{padding:8px}.overflow-menu__item{width:100%;display:flex;align-items:center;gap:10px;padding:10px 12px;background:transparent;border:none;border-radius:6px;color:#ffffffe6;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:all .2s ease}.overflow-menu__item:hover{background:#3b82f626;color:#fff;transform:translate(2px)}.overflow-menu__item:active{background:#3b82f633}.overflow-menu__item svg{flex-shrink:0;color:#fff9;transition:color .2s ease}.overflow-menu__item:hover svg{color:#3b82f6}.overflow-menu__divider{height:1px;background:#ffffff1a;margin:8px 12px}.overflow-menu__item:disabled{opacity:.5;cursor:not-allowed}.overflow-menu__item:disabled:hover{background:transparent;transform:none}.overflow-menu--left .overflow-menu__dropdown{right:auto;left:0}.overflow-menu--top .overflow-menu__dropdown{top:auto;bottom:calc(100% + 8px);animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.overflow-menu__dropdown{min-width:180px}.overflow-menu__item{padding:8px 10px;font-size:12px}}@media(prefers-color-scheme:light){.overflow-menu__trigger{background:#0000000d;border-color:#0000001a;color:#6b7280}.overflow-menu__trigger:hover{background:#0000001a;border-color:#0003;color:#1f2937}.overflow-menu__dropdown{background:linear-gradient(135deg,#fff,#f9fafb);border-color:#3b82f64d;box-shadow:0 10px 30px #0000001a}.overflow-menu__header{color:#6b7280}.overflow-menu__item{color:#1f2937}.overflow-menu__item:hover{background:#3b82f61a}.overflow-menu__item svg{color:#6b7280}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 5px currentColor}50%{box-shadow:0 0 20px currentColor,0 0 30px currentColor}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.glass-card-hover:hover{border-color:#00d4ff4d;box-shadow:0 8px 32px #00d4ff1a;transition:all .3s ease}.ds-sticky-header{position:sticky;top:0;z-index:100;background:linear-gradient(135deg,#0d0d17fa,#141423fa);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,212,255,.1);padding-bottom:1rem;margin-bottom:0}.ds-sticky-header .page-header,.ds-sticky-header .ds-workflow-stepper,.ds-sticky-header .ds-progress-wrap{margin-bottom:1rem}.ds-sticky-header .ds-progress-wrap{margin-bottom:0}.ds-scrollable-content{position:relative;padding-top:1rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page-header>div:first-child{flex:1}.ds-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;color:#00d4ff;gap:1rem}.ds-loading-spinner{width:48px;height:48px;border:3px solid rgba(0,212,255,.2);border-top-color:#00d4ff;border-radius:50%;animation:spin 1s linear infinite}.ds-workflow-stepper{margin-bottom:1.5rem}.ds-state-badge{display:inline-flex;align-items:center;gap:.5rem;padding:.35rem .85rem;border-radius:9999px;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .3s ease}.ds-state-badge[data-state=input]{background:#6b728033;color:#9ca3af;border:1px solid rgba(107,114,128,.3)}.ds-state-badge[data-state=clarifying]{background:#00d4ff26;color:#00d4ff;border:1px solid rgba(0,212,255,.3);animation:pulse-glow 2s ease-in-out infinite}.ds-state-badge[data-state=ready_for_docs]{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.ds-state-badge[data-state=reviewing]{background:#a855f726;color:#a855f7;border:1px solid rgba(168,85,247,.3)}.ds-state-badge[data-state=approved]{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.ds-state-badge[data-state=building]{background:#8b5cf626;color:#8b5cf6;border:1px solid rgba(139,92,246,.3);animation:pulse-glow 1.5s ease-in-out infinite}.ds-state-badge[data-state=completed]{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3)}.ds-state-badge[data-state=failed]{background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3)}.ds-connected{margin-left:.75rem;color:#22c55e;font-size:.75rem;display:flex;align-items:center;gap:.25rem}.ds-connected:before{content:"";width:6px;height:6px;background:#22c55e;border-radius:50%;animation:pulse-glow 2s ease-in-out infinite}.ds-disconnected{opacity:0;pointer-events:none}.ds-progress-wrap{margin-bottom:1.5rem;animation:fadeIn .5s ease}.ds-progress-header{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.875rem;color:#71717a}.ds-progress-value{color:#fff;font-weight:600;font-variant-numeric:tabular-nums}.ds-progress-bar{height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden;position:relative}.ds-progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:4px;transition:width .5s cubic-bezier(.4,0,.2,1);box-shadow:0 0 10px #00d4ff80;position:relative}.ds-progress-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);background-size:200% 100%;animation:shimmer 2s infinite}.ds-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:.5rem;padding:1rem;margin-bottom:1rem;color:#fca5a5;font-size:.875rem;animation:fadeIn .3s ease}.ds-grid{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;min-height:calc(100vh - 220px);animation:fadeIn .4s ease}.ds-chat-panel{display:flex;flex-direction:column;min-height:500px;background:#1a1a2e80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05);border-radius:12px;overflow:hidden}.ds-chat-panel .card-header{padding:1rem 1.25rem;border-bottom:1px solid rgba(255,255,255,.06);margin-bottom:0;background:#0003}.ds-chat-panel .card-title{display:flex;align-items:center;gap:.5rem;color:#00d4ff;font-weight:600}.ds-messages{flex:1;overflow-y:auto;padding:1rem 1.25rem;background:transparent;scroll-behavior:smooth}.ds-messages::-webkit-scrollbar{width:6px}.ds-messages::-webkit-scrollbar-track{background:transparent}.ds-messages::-webkit-scrollbar-thumb{background:#00d4ff4d;border-radius:3px}.ds-messages::-webkit-scrollbar-thumb:hover{background:#00d4ff80}.ds-empty{text-align:center;padding:3rem;color:#52525b;animation:fadeIn .5s ease}.ds-empty svg{margin-bottom:1rem;opacity:.5}.ds-input-form{position:relative;padding:1rem 1.25rem;border-top:1px solid rgba(255,255,255,.06);background:#0003}.ds-input-form .form-input{width:100%;padding:.75rem 3.5rem .75rem 1rem;background:#0a0a0acc;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.95rem;transition:all .3s ease;min-height:100px;max-height:200px;resize:none;overflow-y:auto;font-family:inherit;line-height:1.5}.ds-input-form .btn-primary{position:absolute;right:1.5rem;bottom:1.25rem;padding:.5rem .75rem;display:flex;align-items:center;justify-content:center}.ds-input-form .form-input:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff26,0 0 20px #00d4ff33}.ds-input-form .form-input:disabled{opacity:.5;cursor:not-allowed}.ds-input-form .form-input::-moz-placeholder{color:#52525b}.ds-input-form .form-input::placeholder{color:#52525b}.ds-intake-suggestions{margin-bottom:1rem}.ds-sidebar{position:sticky;top:1rem;align-self:start;max-height:calc(100vh - 2rem);overflow-y:auto;display:flex;flex-direction:column;gap:1rem}.ds-sidebar-header{display:flex;justify-content:flex-end;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.ds-overflow-menu{position:relative}.ds-sidebar .card{padding:1rem;background:#1a1a2e99;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05);border-radius:10px;animation:fadeIn .4s ease}.ds-sidebar .card-header{margin-bottom:.75rem}.ds-sidebar .card-title{font-size:.8rem;display:flex;align-items:center;gap:.5rem;color:#00d4ff;text-transform:uppercase;letter-spacing:.5px}.ds-gathered-list{display:flex;flex-direction:column;gap:.5rem}.ds-gathered-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#0003;border-radius:6px;animation:slideInLeft .3s ease}.ds-gathered-item span{color:#a1a1aa;font-size:.75rem;text-transform:capitalize}.ds-mini-progress{width:60px;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.ds-mini-fill{height:100%;border-radius:3px;transition:width .3s ease;background:linear-gradient(90deg,#00d4ff,#0f8)}.ds-actions{display:flex;flex-direction:column;gap:.5rem}.ds-action-btn{width:100%;justify-content:center;padding:.75rem 1rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.btn-primary{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000;border:none}.btn-secondary{background:transparent;color:#00d4ff;border:1px solid rgba(0,212,255,.3)}.btn-secondary:hover:not(:disabled){background:#00d4ff1a;border-color:#00d4ff}.btn-success{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.btn-success:hover:not(:disabled){background:#22c55e40;box-shadow:0 0 15px #22c55e4d}.btn-warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.btn-warning:hover:not(:disabled){background:#f59e0b40}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.ds-spec-card{cursor:pointer;transition:all .2s ease;border:1px solid rgba(0,212,255,.2);background:#00d4ff0d;border-radius:10px;padding:1rem}.ds-spec-card:hover{border-color:#00d4ff80;background:#00d4ff1a;transform:translateY(-2px);box-shadow:0 4px 20px #00d4ff26}.ds-spec-preview{font-size:.8rem;color:#a1a1aa}.ds-spec-preview strong{display:block;color:#fff;margin-bottom:.5rem}.ds-spec-preview p{margin-bottom:.5rem;line-height:1.5}.ds-spec-click-hint{color:#00d4ff;font-size:.75rem;display:flex;align-items:center;gap:.25rem;margin-top:.75rem}@media(max-width:1024px){.ds-grid{grid-template-columns:1fr}.ds-sidebar{position:relative;top:0;max-height:none;overflow-y:visible}}.ds-state-badge.ds-state-clickable{cursor:pointer;transition:all .2s ease}.ds-state-badge.ds-state-clickable:hover{transform:scale(1.05);box-shadow:0 0 12px var(--state-color);filter:brightness(1.2)}.spec-review-modal{width:90%;max-width:1000px;max-height:90vh;overflow-y:auto;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-primary);position:relative}.spec-review-modal .modal-close{position:absolute;top:16px;right:16px;background:transparent;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;z-index:10;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s ease}.spec-review-modal .modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.ds-intake-tools{padding:8px 16px;border-top:1px solid var(--border-primary);background:var(--bg-secondary)}.ds-intake-toggle{display:flex;align-items:center;gap:8px;background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:8px 0;font-size:13px;width:100%;transition:color .2s ease}.ds-intake-toggle:hover{color:var(--text-primary)}.ds-intake-options{display:flex;flex-direction:column;gap:12px;padding:12px 0}.ds-intake-option{display:flex;flex-direction:column;gap:4px}.ds-intake-option .btn-secondary{display:flex;align-items:center;gap:8px;width:-moz-fit-content;width:fit-content}.ds-intake-hint{font-size:11px;color:var(--text-tertiary);padding-left:4px}.ds-url-input .ds-url-row{display:flex;gap:8px;align-items:center}.ds-url-input .form-input{flex:1;padding:8px 12px;font-size:13px}.ds-url-input .btn-secondary{white-space:nowrap}.ds-activity-feed{margin-top:16px;animation:slideInUp .3s ease-out}.ds-activity-feed .activity-feed{background:#1a1a2ecc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ds-sidebar .activity-feed--embedded{max-height:400px}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.ds-session-timeline{margin-top:16px;animation:slideInUp .3s ease-out}.ds-session-timeline .session-timeline{background:#1a1a2ecc;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.ds-sidebar .session-timeline{max-height:600px}.mockup-viewer{display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0000004d;overflow:hidden;position:relative}.mockup-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#0006;border-bottom:1px solid rgba(255,255,255,.1)}.mockup-info{display:flex;align-items:center;gap:8px;color:#ffffffe6;font-size:14px}.mockup-title{font-weight:500}.last-updated{color:#ffffff80;font-size:12px}.connection-warning{color:orange;font-size:12px;cursor:help}.mockup-actions{display:flex;gap:8px}.mockup-viewer button{display:flex;align-items:center;gap:6px;padding:6px 12px;border:1px solid rgba(255,255,255,.2);border-radius:6px;background:#0000004d;color:#ffffffe6;font-size:13px;cursor:pointer;transition:all .2s ease}.mockup-viewer button:hover:not(:disabled){background:#ffffff1a;border-color:#ffffff4d}.mockup-viewer button:disabled{opacity:.5;cursor:not-allowed}.regenerate-btn{color:#00d4ff;border-color:#00d4ff4d}.regenerate-btn:hover:not(:disabled){background:#00d4ff1a;border-color:#00d4ff80}.refresh-btn{padding:6px 10px}.retry-btn{margin-top:16px}.mockup-iframe{flex:1;width:100%;border:none;background:#fff}.mockup-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#ffffffb3;text-align:center;padding:32px}.mockup-state svg{margin-bottom:16px;opacity:.6}.state-message{font-size:16px;font-weight:500;margin:0 0 8px}.error-details,.empty-hint{font-size:13px;color:#ffffff80;margin:0;max-width:400px}.mockup-state.error svg{color:#f44}.mockup-state.empty svg{color:#00d4ff}.mockup-overlay{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000c;color:#ffffffe6;z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.mockup-overlay p{margin:16px 0 0;font-size:14px}.spinner{animation:spin 1s linear infinite}@media(max-width:768px){.mockup-header{flex-direction:column;gap:12px;align-items:stretch}.mockup-info,.mockup-actions{justify-content:center}.mockup-viewer button{flex:1}.last-updated{display:none}}.failure-recovery-card{background:#ef44440d;border:1px solid rgba(239,68,68,.2);border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.frc-header{display:flex;align-items:flex-start;gap:1rem}.frc-icon-container{width:48px;height:48px;border-radius:12px;background:#ef444426;display:flex;align-items:center;justify-content:center;color:var(--color-red, #ef4444);flex-shrink:0}.frc-title-area{display:flex;flex-direction:column;gap:.25rem}.frc-title{font-size:1.125rem;font-weight:600;color:#fff;margin:0}.frc-error-code{font-size:.75rem;font-family:SF Mono,Monaco,monospace;color:#a1a1aa;background:#ffffff0d;padding:.125rem .5rem;border-radius:4px;display:inline-block;width:-moz-fit-content;width:fit-content}.frc-message{display:flex;flex-direction:column;gap:.5rem}.frc-message p{margin:0;color:#d4d4d8;font-size:.9375rem;line-height:1.5}.frc-suggestion{color:#a1a1aa!important;font-size:.875rem!important}.frc-checkpoint{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ffffff08;border-radius:8px;font-size:.875rem}.frc-checkpoint-label{color:#71717a}.frc-checkpoint-value{color:#d4d4d8;font-weight:500}.frc-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:.5rem}.frc-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.frc-btn-primary{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000}.frc-btn-primary:hover:not(.disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff40}.frc-btn-primary.disabled{opacity:.5;cursor:not-allowed;transform:none}.frc-btn-secondary{background:#ffffff0d;color:#d4d4d8;border:1px solid rgba(255,255,255,.1)}.frc-btn-secondary:hover{background:#ffffff14;color:#fff;border-color:#fff3}.frc-btn-tertiary{background:transparent;color:#a1a1aa;padding:.625rem .75rem}.frc-btn-tertiary:hover{color:#fff;background:#ffffff0d}.frc-btn-tertiary svg:last-child{opacity:.5;margin-left:.125rem}.frc-retry-count{font-size:.75rem;opacity:.7;margin-left:.25rem}.frc-btn .spin{animation:spin 1s linear infinite}.frc-max-retries{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ef44441a;border-radius:8px;font-size:.8125rem;color:#fca5a5}.frc-max-retries svg{flex-shrink:0}.frc-details{border-top:1px solid rgba(255,255,255,.06);padding-top:1rem;margin-top:.5rem}.frc-details-toggle{display:flex;align-items:center;gap:.5rem;background:transparent;border:none;color:#71717a;font-size:.8125rem;cursor:pointer;padding:.5rem 0;transition:color .15s ease}.frc-details-toggle:hover{color:#a1a1aa}.frc-stack-trace{margin-top:.75rem;padding:1rem;background:#0000004d;border-radius:8px;font-family:SF Mono,Monaco,monospace;font-size:.75rem;color:#a1a1aa;overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:200px;overflow-y:auto}@media(max-width:640px){.failure-recovery-card{padding:1rem}.frc-actions{flex-direction:column}.frc-btn{width:100%;justify-content:center}}.activity-timeline{background:#1a1a2e;border-radius:8px;border:1px solid #333;display:flex;flex-direction:column;height:100%;max-height:600px}.activity-timeline-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #333;background:#16213e;border-radius:8px 8px 0 0}.activity-timeline-header h3{font-size:1rem;font-weight:600;color:#fff;margin:0}.activity-timeline-controls{display:flex;align-items:center;gap:.75rem}.connection-status{display:flex;align-items:center;gap:.35rem;font-size:.75rem;padding:.25rem .5rem;border-radius:4px;font-weight:500}.connection-status.connected{color:#10b981;background:#10b98126}.connection-status.disconnected{color:#ef4444;background:#ef444426}.refresh-btn{background:transparent;border:1px solid #333;color:#888;padding:.35rem;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.refresh-btn:hover:not(:disabled){border-color:#00d4ff;color:#00d4ff}.refresh-btn .spinning{animation:spin 1s linear infinite}.activity-timeline-content{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.activity-entry{background:var(--category-bg, rgba(107, 114, 128, .1));border-left:3px solid var(--category-color, #6b7280);border-radius:0 6px 6px 0;transition:all .2s}.activity-entry:hover{background:#ffffff0d}.activity-entry-new{animation:slideIn .3s ease-out,glow 1s ease-out}@keyframes slideIn{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes glow{0%{box-shadow:0 0 #00d4ff00}50%{box-shadow:0 0 10px #00d4ff4d}to{box-shadow:0 0 #00d4ff00}}.activity-entry-main{display:flex;gap:.75rem;padding:.75rem;cursor:pointer}.activity-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;flex-shrink:0}.activity-header{display:flex;justify-content:space-between;margin-bottom:.25rem}.activity-category{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.activity-time{font-size:.7rem;color:#666}.activity-message{font-size:.875rem;color:#e0e0e0;line-height:1.4}.activity-actor{font-size:.7rem;color:#666;margin-top:.25rem}.activity-expand-btn{background:transparent;border:none;color:#666;cursor:pointer;padding:.25rem;display:flex;align-items:center}.activity-expand-btn:hover{color:#fff}.activity-metadata{background:#0000004d;padding:.75rem;margin:0 .75rem .75rem;border-top:1px solid rgba(255,255,255,.1);border-radius:4px;font-family:Monaco,Menlo,monospace;font-size:.85rem}.metadata-item{display:flex;gap:.5rem;margin-bottom:.35rem}.metadata-item:last-child{margin-bottom:0}.metadata-key{color:#888;white-space:nowrap}.metadata-value{color:#00d4ff;word-break:break-all}.metadata-section{margin-bottom:.75rem}.metadata-label{font-weight:600;color:#9ca3af;margin-bottom:.25rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.metadata-code-block{background:#111827;padding:.75rem;border-radius:.375rem;overflow-x:auto;font-family:JetBrains Mono,Fira Code,monospace;font-size:.8rem;color:#e5e7eb;border:1px solid rgba(255,255,255,.1);white-space:pre-wrap;word-break:break-all}.verification-badge{display:inline-block;padding:.25rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600;text-transform:uppercase}.verification-success{background:#10b98133;color:#34d399;border:1px solid rgba(16,185,129,.3)}.verification-failure{background:#ef444433;color:#f87171;border:1px solid rgba(239,68,68,.3)}.feedback-list{list-style-type:disc;padding-left:1.25rem;margin:0;color:#e5e7eb}.feedback-list li{margin-bottom:.25rem}.activity-empty,.activity-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1rem;color:#666;text-align:center}.activity-empty span,.activity-loading span{margin-top:.75rem;font-size:.875rem}.activity-empty p{font-size:.75rem;color:#555;margin-top:.5rem}.activity-spinner{width:24px;height:24px;border:2px solid #333;border-top-color:#00d4ff;border-radius:50%;animation:spin 1s linear infinite}.activity-error{display:flex;align-items:center;gap:.5rem;padding:.75rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.875rem}.activity-timeline-content::-webkit-scrollbar{width:6px}.activity-timeline-content::-webkit-scrollbar-track{background:transparent}.activity-timeline-content::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.activity-timeline-content::-webkit-scrollbar-thumb:hover{background:#444}.kanban-main{flex:1;margin-left:260px;min-height:100vh;background:#09090b;display:flex;flex-direction:column;width:calc(100vw - 260px);max-width:calc(100vw - 260px);overflow-x:hidden}.kanban-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 100%)}.kanban-title h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:600;color:#fff;letter-spacing:-.02em}.kanban-title p{color:#71717a;font-size:.9rem;margin:0}.kanban-controls{display:flex;align-items:center;gap:.75rem}.filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.5rem 2rem .5rem .875rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;cursor:pointer;min-width:160px;transition:all .15s ease}.filter-select:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.refresh-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a1a1aa;cursor:pointer;font-size:.875rem;transition:all .15s ease}.refresh-btn:hover:not(:disabled){background:#ffffff14;color:#fff}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.refresh-icon{display:inline-block;transition:transform .3s}.column-toggles{display:flex;gap:.375rem;padding:.75rem 2rem;background:#0003;border-bottom:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.view-toggle{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .625rem;background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#71717a;cursor:pointer;font-size:.75rem;transition:all .15s ease}.view-toggle:hover{background:#ffffff0d;color:#a1a1aa}.view-toggle.active{background:var(--toggle-bg, rgba(0, 212, 255, .15));border-color:var(--toggle-color, rgba(0, 212, 255, .3));color:var(--toggle-color, #00d4ff)}.toggle-count{font-weight:600;opacity:.8}.error-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 2rem;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.2);color:#f87171;font-size:.875rem}.kanban-board{display:flex;gap:1rem;padding:1.5rem 2rem;flex:1;overflow-x:auto;overflow-y:hidden;align-items:flex-start;width:100%;max-width:100%}.kanban-column{flex:0 0 280px;min-width:280px;background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.06);border-radius:12px;display:flex;flex-direction:column;max-height:calc(100vh - 220px)}.kanban-column.drag-over{border-color:#00d4ff;background:#00d4ff0d;box-shadow:0 0 20px #00d4ff1a}.column-header{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1rem;border-bottom:1px solid rgba(255,255,255,.06)}.column-title{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:600;color:#fff}.column-title:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--column-color, #71717a)}.column-count{padding:.2rem .5rem;background:#ffffff0d;border-radius:4px;font-size:.75rem;color:#71717a;font-weight:500}.column-body{flex:1;padding:.75rem;overflow-y:auto;display:flex;flex-direction:column;gap:.5rem}.column-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;color:#52525b;text-align:center;font-size:.8rem}.kanban-card{background:#0000004d;border:1px solid rgba(255,255,255,.06);border-radius:8px;padding:.875rem;cursor:grab;transition:all .15s ease}.kanban-card:hover{background:#0006;border-color:#ffffff1a;transform:translateY(-1px)}.kanban-card:active{cursor:grabbing}.kanban-card.dragging{opacity:.5;transform:rotate(2deg)}.card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.card-id{color:#52525b;font-family:ui-monospace,monospace;font-size:.7rem}.card-scope{padding:.15rem .375rem;border-radius:3px;font-size:.65rem;font-weight:700}.card-title{color:#e4e4e7;font-size:.85rem;font-weight:500;line-height:1.4;margin-bottom:.625rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card-footer{display:flex;justify-content:space-between;align-items:center}.card-project{color:#71717a;font-size:.75rem;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-assignee{display:flex;align-items:center;gap:.25rem;color:#a855f7;font-size:.7rem}.modal-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#0f0f12;border:1px solid rgba(255,255,255,.1);border-radius:12px;width:100%;max-width:520px;max-height:85vh;overflow-y:auto;margin:1rem;animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.06)}.modal-title-area{flex:1}.modal-ticket-id{color:#52525b;font-family:ui-monospace,monospace;font-size:.8rem;display:block;margin-bottom:.25rem}.modal-header h2{margin:0;font-size:1.125rem;font-weight:600;color:#fff;letter-spacing:-.01em}.modal-close{background:none;border:none;color:#52525b;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .15s}.modal-close:hover{color:#fff}.modal-body{padding:1.5rem}.detail-row{display:flex;justify-content:space-between;align-items:center;padding:.625rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.detail-row:last-child{border-bottom:none}.detail-row label{color:#71717a;font-size:.8rem}.detail-row span,.detail-row a{color:#e4e4e7;font-size:.875rem}.detail-row a{color:#00d4ff;text-decoration:none}.detail-row a:hover{text-decoration:underline}.state-badge{display:inline-block;padding:.3rem .625rem;border-radius:4px;font-size:.75rem;font-weight:500}.detail-block{margin-top:1rem}.detail-block label{display:block;color:#71717a;font-size:.8rem;margin-bottom:.5rem}.description-box{background:#0000004d;padding:1rem;border-radius:8px;color:#a1a1aa;line-height:1.6;white-space:pre-wrap;font-size:.875rem;border:1px solid rgba(255,255,255,.04)}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}.btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .875rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#a1a1aa;cursor:pointer;font-size:.875rem;text-decoration:none;transition:all .15s ease}.btn-secondary:hover{background:#ffffff14;color:#fff}.btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:linear-gradient(135deg,#00d4ff,#0ea5e9);border:none;border-radius:8px;color:#000;font-size:.875rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all .15s ease}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff40}@media(max-width:1024px){.kanban-main{margin-left:72px;width:calc(100vw - 72px);max-width:calc(100vw - 72px)}}@media(max-width:768px){.kanban-main{margin-left:0;width:100vw;max-width:100vw}.kanban-header{flex-direction:column;gap:1rem;padding:1rem}.kanban-controls{width:100%;flex-wrap:wrap}.kanban-board{padding:1rem}.kanban-column{flex:0 0 260px;min-width:260px}}.column-body::-webkit-scrollbar{width:6px}.column-body::-webkit-scrollbar-track{background:transparent}.column-body::-webkit-scrollbar-thumb{background:#333;border-radius:3px}.column-body::-webkit-scrollbar-thumb:hover{background:#444}.kanban-board::-webkit-scrollbar{height:8px}.kanban-board::-webkit-scrollbar-track{background:#ffffff05;border-radius:4px}.kanban-board::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.agent-card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;gap:.875rem}.agent-card:hover{background:#ffffff0a;border-color:#7c3aed4d;box-shadow:0 4px 20px #0000004d,0 0 0 1px #7c3aed26;transform:translateY(-2px)}.agent-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem}.agent-card-title{display:flex;align-items:center;gap:.5rem;flex:1;min-width:0}.agent-icon{flex-shrink:0;color:#a855f7}.agent-name{font-size:1rem;font-weight:600;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.agent-version{font-size:.75rem;color:#71717a;flex-shrink:0}.agent-badges{display:flex;gap:.375rem;flex-shrink:0}.badge{display:inline-flex;align-items:center;padding:.25rem .5rem;border-radius:6px;font-size:.7rem;font-weight:500;text-transform:uppercase;letter-spacing:.025em}.agent-description{margin:0;font-size:.875rem;color:#a1a1aa;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.agent-tags{display:flex;flex-wrap:wrap;gap:.375rem}.tag{display:inline-flex;align-items:center;padding:.25rem .5rem;background:#ffffff0d;border-radius:4px;font-size:.7rem;color:#71717a}.tag-more{background:#7c3aed1a;color:#a78bfa}.agent-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid rgba(255,255,255,.06);margin-top:auto}.meta-author,.meta-date{font-size:.75rem;color:#52525b}.agent-stats{display:flex;align-items:center;gap:1rem}.stat{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:#71717a}.stat svg{flex-shrink:0}.text-green{color:#4ade80}.text-yellow{color:#facc15}.text-red{color:#f87171}@media(max-width:768px){.agent-card{padding:1rem}.agent-badges{flex-wrap:wrap}}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.25rem;padding:1.5rem 2rem}.page-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 100%)}.page-title h1{margin:0 0 .25rem;font-size:1.75rem;font-weight:600;color:#fff;letter-spacing:-.02em;display:flex;align-items:center;gap:.75rem}.page-title p{color:#71717a;font-size:.9rem;margin:0}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.75rem;height:1.75rem;padding:0 .5rem;background:linear-gradient(135deg,#7c3aed,#a855f7);border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.page-actions{display:flex;align-items:center;gap:.75rem}.filters-bar{display:flex;align-items:center;gap:1rem;padding:.75rem 2rem;background:#ffffff05;border-bottom:1px solid rgba(255,255,255,.04)}.search-input{position:relative;flex:1;max-width:400px}.search-input svg{position:absolute;left:.875rem;top:50%;transform:translateY(-50%);color:#71717a}.search-input input{width:100%;padding:.5rem .875rem .5rem 2.5rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;transition:all .15s ease}.search-input input:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.search-input input::-moz-placeholder{color:#52525b}.search-input input::placeholder{color:#52525b}.filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.5rem 2rem .5rem .875rem;background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:.875rem;cursor:pointer;min-width:140px;transition:all .15s ease;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2371717a'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .5rem center;background-size:1rem}.filter-select:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px #7c3aed26}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#71717a}.loading-state svg,.empty-state svg{margin-bottom:1rem;color:#52525b}.loading-state p,.empty-state p{margin:0 0 1.5rem;font-size:1rem;color:#a1a1aa}.empty-state h3{margin:0 0 .5rem;font-size:1.25rem;font-weight:600;color:#fff}.error-banner{display:flex;align-items:center;gap:.75rem;padding:.875rem 2rem;background:#ef44441a;border-bottom:1px solid rgba(239,68,68,.2);color:#fca5a5;font-size:.875rem}.error-banner svg{flex-shrink:0;color:#ef4444}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.5rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .15s ease;border:none}.btn-primary{background:linear-gradient(135deg,#7c3aed,#a855f7);color:#fff}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#6d28d9,#9333ea);box-shadow:0 4px 12px #7c3aed66}.btn-secondary{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:#a1a1aa}.btn-secondary:hover:not(:disabled){background:#ffffff14;color:#fff}.learning-main{padding:2rem;max-width:1600px}.learning-header{margin-bottom:2rem}.learning-title-row{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1rem}.learning-title-group h1{display:flex;align-items:center;gap:.75rem;font-size:1.75rem;font-weight:600;color:var(--text-primary);margin:0}.learning-title-icon{width:28px;height:28px;color:var(--color-purple)}.learning-subtitle{color:var(--text-secondary);margin-top:.25rem;font-size:.95rem}.learning-actions{display:flex;gap:.75rem}.hero-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}@media(max-width:1200px){.hero-metrics{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.hero-metrics{grid-template-columns:1fr}}.hero-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem;transition:transform .2s,box-shadow .2s}.hero-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.hero-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.hero-card-label{font-size:.85rem;color:var(--text-secondary);font-weight:500}.hero-card-icon{width:20px;height:20px;opacity:.7}.hero-blue .hero-card-icon{color:var(--color-blue)}.hero-green .hero-card-icon{color:var(--color-green)}.hero-yellow .hero-card-icon{color:var(--color-yellow)}.hero-purple .hero-card-icon{color:var(--color-purple)}.hero-card-value{font-size:2rem;font-weight:700;color:var(--text-primary);display:flex;align-items:center;gap:.5rem}.hero-card-subtitle{font-size:.8rem;color:var(--text-tertiary);margin-top:.5rem}.trend-badge{display:inline-flex;padding:2px 6px;border-radius:6px;font-size:.7rem}.trend-up{background:var(--color-green-bg);color:var(--color-green)}.trend-down{background:var(--color-red-bg);color:var(--color-red)}.learning-loop-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem;margin-bottom:2rem}.section-title{display:flex;align-items:center;gap:.5rem;font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 1rem}.learning-loop{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;overflow-x:auto}.loop-step{display:flex;flex-direction:column;align-items:center;text-align:center;flex:1;min-width:120px}.loop-step-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary);border:2px solid var(--border-color);position:relative;transition:all .3s}.loop-step-active .loop-step-icon{background:var(--color-green-bg);border-color:var(--color-green)}.loop-step-processing .loop-step-icon{background:var(--color-blue-bg);border-color:var(--color-blue)}.processing-indicator{position:absolute;top:-4px;right:-4px;width:12px;height:12px;border-radius:50%;background:var(--color-blue);animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.2)}}.loop-step-label{font-size:.9rem;font-weight:600;color:var(--text-primary);margin-top:.75rem}.loop-step-value{font-size:1.25rem;font-weight:700;color:var(--color-blue);margin-top:.25rem}.loop-step-detail{font-size:.75rem;color:var(--text-tertiary);margin-top:.25rem}.loop-arrow{width:24px;height:24px;color:var(--text-tertiary);flex-shrink:0}.dashboard-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:1.5rem}@media(max-width:1024px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-column{display:flex;flex-direction:column;gap:1.5rem}.chart-section,.health-section,.action-items-section,.entries-section,.activity-section{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;padding:1.25rem}.chart-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;color:var(--text-tertiary);gap:.5rem}.velocity-chart{padding:1rem 0}.velocity-bars{display:flex;align-items:flex-end;justify-content:space-around;height:150px;gap:.5rem}.velocity-bar-group{display:flex;flex-direction:column;align-items:center;flex:1}.velocity-bar-container{width:100%;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.velocity-bar{width:70%;max-width:40px;background:linear-gradient(180deg,var(--color-green) 0%,var(--color-green-dark) 100%);border-radius:4px 4px 0 0;transition:height .5s ease-out}.velocity-bar-value{font-size:.75rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.velocity-bar-label{font-size:.7rem;color:var(--text-tertiary);margin-top:.5rem}.velocity-legend{display:flex;justify-content:center;margin-top:1rem;gap:1rem}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--text-secondary)}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-dot.green{background:var(--color-green)}.health-distribution{display:flex;flex-direction:column;gap:.75rem}.health-row{display:flex;align-items:center;gap:.75rem}.health-label{display:flex;align-items:center;gap:.5rem;width:100px;font-size:.85rem;color:var(--text-secondary)}.health-label svg{flex-shrink:0}.health-label svg.green{color:var(--color-green)}.health-label svg.red{color:var(--color-red)}.health-label svg.blue{color:var(--color-blue)}.health-label svg.purple{color:var(--color-purple)}.health-bar-container{flex:1;height:20px;background:var(--bg-secondary);border-radius:4px;overflow:hidden}.health-bar{height:100%;border-radius:4px;transition:width .5s ease-out}.health-bar.green{background:var(--color-green)}.health-bar.red{background:var(--color-red)}.health-bar.blue{background:var(--color-blue)}.health-bar.purple{background:var(--color-purple)}.health-stats{display:flex;align-items:center;gap:.75rem;width:70px}.health-count{font-size:.85rem;font-weight:600;color:var(--text-primary);min-width:30px;text-align:right}.health-score{font-size:.75rem;padding:2px 6px;border-radius:4px;font-weight:500}.health-score.good{background:var(--color-green-bg);color:var(--color-green)}.health-score.ok{background:var(--color-yellow-bg);color:var(--color-yellow-dark)}.health-score.bad{background:var(--color-red-bg);color:var(--color-red)}.action-items{display:flex;flex-direction:column;gap:.75rem}.action-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:8px;font-size:.9rem}.action-item.warning{background:var(--color-yellow-bg);color:var(--color-yellow-dark)}.action-item.info{background:var(--color-blue-bg);color:var(--color-blue)}.action-item.success{background:var(--color-green-bg);color:var(--color-green)}.action-item span{flex:1}.action-btn{padding:4px 12px;font-size:.8rem;border-radius:6px;background:#fff;border:1px solid currentColor;cursor:pointer;transition:background .2s}.action-btn:hover{background:#ffffffe6}.entries-section{min-height:400px}.entries-header{display:flex;flex-direction:column;gap:1rem;margin-bottom:1rem}.entries-filters{display:flex;gap:.75rem;flex-wrap:wrap}.search-box{display:flex;align-items:center;gap:.5rem;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;padding:.5rem .75rem;flex:1;min-width:200px}.search-box svg{color:var(--text-tertiary);flex-shrink:0}.search-box input{flex:1;border:none;background:transparent;font-size:.9rem;color:var(--text-primary)}.search-box input:focus{outline:none}.entries-filters select{padding:.5rem .75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);font-size:.85rem;color:var(--text-primary);cursor:pointer}.entries-list{display:flex;flex-direction:column;gap:.5rem;max-height:500px;overflow-y:auto}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-tertiary);gap:.75rem}.empty-state.small{padding:1.5rem}.playbook-entry{border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);transition:all .2s}.playbook-entry:hover{border-color:var(--color-blue)}.playbook-entry.expanded{background:var(--card-bg);box-shadow:0 2px 8px #00000014}.entry-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer}.entry-type-badge{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.entry-type-badge[data-type=strategy]{background:var(--color-green-bg);color:var(--color-green)}.entry-type-badge[data-type=mistake]{background:var(--color-red-bg);color:var(--color-red)}.entry-type-badge[data-type=pattern]{background:var(--color-blue-bg);color:var(--color-blue)}.entry-type-badge[data-type=context]{background:var(--color-purple-bg);color:var(--color-purple)}.entry-content-preview{flex:1;font-size:.9rem;color:var(--text-primary);line-height:1.4}.entry-meta{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.entry-score{font-size:.8rem;font-weight:600;padding:2px 8px;border-radius:4px}.entry-score.good{background:var(--color-green-bg);color:var(--color-green)}.entry-score.ok{background:var(--color-yellow-bg);color:var(--color-yellow-dark)}.entry-score.bad{background:var(--color-red-bg);color:var(--color-red)}.entry-details{padding:0 1rem 1rem;border-top:1px solid var(--border-color);margin-top:.5rem}.entry-full-content{font-size:.9rem;color:var(--text-primary);line-height:1.6;padding:1rem 0;white-space:pre-wrap}.entry-info-row{display:flex;align-items:center;gap:1rem;padding:.75rem 0;border-top:1px solid var(--border-color);flex-wrap:wrap}.entry-scope{font-size:.8rem;color:var(--text-secondary);background:var(--bg-secondary);padding:2px 8px;border-radius:4px}.entry-tags{display:flex;gap:.5rem}.tag{font-size:.75rem;padding:2px 8px;border-radius:4px;background:var(--color-blue-bg);color:var(--color-blue)}.entry-date{font-size:.8rem;color:var(--text-tertiary);margin-left:auto}.entry-actions{display:flex;align-items:center;justify-content:space-between;padding-top:.75rem;border-top:1px solid var(--border-color)}.vote-buttons{display:flex;gap:.5rem}.vote-btn{display:flex;align-items:center;gap:.35rem;padding:6px 12px;border-radius:6px;font-size:.85rem;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .2s}.vote-btn.helpful{background:var(--color-green-bg);color:var(--color-green)}.vote-btn.helpful:hover{background:var(--color-green);color:#fff}.vote-btn.harmful{background:var(--color-red-bg);color:var(--color-red)}.vote-btn.harmful:hover{background:var(--color-red);color:#fff}.archive-btn{display:flex;align-items:center;gap:.35rem;padding:6px 12px;border-radius:6px;font-size:.85rem;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s}.archive-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.activity-section{max-height:350px;display:flex;flex-direction:column}.activity-feed{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;flex:1}.activity-item{display:flex;gap:.75rem;padding:.75rem;border-radius:8px;background:var(--bg-secondary)}.activity-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.activity-icon.success{background:var(--color-green-bg);color:var(--color-green)}.activity-icon.failure{background:var(--color-red-bg);color:var(--color-red)}.activity-content{flex:1;min-width:0}.activity-title{font-size:.9rem;font-weight:500;color:var(--text-primary)}.activity-meta{font-size:.8rem;color:var(--text-secondary);margin-top:.25rem}.activity-time{font-size:.75rem;color:var(--text-tertiary);margin-top:.25rem;display:flex;align-items:center;gap:.5rem}.ticket-id{font-family:monospace;background:var(--bg-secondary);padding:1px 6px;border-radius:4px;font-size:.7rem}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:var(--card-bg);border-radius:12px;padding:1.5rem;width:100%;max-width:500px;max-height:90vh;overflow-y:auto}.modal-title{display:flex;align-items:center;gap:.5rem;font-size:1.25rem;font-weight:600;color:var(--text-primary);margin:0 0 1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.9rem;font-weight:500;color:var(--text-primary);margin-bottom:.5rem}.type-selector{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.type-option{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;border-radius:8px;border:2px solid var(--border-color);background:transparent;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.type-option:hover{border-color:var(--color-blue)}.type-option.active{border-color:currentColor;background:var(--bg-secondary)}.type-option.green.active{border-color:var(--color-green);color:var(--color-green)}.type-option.red.active{border-color:var(--color-red);color:var(--color-red)}.type-option.blue.active{border-color:var(--color-blue);color:var(--color-blue)}.type-option.purple.active{border-color:var(--color-purple);color:var(--color-purple)}.type-description{font-size:.8rem;color:var(--text-tertiary);margin-top:.75rem}.form-group textarea{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);font-size:.9rem;color:var(--text-primary);resize:vertical;font-family:inherit}.form-group textarea:focus{outline:none;border-color:var(--color-blue)}.form-group select{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);font-size:.9rem;color:var(--text-primary);cursor:pointer}.modal-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid var(--border-color)}.btn-cancel{padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s}.btn-cancel:hover{background:var(--bg-secondary)}.btn-primary{padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;background:var(--color-blue);border:none;color:#fff;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-primary:hover{background:var(--color-blue-dark)}.btn-refresh{padding:.6rem 1rem;border-radius:8px;font-size:.9rem;font-weight:500;background:var(--bg-secondary);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.5rem}.btn-refresh:hover{background:var(--card-bg);border-color:var(--color-blue);color:var(--color-blue)}:root{--color-green: #22c55e;--color-green-dark: #16a34a;--color-green-bg: rgba(34, 197, 94, .1);--color-red: #ef4444;--color-red-bg: rgba(239, 68, 68, .1);--color-blue: #3b82f6;--color-blue-dark: #2563eb;--color-blue-bg: rgba(59, 130, 246, .1);--color-yellow: #eab308;--color-yellow-dark: #ca8a04;--color-yellow-bg: rgba(234, 179, 8, .1);--color-purple: #a855f7;--color-purple-bg: rgba(168, 85, 247, .1)}.detail-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.06);background:linear-gradient(135deg,rgba(255,255,255,.02) 0%,transparent 100%)}.back-link{display:inline-flex;align-items:center;gap:.5rem;color:#71717a;text-decoration:none;font-size:.875rem;margin-bottom:1rem;transition:color .15s ease}.back-link:hover{color:#a855f7}.detail-title-row{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.detail-title{display:flex;align-items:flex-start;gap:1rem}.detail-title .agent-icon{color:#a855f7;flex-shrink:0}.detail-title h1{margin:0;font-size:1.75rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.75rem}.detail-title .version{font-size:.875rem;font-weight:400;color:#71717a}.detail-title .author{margin:.25rem 0 0;color:#52525b;font-size:.875rem}.detail-actions{display:flex;gap:.75rem}.detail-tabs{display:flex;gap:.25rem;padding:0 2rem;border-bottom:1px solid rgba(255,255,255,.06)}.tab{padding:.875rem 1.25rem;background:transparent;border:none;color:#71717a;font-size:.875rem;font-weight:500;cursor:pointer;position:relative;transition:color .15s ease}.tab:hover{color:#a1a1aa}.tab.active{color:#fff}.tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,#7c3aed,#a855f7)}.detail-content{padding:2rem}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.25rem}.card{background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem}.card h3{margin:0 0 1rem;font-size:1rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.card p{margin:0;color:#a1a1aa;line-height:1.6}.stats-grid{display:flex;flex-direction:column;gap:1rem}.stat-item{display:flex;align-items:center;gap:.875rem;padding:.75rem;background:#ffffff08;border-radius:8px}.stat-item svg{color:#71717a}.stat-item .text-green{color:#4ade80}.stat-value{display:block;font-size:1.25rem;font-weight:600;color:#fff}.stat-label{font-size:.75rem;color:#71717a}.specs-list{margin:0}.spec-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.04)}.spec-row:last-child{border-bottom:none}.spec-row dt{color:#71717a;font-size:.875rem}.spec-row dd{margin:0;color:#fff;font-size:.875rem}.tags-section{margin-top:1.25rem;padding-top:1.25rem;border-top:1px solid rgba(255,255,255,.06)}.tags-section h4{margin:0 0 .75rem;font-size:.8rem;font-weight:500;color:#71717a;text-transform:uppercase;letter-spacing:.05em}.tags-list{display:flex;flex-wrap:wrap;gap:.375rem}.executions-table{width:100%;border-collapse:collapse}.executions-table th{text-align:left;padding:.75rem 1rem;font-size:.75rem;font-weight:500;color:#71717a;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.executions-table td{padding:.875rem 1rem;font-size:.875rem;color:#a1a1aa;border-bottom:1px solid rgba(255,255,255,.04)}.exec-id{font-family:monospace;color:#71717a}.status-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.25rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-success{background:#4ade8026;color:#4ade80}.status-failed{background:#f8717126;color:#f87171}.status-running{background:#7c3aed26;color:#a78bfa}.config-note{color:#52525b;font-style:italic}.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;text-align:center;color:#f87171}.error-state h3{margin:1rem 0 .5rem;color:#fff}.error-state p{color:#a1a1aa;margin-bottom:1.5rem}.badge-runtime{background:#7c3aed26;color:#c4b5fd;border:1px solid rgba(124,58,237,.2)}.badge-memory{background:#06b6d426;color:#67e8f9;border:1px solid rgba(6,182,212,.2)}.tab .text-green{color:#4ade80}.tab .pulse{animation:pulse 2s infinite}.activity-section{padding:1rem 0}.signin-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:20px}.signin-card{background:#ffffff0d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:40px;width:100%;max-width:400px;box-shadow:0 25px 50px -12px #00000080}.signin-header{text-align:center;margin-bottom:32px}.signin-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:8px}.logo-icon{font-size:40px}.signin-logo h1{font-size:32px;font-weight:700;color:#fff;margin:0}.signin-subtitle{color:#f59e0b;font-size:14px;font-weight:500;margin:0;text-transform:uppercase;letter-spacing:1px}.signin-form{display:flex;flex-direction:column;gap:20px}.signin-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:8px;font-size:14px;display:flex;align-items:center;gap:8px}.error-icon{font-size:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{color:#94a3b8;font-size:14px;font-weight:500}.form-group input{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:12px 16px;font-size:16px;color:#fff;transition:all .2s ease}.form-group input:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b1a}.form-group input::-moz-placeholder{color:#64748b}.form-group input::placeholder{color:#64748b}.form-group input:disabled{opacity:.6;cursor:not-allowed}.signin-button{background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;padding:14px 24px;font-size:16px;font-weight:600;color:#1a1a2e;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px}.signin-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px -10px #f59e0b80}.signin-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.button-spinner{width:18px;height:18px;border:2px solid rgba(26,26,46,.3);border-top-color:#1a1a2e;border-radius:50%;animation:spin .8s linear infinite}.signin-footer{margin-top:24px;text-align:center}.env-badge{display:inline-flex;align-items:center;gap:8px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.2);padding:6px 12px;border-radius:20px;font-size:12px;color:#f59e0b;font-weight:500}.env-dot{width:8px;height:8px;background:#f59e0b;border-radius:50%;animation:pulse 2s ease-in-out infinite}.mcp-factory{padding:24px;max-width:1200px}.page-header{margin-bottom:24px}.header-title{display:flex;align-items:center;gap:12px}.header-title h1{margin:0;font-size:1.75rem;color:var(--text-primary)}.header-subtitle{color:var(--text-secondary);margin-top:4px}.factory-tabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:1px solid var(--border-color);padding-bottom:8px}.tab{display:flex;align-items:center;gap:8px;padding:10px 20px;background:transparent;border:none;border-radius:6px;cursor:pointer;color:var(--text-secondary);font-weight:500;transition:all .2s}.tab:hover{background:var(--bg-hover);color:var(--text-primary)}.tab.active{background:var(--primary-color);color:#fff}.factory-content{display:flex;flex-direction:column;gap:24px}.input-section{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:20px}.input-section label{display:block;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.input-section textarea{width:100%;padding:12px;border:1px solid var(--border-color);border-radius:6px;font-family:inherit;font-size:14px;resize:vertical;background:var(--bg-input);color:var(--text-primary)}.input-section textarea:focus{outline:none;border-color:var(--primary-color)}.action-buttons{margin-top:16px;display:flex;gap:12px}.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-weight:500;cursor:pointer;transition:all .2s}.btn.primary{background:var(--primary-color);color:#fff}.btn.primary:hover:not(:disabled){background:var(--primary-hover)}.btn.secondary{background:var(--secondary-color);color:#fff}.btn.secondary:hover:not(:disabled){opacity:.9}.btn.icon{padding:8px;background:transparent;color:var(--text-secondary)}.btn.icon:hover{background:var(--bg-hover)}.btn.small{padding:6px 12px;font-size:13px}.spinning{animation:spin 1s linear infinite}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.section-header h3{margin:0;font-size:1.1rem;color:var(--text-primary)}.empty-state{color:var(--text-secondary);text-align:center;padding:24px}.current-job{margin-bottom:24px}.jobs-list{display:flex;flex-direction:column;gap:8px}.job-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.job-card.active{border-color:var(--primary-color)}.job-header{display:flex;align-items:center;gap:12px;padding:12px 16px}.job-header.clickable{cursor:pointer}.job-header.clickable:hover{background:var(--bg-hover)}.job-id{font-family:monospace;color:var(--text-secondary)}.status-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500;margin-left:auto}.status-badge.completed{background:#dcfce7;color:#166534}.status-badge.failed{background:#fee2e2;color:#991b1b}.status-badge.processing{background:#dbeafe;color:#1e40af}.status-icon{width:18px;height:18px}.status-icon.success{color:#22c55e}.status-icon.error{color:#ef4444}.job-result{padding:16px;border-top:1px solid var(--border-color);background:var(--bg-secondary)}.result-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tool-count{font-size:12px;color:var(--text-secondary);background:var(--bg-hover);padding:2px 8px;border-radius:10px}.result-spec{background:var(--bg-code);padding:12px;border-radius:6px;overflow-x:auto;font-size:12px;max-height:300px;overflow-y:auto}.servers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.server-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:16px}.server-header{display:flex;align-items:center;gap:10px;margin-bottom:8px}.server-name{font-weight:600;color:var(--text-primary)}.server-description{color:var(--text-secondary);font-size:14px;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.server-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:12px;color:var(--text-secondary)}.created-at{color:var(--text-muted)}.page-container{display:flex;min-height:100vh;background:#09090b}.page-content{flex:1;padding:2rem;margin-left:260px;max-width:1400px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.header-title{display:flex;align-items:center;gap:.75rem}.header-title h1{font-size:1.75rem;font-weight:700;color:#fff;margin:0}.header-icon{color:#fbbf24}.item-count{background:#ffffff1a;color:#a1a1aa;padding:.25rem .75rem;border-radius:12px;font-size:.8rem}.btn-primary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:linear-gradient(135deg,#00d4ff,#09c);color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-secondary{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.1);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#ffffff26}.btn-danger{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#ef444426;color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-success{display:flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-success:hover{background:#22c55e40}.btn-success:disabled{opacity:.5;cursor:not-allowed}.filter-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.06)}.filter-tab{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:transparent;color:#71717a;border:none;border-radius:8px;font-size:.875rem;cursor:pointer;transition:all .2s}.filter-tab:hover{background:#ffffff0d;color:#fff}.filter-tab.active{background:#00d4ff26;color:#00d4ff}.filter-tab .count{background:#ffffff1a;padding:.125rem .5rem;border-radius:10px;font-size:.75rem}.filter-tab.active .count{background:#00d4ff33}.backlog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}.backlog-card{background:linear-gradient(135deg,#ffffff08,#ffffff03);border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s}.backlog-card:hover{border-color:#00d4ff4d;transform:translateY(-2px)}.backlog-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.state-badge{padding:.25rem .625rem;border-radius:6px;font-size:.75rem;font-weight:600}.card-date{display:flex;align-items:center;gap:.25rem;color:#52525b;font-size:.75rem}.card-title{font-size:1rem;font-weight:600;color:#fff;margin:0 0 .5rem;line-height:1.4}.card-desc{color:#71717a;font-size:.875rem;margin:0 0 1rem;line-height:1.5}.card-actions{display:flex;gap:.5rem;flex-wrap:wrap}.btn-action{display:flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:#ffffff0d;color:#a1a1aa;border:1px solid rgba(255,255,255,.1);border-radius:6px;font-size:.8rem;cursor:pointer;transition:all .2s}.btn-action:hover{background:#ffffff1a;color:#fff}.btn-action.promote{background:#a855f71a;color:#a855f7;border-color:#a855f733}.btn-action.chatting{background:#3b82f61a;color:#3b82f6;border-color:#3b82f633}.btn-action.linked{background:#a855f71a;color:#a855f7;border-color:#a855f733}.loading-state,.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:#71717a;text-align:center}.loading-state p,.empty-state p{margin-top:1rem}.empty-state h3{color:#fff;margin:1rem 0 .5rem}.modal-overlay{position:fixed;inset:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:200;padding:1rem}.modal{box-sizing:border-box;background:#18181b;border:1px solid rgba(255,255,255,.1);border-radius:16px;max-height:90vh;overflow-x:hidden;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 2rem;box-sizing:border-box;border-bottom:1px solid rgba(255,255,255,.06)}.modal-header h3{display:flex;align-items:center;gap:.5rem;margin:0;font-size:1.1rem;color:#fff}.header-left{display:flex;align-items:center;gap:.75rem}.modal-date{color:#52525b;font-size:.8rem}.close-btn{background:transparent;border:none;color:#71717a;cursor:pointer;padding:.25rem;display:flex}.close-btn:hover{color:#fff}.quick-add-modal{width:100%;max-width:480px}.quick-add-modal form{padding:1.5rem}.input-field{width:100%;padding:.875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:8px;color:#fff;font-size:1rem;margin-bottom:1rem;transition:border-color .2s}.input-field:focus{outline:none;border-color:#00d4ff}.input-field::-moz-placeholder{color:#52525b}.input-field::placeholder{color:#52525b}.title-input{font-size:1.25rem;font-weight:600}.desc-input{resize:vertical;min-height:120px;font-family:inherit}.modal-actions{display:flex;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);box-sizing:border-box;width:100%}.action-group{display:flex;flex-wrap:nowrap;gap:.75rem;align-items:center}.modal-actions button{flex-shrink:1;min-width:0}.detail-modal{min-width:600px;width:100%;max-width:900px}.edit-form{padding:1.5rem}.enriched-section{margin-top:1rem;padding:1rem;background:#a855f71a;border:1px solid rgba(168,85,247,.2);border-radius:8px}.enriched-section h4{display:flex;align-items:center;gap:.5rem;color:#a855f7;font-size:.9rem;margin:0 0 .75rem}.enriched-content{color:#e4e4e7;font-size:.9rem;line-height:1.6;white-space:pre-wrap}.view-only{padding:1.5rem}.view-only h2{color:#fff;margin:0 0 1rem}.view-only p{color:#a1a1aa;line-height:1.6;margin-bottom:1.5rem}.confirm-modal{width:100%;max-width:400px;padding:2rem;text-align:center}.confirm-icon{width:64px;height:64px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.25rem}.confirm-icon.danger{background:#ef444426;color:#ef4444}.confirm-icon.success{background:#22c55e26;color:#22c55e}.confirm-modal h3{color:#fff;margin:0 0 .75rem}.confirm-modal p{color:#71717a;margin:0 0 1.5rem;line-height:1.5}.checkbox-label{display:flex;align-items:center;gap:.5rem;color:#a1a1aa;font-size:.9rem;margin-bottom:1.5rem;justify-content:center}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:#00d4ff}.chat-modal{width:100%;max-width:700px;height:80vh;display:flex;flex-direction:column}.chat-container{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-history{flex:1;overflow-x:hidden;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.chat-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#71717a;text-align:center}.chat-empty p{max-width:300px;margin-top:1rem;line-height:1.5}.chat-message{max-width:85%;padding:.875rem 1rem;border-radius:12px;line-height:1.5}.chat-message.user{align-self:flex-end;background:linear-gradient(135deg,#00d4ff,#09c);color:#fff}.chat-message.assistant{align-self:flex-start;background:#ffffff0d;color:#e4e4e7;border:1px solid rgba(255,255,255,.1)}.chat-message.loading{display:flex;align-items:center;gap:.5rem;color:#71717a}.chat-input-area{position:relative;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}.chat-input{width:100%;padding:.875rem 3.5rem .875rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:#fff;font-size:.95rem;min-height:100px;max-height:200px;resize:none;overflow-y:auto;font-family:inherit;line-height:1.5}.chat-input:focus{outline:none;border-color:#00d4ff}.chat-input::-moz-placeholder{color:#52525b}.chat-input::placeholder{color:#52525b}.send-btn{position:absolute;right:1.75rem;bottom:1.25rem;padding:.5rem .75rem;background:linear-gradient(135deg,#00d4ff,#09c);color:#fff;border:none;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.send-btn:hover{transform:translateY(-1px)}.send-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.chat-actions{display:flex;justify-content:space-between;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}@media(max-width:768px){.page-content{margin-left:0;padding:1rem}.backlog-grid{grid-template-columns:1fr}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch}.modal{box-sizing:border-box;max-width:100%;margin:1rem}}.modal-actions .btn-primary,.modal-actions .btn-secondary,.modal-actions .btn-danger{white-space:nowrap;padding:.5rem 1rem}.modal-actions .action-group{flex:1;justify-content:flex-end;min-width:0}.repo-selector{margin-top:12px}.repo-label{display:flex;align-items:center;gap:6px;font-size:13px;color:#a1a1aa;margin-bottom:6px}.repo-selector select.input-field{width:100%;cursor:pointer}.repo-hint{display:block;font-size:11px;color:#71717a;margin-top:4px}.backlog-attachments{margin-top:1.5rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.attachments-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.attachments-header h4{display:flex;align-items:center;gap:.5rem;font-size:.875rem;color:#a1a1aa;margin:0}.no-attachments{color:#71717a;font-size:.8rem;font-style:italic}.attachment-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.attachment-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border-radius:6px;font-size:.85rem}.attachment-item:hover{background:#ffffff0f}.attachment-icon{color:#71717a;display:flex}.attachment-item.type-git_link .attachment-icon{color:#f97316}.attachment-item.type-file .attachment-icon{color:#3b82f6}.attachment-name{flex:1;color:#e4e4e7;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-name:hover{color:#fff;text-decoration:underline}.attachment-size{color:#71717a;font-size:.75rem}.git-badge{background:#f9731633;color:#f97316;padding:.15rem .4rem;border-radius:4px;font-size:.7rem;text-transform:uppercase}.attachment-item .btn-icon.delete{opacity:0;color:#ef4444}.attachment-item:hover .btn-icon.delete{opacity:1}.attachment-modal{width:480px;max-width:95vw}.attachment-tabs{display:flex;gap:.5rem;padding:1rem;border-bottom:1px solid rgba(255,255,255,.1)}.attachment-tabs button{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#a1a1aa;cursor:pointer;transition:all .2s}.attachment-tabs button:hover{background:#ffffff0d}.attachment-tabs button.active{background:#3b82f61a;border-color:#3b82f6;color:#3b82f6}.attachment-content{padding:1.5rem}.upload-zone{text-align:center}.upload-btn{width:100%;padding:2rem;background:#ffffff08;border:2px dashed rgba(255,255,255,.2);border-radius:8px;color:#a1a1aa;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:all .2s}.upload-btn:hover{background:#ffffff0d;border-color:#3b82f6}.upload-btn small{font-size:.75rem;color:#71717a}.upload-progress{margin-top:1rem;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}.upload-progress div{height:100%;background:#3b82f6;transition:width .3s}.link-form{display:flex;flex-direction:column;gap:1rem}.link-form .form-group label{display:block;margin-bottom:.5rem;color:#a1a1aa;font-size:.85rem}.link-form .form-group input{width:100%;padding:.75rem;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:.9rem}.link-form .form-group input:focus{outline:none;border-color:#3b82f6}.link-form .form-group small{display:block;margin-top:.25rem;color:#71717a;font-size:.75rem}.hitl-actions{display:flex;gap:.75rem;margin-top:1rem}.beads-hero{display:flex;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;background:linear-gradient(135deg,#8b5cf61a,#00d4ff0d);border-radius:12px;border:1px solid rgba(255,255,255,.06);margin-bottom:1.5rem}.hero-title h2{font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 .25rem}.hero-subtitle{color:#888;font-size:.9rem;margin:0}.hero-stats{display:flex;gap:1.5rem}.hero-stat{display:flex;flex-direction:column;align-items:center;padding:.75rem 1.25rem;background:#0000004d;border-radius:8px;min-width:70px}.hero-stat .stat-number{font-size:1.5rem;font-weight:700;color:#fff}.hero-stat .stat-label{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.hero-stat.total .stat-number{color:#fff}.hero-stat.open .stat-number{color:#3b82f6}.hero-stat.in-progress .stat-number{color:#00d4ff}.hero-stat.blocked .stat-number{color:#ef4444}.hero-stat.epics .stat-number{color:#8b5cf6}.hero-stat.ready .stat-number{color:#10b981}.status-pills{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.status-pill{display:flex;align-items:center;gap:.5rem;padding:.4rem .75rem;background:var(--pill-bg);border:1px solid var(--pill-color);border-radius:20px;color:var(--pill-color);cursor:pointer;transition:all .2s;font-size:.85rem}.status-pill:hover{transform:translateY(-1px);box-shadow:0 2px 8px var(--pill-bg)}.status-pill.active{background:var(--pill-color);color:#fff}.status-pill .pill-count{font-weight:700}.filters-toolbar{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.06);margin-bottom:1rem}.filter-group{display:flex;align-items:center;gap:.75rem;flex:1}.filter-select-wrapper{position:relative}.filter-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:.5rem 2rem .5rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:.875rem;cursor:pointer;min-width:140px}.filter-select:hover{border-color:#fff3}.filter-select:focus{outline:none;border-color:#00d4ff}.filter-select option{background:#1a1a2e;color:#fff}.select-arrow{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);color:#888;pointer-events:none;font-size:.75rem}.search-input{padding:.5rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;font-size:.875rem;min-width:200px}.search-input::-moz-placeholder{color:#666}.search-input::placeholder{color:#666}.search-input:focus{outline:none;border-color:#00d4ff}.clear-filters{padding:.4rem .75rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;font-size:.8rem;cursor:pointer}.clear-filters:hover{background:#ef444440}.refresh-btn{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;cursor:pointer;transition:all .2s}.refresh-btn:hover:not(:disabled){background:#ffffff1a}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.refresh-btn.spinning .refresh-icon{animation:spin 1s linear infinite}.error-banner{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;margin-bottom:1rem}.error-icon{font-size:1.25rem}.error-dismiss{margin-left:auto;background:none;border:none;color:#ef4444;font-size:1.25rem;cursor:pointer;padding:0;line-height:1}.beads-content{display:flex;gap:1rem;min-height:500px}.beads-list{flex:1;background:#ffffff05;border-radius:8px;border:1px solid rgba(255,255,255,.06);overflow:hidden}.beads-list.loading,.beads-list.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:#888}.loading-pulse{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#8b5cf6,#00d4ff);animation:pulse 1.5s ease-in-out infinite;margin-bottom:1rem}@keyframes pulse{0%,to{opacity:.3;transform:scale(.95)}50%{opacity:1;transform:scale(1)}}.empty-state{text-align:center}.empty-icon{font-size:3rem;display:block;margin-bottom:.5rem}.empty-hint{font-size:.85rem;color:#666}.issue-tree-item{border-bottom:1px solid rgba(255,255,255,.04)}.issue-tree-item:last-child{border-bottom:none}.issue-row{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .15s}.issue-row:hover{background:#ffffff0a}.issue-row.selected{background:#8b5cf626;border-left:3px solid #8b5cf6}.issue-row.epic{background:#8b5cf60d}.issue-row.child{padding-left:2.5rem;background:#0003}.expand-toggle{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:none;border:none;color:#888;cursor:pointer;border-radius:4px;transition:all .15s}.expand-toggle:hover{background:#ffffff1a;color:#fff}.expand-placeholder{width:24px}.tree-line{color:#444;font-family:monospace;width:24px;flex-shrink:0}.type-icon{font-size:1rem;flex-shrink:0}.issue-id{font-family:monospace;font-size:.8rem;color:#888;flex-shrink:0;min-width:140px}.issue-title{flex:1;color:#fff;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.children-count{font-size:.75rem;color:#8b5cf6;flex-shrink:0}.priority-badge{font-size:.75rem;font-weight:600;flex-shrink:0;min-width:28px}.status-badge{font-size:.75rem;padding:.2rem .5rem;border-radius:4px;flex-shrink:0}.issue-date{font-size:.75rem;color:#666;flex-shrink:0;min-width:60px;text-align:right}.search-highlight{background:#eab3084d;color:#fbbf24;border-radius:2px;padding:0 2px}.children-list{border-top:1px solid rgba(255,255,255,.04)}.beads-modal-overlay{position:fixed;inset:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem;animation:fadeIn .15s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.beads-detail-modal{width:100%;max-width:900px;max-height:85vh;background:#1a1a2e;border-radius:12px;border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 25px 50px -12px #00000080;animation:slideUp .2s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.beads-detail-panel{width:450px;flex-shrink:0;background:#1a1a2e;border-radius:8px;border:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;max-height:calc(100vh - 200px);overflow:hidden}.detail-header{padding:1.5rem 2rem;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.issue-id-large{font-family:monospace;font-size:.9rem;color:#8b5cf6;background:#8b5cf626;padding:.25rem .5rem;border-radius:4px}.header-actions{display:flex;gap:.5rem}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#888;cursor:pointer;transition:all .15s}.btn-icon:hover{background:#ffffff1a;color:#fff}.btn-icon.close:hover{background:#ef444426;color:#ef4444}.detail-title{font-size:1.25rem;font-weight:600;color:#fff;margin:0 0 1rem;line-height:1.4}.edit-title{width:100%;padding:.5rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:1.1rem;font-weight:600;margin-bottom:.75rem}.edit-title:focus{outline:none;border-color:#8b5cf6}.detail-meta{display:flex;gap:.75rem;margin-bottom:.75rem;flex-wrap:wrap}.status-badge.large,.priority-badge.large{font-size:.85rem;padding:.3rem .6rem}.type-badge{font-size:.85rem;color:#888}.edit-select{padding:.4rem .6rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-size:.85rem}.edit-select:focus{outline:none;border-color:#8b5cf6}.edit-select option{background:#1a1a2e}.detail-info{display:flex;flex-wrap:wrap;gap:1rem;font-size:.8rem;color:#888}.detail-info strong{color:#aaa}.edit-actions{display:flex;gap:.75rem;margin-top:1rem}.quick-actions{margin-top:1rem}.btn-primary{padding:.5rem 1rem;background:linear-gradient(135deg,#8b5cf6,#6366f1);border:none;border-radius:6px;color:#fff;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #8b5cf64d}.btn-secondary{padding:.5rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#fff;cursor:pointer;transition:all .15s}.btn-secondary:hover:not(:disabled){background:#ffffff1a}.btn-danger{padding:.5rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:6px;color:#ef4444;cursor:pointer;transition:all .15s}.btn-danger:hover{background:#ef444440}.detail-content{flex:1;overflow-y:auto;padding:.5rem 0}.detail-section{border-bottom:1px solid rgba(255,255,255,.04)}.detail-section:last-child{border-bottom:none}.section-header{display:flex;align-items:center;gap:.5rem;width:100%;padding:.75rem 2rem;background:none;border:none;color:#aaa;font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .15s}.section-header:hover{background:#ffffff05;color:#fff}.section-content{padding:0 2rem 1.25rem}.edit-textarea{width:100%;padding:.75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);border-radius:6px;color:#fff;font-family:inherit;font-size:.9rem;line-height:1.5;resize:vertical}.edit-textarea:focus{outline:none;border-color:#8b5cf6}.markdown-content{color:#ccc;font-size:.9rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.markdown-content.notes{font-size:.85rem;max-height:400px;overflow-y:auto;background:#0003;padding:1rem;border-radius:6px}.markdown-content.notes pre{white-space:pre-wrap;word-break:break-word;margin:0;font-family:SF Mono,Monaco,Cascadia Code,monospace;font-size:.8rem;line-height:1.5}.empty-text{color:#666}.children-list-detail{display:flex;flex-direction:column;gap:.25rem}.child-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#0003;border-radius:6px;cursor:pointer;transition:background .15s}.child-item:hover{background:#0000004d}.child-type{font-size:.9rem}.child-id{font-family:monospace;font-size:.75rem;color:#888;min-width:120px}.child-title{flex:1;font-size:.85rem;color:#ccc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.child-status{font-size:.7rem;padding:.15rem .4rem;border-radius:3px}.dep-group{margin-bottom:.75rem}.dep-group strong{display:block;color:#888;font-size:.8rem;margin-bottom:.5rem}.dep-list{display:flex;flex-wrap:wrap;gap:.5rem}.dep-link{font-family:monospace;font-size:.8rem;padding:.25rem .5rem;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:4px;color:#3b82f6;cursor:pointer;transition:all .15s}.dep-link:hover{background:#3b82f640}.dep-link.blocked{background:#ef444426;border-color:#ef44444d;color:#ef4444}.dep-link.blocked:hover{background:#ef444440}.parent-link{display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem}.parent-label{color:#888;font-size:.85rem}@media(max-width:1200px){.beads-content{flex-direction:column}.beads-detail-panel{width:100%;max-height:50vh}.beads-detail-modal{max-width:95%;max-height:90vh}.beads-modal-overlay{padding:1rem}}@media(max-width:768px){.beads-hero{flex-direction:column;gap:1rem}.hero-stats{flex-wrap:wrap}.filters-toolbar{flex-direction:column;align-items:stretch}.filter-group,.issue-row{flex-wrap:wrap}.issue-title{width:100%;order:10;margin-top:.5rem}}.log-entry{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:12px;line-height:1.5}.log-entry .log-metadata{font-family:SF Mono,Fira Code,Consolas,monospace;font-size:11px}.log-entry pre{white-space:pre-wrap;word-wrap:break-word;overflow-x:auto}.log-stream-container{font-family:SF Mono,Fira Code,Consolas,monospace}.log-stream-container ::-webkit-scrollbar{width:8px;height:8px}.log-stream-container ::-webkit-scrollbar-track{background:#0a0a0a}.log-stream-container ::-webkit-scrollbar-thumb{background:#333;border-radius:4px}.log-stream-container ::-webkit-scrollbar-thumb:hover{background:#444}.log-level-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;border-radius:.25rem;font-size:.625rem;font-weight:600;text-transform:uppercase}.log-entry mark{background:#f59e0b66;color:#fcd34d;padding:0 2px;border-radius:2px}.log-toolbar-dropdown{animation:slideDown .15s ease-out;transform-origin:top}@keyframes slideDown{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}.log-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:600;background:#f59e0b;color:#000;border-radius:9px}.log-connection-status{display:flex;align-items:center;gap:.5rem}.log-connection-dot{width:8px;height:8px;border-radius:50%;animation:pulse 2s infinite}.log-connection-dot.connected{background:#10b981}.log-connection-dot.disconnected{background:#ef4444}.log-connection-dot.connecting{background:#f59e0b}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.log-paused-indicator{display:flex;align-items:center;gap:.25rem;padding:.25rem .75rem;background:#d97706;color:#fff;font-size:.75rem;border-radius:9999px;box-shadow:0 4px 6px -1px #0000004d}.log-metadata-badge{display:inline-flex;align-items:center;gap:.25rem;padding:.125rem .375rem;font-size:.625rem;font-family:SF Mono,Fira Code,Consolas,monospace;border-radius:.25rem}.log-raw-viewer{background:#0000004d;border-radius:.375rem;padding:.75rem;overflow-x:auto}.log-raw-viewer pre{margin:0;font-size:.6875rem;line-height:1.4;color:#9ca3af}@media(max-width:768px){.log-entry{font-size:11px}.log-metadata-badge{font-size:.5625rem}}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}:root{--node-width-collapsed: 240px;--node-width-expanded: 360px;--node-min-height: 80px;--node-border-radius: 12px;--node-border-width: 2px;--connection-width: 2.5px;--connection-point-size: 12px;--node-padding: 16px;--node-icon-size: 36px;--node-gap: 12px;--transition-fast: .15s ease;--transition-normal: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s ease;--shadow-idle: 0 2px 8px rgba(0, 0, 0, .1);--shadow-hover: 0 4px 16px rgba(0, 0, 0, .15);--shadow-selected: 0 0 0 3px var(--node-accent, #3b82f6);--trigger-green: #10b981;--trigger-green-light: #34d399;--agent-purple: #8b5cf6;--agent-purple-light: #a78bfa;--integration-slate: #64748b;--integration-slate-light: #94a3b8;--transform-blue: #3B82F6;--transform-blue-light: #60A5FA;--control-orange: #f97316;--control-orange-light: #fb923c;--output-teal: #14b8a6;--output-teal-light: #2dd4bf;--status-config: #10b981;--status-active: #fbbf24;--status-error: #ef4444;--status-waiting: #f97316;--status-running: #3b82f6}.node-shell{position:relative;width:var(--node-width-collapsed);min-height:var(--node-min-height);padding:var(--node-padding);border-radius:var(--node-border-radius);border:var(--node-border-width) solid;box-shadow:var(--shadow-idle);cursor:pointer;transition:width var(--transition-normal),box-shadow var(--transition-fast),transform var(--transition-fast)}.node-shell:hover{box-shadow:var(--shadow-hover);transform:translateY(-1px)}.node-shell--selected{box-shadow:var(--shadow-selected)}.node-shell--expanded{width:var(--node-width-expanded)}.node-shell__content{display:flex;align-items:center;gap:var(--node-gap)}.node-shell__icon{flex-shrink:0;width:var(--node-icon-size);height:var(--node-icon-size);display:flex;align-items:center;justify-content:center;color:var(--node-accent)}.node-shell__icon svg{width:100%;height:100%}.node-shell__text{flex:1;min-width:0;overflow:hidden}.node-shell__title{font-size:14px;font-weight:600;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.node-shell__subtitle{font-size:12px;opacity:.7;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:2px}.node-shell__status{position:absolute;top:-8px;right:-8px;z-index:10}.node-shell__config{margin-top:var(--node-padding);padding-top:var(--node-padding);border-top:1px solid rgba(255,255,255,.1);animation:slideDown var(--transition-normal)}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.connection-point{position:absolute;width:var(--connection-point-size);height:var(--connection-point-size);border-radius:50%;border:2px solid currentColor;background:#1e293b;cursor:crosshair;transition:transform var(--transition-fast),background var(--transition-fast);z-index:5}.connection-point:hover{transform:scale(1.3);background:currentColor}.connection-point--left{left:calc(var(--connection-point-size) / -2 - var(--node-border-width));top:50%;transform:translateY(-50%)}.connection-point--left:hover{transform:translateY(-50%) scale(1.3)}.connection-point--right{right:calc(var(--connection-point-size) / -2 - var(--node-border-width));top:50%;transform:translateY(-50%)}.connection-point--right:hover{transform:translateY(-50%) scale(1.3)}.connection-point--top{top:calc(var(--connection-point-size) / -2 - var(--node-border-width));left:50%;transform:translate(-50%)}.connection-point--top:hover{transform:translate(-50%) scale(1.3)}.connection-point--bottom{bottom:calc(var(--connection-point-size) / -2 - var(--node-border-width));left:50%;transform:translate(-50%)}.connection-point--bottom:hover{transform:translate(-50%) scale(1.3)}.status-badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;border:1px solid;font-weight:600;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.status-badge__icon,.status-badge__label{line-height:1}.status-badge--pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.status-badge--spin .status-badge__icon{animation:spin 1s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.node-shell--trigger{background:linear-gradient(135deg,#10b98126,#34d39914);border-color:var(--trigger-green);color:#ecfdf5}.node-shell--agent{background:linear-gradient(135deg,#8b5cf626,#a78bfa14);border-color:var(--agent-purple);color:#f5f3ff}.node-shell--integration{background:linear-gradient(135deg,#64748b33,#94a3b81a);border-color:var(--integration-slate);color:#f1f5f9}.node-shell--transform{background:linear-gradient(135deg,#3b82f626,#60a5fa14);border-color:var(--transform-blue);color:#eff6ff}.node-shell--control{background:linear-gradient(135deg,#f9731626,#fb923c14);border-color:var(--control-orange);color:#fff7ed}.node-shell--output{background:linear-gradient(135deg,#14b8a626,#2dd4bf14);border-color:var(--output-teal);color:#f0fdfa}:root{--connection-idle: #3b82f6;--connection-active: #60a5fa;--connection-error: #ef4444;--connection-success: #10b981;--connection-dependency: #94a3b8}.connection-line{pointer-events:all}.connection-line__path{transition:stroke var(--transition-fast),stroke-width var(--transition-fast)}.connection-line--animated .connection-line__path{animation:flowDash 1.5s linear infinite}@keyframes flowDash{0%{stroke-dashoffset:24}to{stroke-dashoffset:0}}.connection-line--error .connection-line__path{animation:errorPulse 2s ease-in-out infinite}@keyframes errorPulse{0%,to{stroke-opacity:1}50%{stroke-opacity:.6}}.connection-line:hover .connection-line__path{stroke-width:3.5;filter:brightness(1.2)}.connection-line--preview .connection-line__path{stroke:var(--connection-idle);stroke-width:2;stroke-dasharray:6,4;opacity:.7}.swarm-node-wrapper{position:relative}.swarm-node-handle{transition:transform var(--transition-fast)}.swarm-node-handle:hover{transform:scale(1.2)}.swarm-node-handle--input,.swarm-node-handle--output{background:#3b82f6}.react-flow__edge-path{stroke-width:var(--connection-width)!important;stroke:var(--connection-idle)}.react-flow__edge.selected .react-flow__edge-path{stroke:var(--connection-active);stroke-width:3px!important}.react-flow__edge:hover .react-flow__edge-path{stroke-width:3px!important;filter:brightness(1.2)}.react-flow__edge.animated .react-flow__edge-path{stroke-dasharray:8,4;animation:flowDash 1.5s linear infinite}.workflow-canvas{width:100%;height:100%;background:#0f172a;background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.05) 1px,transparent 0);background-size:24px 24px}.react-flow__minimap,.react-flow__controls{background:#1e293b!important;border:1px solid #334155!important;border-radius:8px!important}.react-flow__controls-button{background:#1e293b!important;border-color:#334155!important;color:#e2e8f0!important}.react-flow__controls-button:hover{background:#334155!important}.react-flow__attribution{display:none}.node-shell:focus-visible{outline:2px solid #3b82f6;outline-offset:2px;box-shadow:var(--shadow-selected)}.react-flow__node:focus-visible .node-shell{outline:2px solid #3b82f6;outline-offset:2px}.react-flow__node.selected .node-shell{box-shadow:0 0 0 3px var(--node-accent, #3b82f6),var(--shadow-hover)}.react-flow__nodesselection-rect{background:#3b82f61a!important;border:2px dashed #3b82f6!important;border-radius:8px!important}.node-shell,.connection-line__path,.status-badge--pulse,.status-badge--spin{will-change:transform,opacity}@media(prefers-reduced-motion:reduce){.node-shell,.connection-line__path,.swarm-node-handle{transition-duration:.01ms!important}.status-badge--pulse,.status-badge--spin,.connection-line--animated .connection-line__path,.connection-line--error .connection-line__path{animation:none!important}}.swarm-node-handle{cursor:crosshair;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.swarm-node-handle:hover{transform:scale(1.3);box-shadow:0 0 8px #3b82f680}.swarm-node-handle--connecting{transform:scale(1.4);box-shadow:0 0 12px #3b82f6cc}.react-flow__minimap-node{fill:#3b82f6!important}.react-flow__edge.selected .react-flow__edge-path{stroke-width:4px!important;filter:drop-shadow(0 0 4px rgba(59,130,246,.5))}.node-shell__icon-wrapper{display:flex;align-items:center;justify-content:center;width:var(--node-icon-size);height:var(--node-icon-size);border-radius:8px;background:#ffffff26;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);flex-shrink:0}.node-shell__expanded-content{max-height:0;overflow:hidden;transition:max-height var(--transition-normal)}.node-shell--expanded .node-shell__expanded-content{max-height:300px}.node-tooltip{position:absolute;bottom:100%;left:50%;transform:translate(-50%) translateY(-8px);background:#0f172a;border:1px solid #334155;border-radius:6px;padding:8px 12px;font-size:12px;color:#e2e8f0;white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:100;box-shadow:0 4px 12px #0000004d}.node-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#334155}.node-shell:hover .node-tooltip{opacity:1;visibility:visible}.node-shell--loading{opacity:.7;pointer-events:none}.node-shell--loading:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.react-flow__node.dragging .node-shell{opacity:.8;box-shadow:0 8px 32px #0000004d;transform:scale(1.02)}.react-flow__edge-text{font-size:11px!important;fill:#94a3b8!important}.react-flow__edge-textbg{fill:#1e293b!important;rx:4!important}:root{--icon-trigger: #4ade80;--icon-trigger-intense: #86efac;--stroke-trigger: rgba(74, 222, 128, .45);--icon-agent: #c084fc;--icon-agent-intense: #d8b4fe;--stroke-agent: rgba(192, 132, 252, .45);--icon-transform: #60a5fa;--icon-transform-intense: #93c5fd;--stroke-transform: rgba(96, 165, 250, .45);--icon-integration: #22d3ee;--icon-integration-intense: #67e8f9;--stroke-integration: rgba(34, 211, 238, .45);--icon-control: #fb923c;--icon-control-intense: #fdba74;--stroke-control: rgba(251, 146, 60, .45);--icon-output: #2dd4bf;--icon-output-intense: #5eead4;--stroke-output: rgba(45, 212, 191, .45);--icon-hitl: #fcd34d;--icon-hitl-intense: #fde68a;--stroke-hitl: rgba(252, 211, 77, .45);--hex-glass: rgba(18, 18, 22, .6);--hex-glass-hover: rgba(25, 25, 30, .7);--transition-fast: .15s ease-out;--transition-glow: .25s ease-out}.hex-node{display:inline-flex;flex-direction:column;align-items:center;gap:10px;position:relative;cursor:pointer;outline:none;transform:scale(.5);transform-origin:center}.hex-container{width:64px;height:64px;position:relative;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-glow)}.hex-node:hover .hex-container,.hex-node--hovered .hex-container{transform:scale(1.05) translateY(-1px)}.hex-node--selected .hex-container{transform:scale(1.08) translateY(-2px)}.hex-bg{position:absolute;width:100%;height:100%;top:0;left:0;overflow:visible}.hex-fill{fill:var(--hex-glass);transition:fill var(--transition-glow)}.hex-node:hover .hex-fill,.hex-node--hovered .hex-fill{fill:var(--hex-glass-hover)}.hex-stroke{fill:none;stroke:#6464784d;stroke-width:2.5px;transition:stroke var(--transition-glow),stroke-width var(--transition-fast)}.hex-node--type-trigger .hex-stroke{stroke:var(--stroke-trigger)}.hex-node--type-agent .hex-stroke{stroke:var(--stroke-agent)}.hex-node--type-transform .hex-stroke{stroke:var(--stroke-transform)}.hex-node--type-integration .hex-stroke{stroke:var(--stroke-integration)}.hex-node--type-control .hex-stroke{stroke:var(--stroke-control)}.hex-node--type-output .hex-stroke{stroke:var(--stroke-output)}.hex-node--type-hitl .hex-stroke{stroke:var(--stroke-hitl)}.hex-node--selected .hex-stroke{stroke-width:3.5px}.hex-icon{position:relative;z-index:2;width:28px;height:28px;display:flex;align-items:center;justify-content:center;transition:filter var(--transition-glow),transform var(--transition-fast)}.hex-icon svg{width:28px;height:28px;stroke-width:2.5px}.hex-icon{color:var(--icon-integration);filter:drop-shadow(0 0 2px var(--icon-integration)) drop-shadow(0 0 6px var(--icon-integration)) drop-shadow(0 0 12px rgba(34,211,238,.5)) drop-shadow(0 0 24px rgba(34,211,238,.25))}.hex-node--type-trigger .hex-icon{color:var(--icon-trigger);filter:drop-shadow(0 0 2px var(--icon-trigger)) drop-shadow(0 0 6px var(--icon-trigger)) drop-shadow(0 0 14px rgba(74,222,128,.55)) drop-shadow(0 0 28px rgba(74,222,128,.3))}.hex-node--type-trigger:hover .hex-icon,.hex-node--type-trigger.hex-node--selected .hex-icon{color:var(--icon-trigger-intense);filter:drop-shadow(0 0 3px var(--icon-trigger-intense)) drop-shadow(0 0 8px var(--icon-trigger)) drop-shadow(0 0 18px rgba(74,222,128,.7)) drop-shadow(0 0 36px rgba(74,222,128,.4))}.hex-node--type-agent .hex-icon{color:var(--icon-agent);filter:drop-shadow(0 0 2px var(--icon-agent)) drop-shadow(0 0 6px var(--icon-agent)) drop-shadow(0 0 14px rgba(192,132,252,.55)) drop-shadow(0 0 28px rgba(192,132,252,.3))}.hex-node--type-agent:hover .hex-icon,.hex-node--type-agent.hex-node--selected .hex-icon{color:var(--icon-agent-intense);filter:drop-shadow(0 0 3px var(--icon-agent-intense)) drop-shadow(0 0 8px var(--icon-agent)) drop-shadow(0 0 18px rgba(192,132,252,.7)) drop-shadow(0 0 36px rgba(192,132,252,.4))}.hex-node--type-transform .hex-icon{color:var(--icon-transform);filter:drop-shadow(0 0 2px var(--icon-transform)) drop-shadow(0 0 6px var(--icon-transform)) drop-shadow(0 0 14px rgba(96,165,250,.55)) drop-shadow(0 0 28px rgba(96,165,250,.3))}.hex-node--type-transform:hover .hex-icon,.hex-node--type-transform.hex-node--selected .hex-icon{color:var(--icon-transform-intense);filter:drop-shadow(0 0 3px var(--icon-transform-intense)) drop-shadow(0 0 8px var(--icon-transform)) drop-shadow(0 0 18px rgba(96,165,250,.7)) drop-shadow(0 0 36px rgba(96,165,250,.4))}.hex-node--type-integration .hex-icon{color:var(--icon-integration);filter:drop-shadow(0 0 2px var(--icon-integration)) drop-shadow(0 0 6px var(--icon-integration)) drop-shadow(0 0 14px rgba(34,211,238,.55)) drop-shadow(0 0 28px rgba(34,211,238,.3))}.hex-node--type-integration:hover .hex-icon,.hex-node--type-integration.hex-node--selected .hex-icon{color:var(--icon-integration-intense);filter:drop-shadow(0 0 3px var(--icon-integration-intense)) drop-shadow(0 0 8px var(--icon-integration)) drop-shadow(0 0 18px rgba(34,211,238,.7)) drop-shadow(0 0 36px rgba(34,211,238,.4))}.hex-node--type-control .hex-icon{color:var(--icon-control);filter:drop-shadow(0 0 2px var(--icon-control)) drop-shadow(0 0 6px var(--icon-control)) drop-shadow(0 0 14px rgba(251,146,60,.55)) drop-shadow(0 0 28px rgba(251,146,60,.3))}.hex-node--type-control:hover .hex-icon,.hex-node--type-control.hex-node--selected .hex-icon{color:var(--icon-control-intense);filter:drop-shadow(0 0 3px var(--icon-control-intense)) drop-shadow(0 0 8px var(--icon-control)) drop-shadow(0 0 18px rgba(251,146,60,.7)) drop-shadow(0 0 36px rgba(251,146,60,.4))}.hex-node--type-output .hex-icon{color:var(--icon-output);filter:drop-shadow(0 0 2px var(--icon-output)) drop-shadow(0 0 6px var(--icon-output)) drop-shadow(0 0 14px rgba(45,212,191,.55)) drop-shadow(0 0 28px rgba(45,212,191,.3))}.hex-node--type-output:hover .hex-icon,.hex-node--type-output.hex-node--selected .hex-icon{color:var(--icon-output-intense);filter:drop-shadow(0 0 3px var(--icon-output-intense)) drop-shadow(0 0 8px var(--icon-output)) drop-shadow(0 0 18px rgba(45,212,191,.7)) drop-shadow(0 0 36px rgba(45,212,191,.4))}.hex-node--type-hitl .hex-icon{color:var(--icon-hitl);filter:drop-shadow(0 0 2px var(--icon-hitl)) drop-shadow(0 0 6px var(--icon-hitl)) drop-shadow(0 0 14px rgba(252,211,77,.55)) drop-shadow(0 0 28px rgba(252,211,77,.3))}.hex-node--type-hitl:hover .hex-icon,.hex-node--type-hitl.hex-node--selected .hex-icon{color:var(--icon-hitl-intense);filter:drop-shadow(0 0 3px var(--icon-hitl-intense)) drop-shadow(0 0 8px var(--icon-hitl)) drop-shadow(0 0 18px rgba(252,211,77,.7)) drop-shadow(0 0 36px rgba(252,211,77,.4))}.hex-node--inactive .hex-fill{fill:#1e1e2380!important}.hex-node--inactive .hex-stroke{stroke:#50505a40!important}.hex-node--inactive .hex-icon{color:#4a4a55!important;filter:drop-shadow(0 0 2px rgba(74,74,85,.3)) drop-shadow(0 1px 2px rgba(0,0,0,.4))!important;opacity:.6}.hex-label{font-size:.75rem;font-weight:500;color:#cbd5e1;text-align:center;max-width:100px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.8);letter-spacing:.02em}.hex-node-handle{width:10px!important;height:10px!important;background:#18181b!important;border:2px solid #3f3f46!important;border-radius:50%!important;z-index:3;transition:all var(--transition-fast)}.hex-node-handle:hover{transform:scale(1.3);background:#27272a!important}.hex-node--type-trigger .hex-node-handle:hover{border-color:var(--icon-trigger)!important;box-shadow:0 0 6px var(--icon-trigger)}.hex-node--type-agent .hex-node-handle:hover{border-color:var(--icon-agent)!important;box-shadow:0 0 6px var(--icon-agent)}.hex-node--type-transform .hex-node-handle:hover{border-color:var(--icon-transform)!important;box-shadow:0 0 6px var(--icon-transform)}.hex-node--type-integration .hex-node-handle:hover{border-color:var(--icon-integration)!important;box-shadow:0 0 6px var(--icon-integration)}.hex-node--type-control .hex-node-handle:hover{border-color:var(--icon-control)!important;box-shadow:0 0 6px var(--icon-control)}.hex-node--type-output .hex-node-handle:hover{border-color:var(--icon-output)!important;box-shadow:0 0 6px var(--icon-output)}.hex-node--type-hitl .hex-node-handle:hover{border-color:var(--icon-hitl)!important;box-shadow:0 0 6px var(--icon-hitl)}.hex-status{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;border:2px solid #09090b;z-index:4}.hex-status--running{background:#3b82f6;box-shadow:0 0 8px #3b82f6,0 0 16px #3b82f680;animation:status-breathe 1.5s ease-in-out infinite}.hex-status--success{background:#10b981;box-shadow:0 0 8px #10b981,0 0 16px #10b98180}.hex-status--error{background:#ef4444;box-shadow:0 0 8px #ef4444,0 0 16px #ef444480;animation:status-pulse-error 1s ease-in-out infinite}.hex-status--waiting{background:#f59e0b;box-shadow:0 0 8px #f59e0b,0 0 16px #f59e0b80;animation:status-breathe 2s ease-in-out infinite}@keyframes status-breathe{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.85}}@keyframes status-pulse-error{0%,to{transform:scale(1);box-shadow:0 0 8px #ef4444,0 0 16px #ef444480}50%{transform:scale(1.15);box-shadow:0 0 12px #ef4444,0 0 24px #ef4444b3}}.square-node{display:inline-flex;flex-direction:column;align-items:center;gap:10px;position:relative;cursor:pointer;outline:none;transform:scale(.5);transform-origin:center}.square-container{width:64px;height:64px;position:relative;display:flex;align-items:center;justify-content:center;transition:transform var(--transition-glow)}.square-node:hover .square-container,.square-node--hovered .square-container{transform:scale(1.05) translateY(-1px)}.square-node--selected .square-container{transform:scale(1.08) translateY(-2px)}.square-bg{position:absolute;width:100%;height:100%;top:0;left:0;overflow:visible}.square-fill{fill:var(--hex-glass);transition:fill var(--transition-glow)}.square-node:hover .square-fill,.square-node--hovered .square-fill{fill:var(--hex-glass-hover)}.square-stroke{fill:none;stroke:#64647866;stroke-width:2.5px;transition:stroke var(--transition-glow),stroke-width var(--transition-fast)}.square-node--type-integration .square-stroke{stroke:#22d3ee80}.square-node--selected .square-stroke{stroke-width:3.5px;stroke:#22d3eecc}.square-icon{position:relative;z-index:2;display:flex;align-items:center;justify-content:center;transition:filter var(--transition-glow),transform var(--transition-fast)}.square-node .square-icon{filter:none}.square-label{font-size:.75rem;font-weight:500;color:#cbd5e1;text-align:center;max-width:100px;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 3px rgba(0,0,0,.8);letter-spacing:.02em}.square-node-handle{width:10px!important;height:10px!important;background:#18181b!important;border:2px solid #3f3f46!important;border-radius:50%!important;z-index:3;transition:all var(--transition-fast)}.square-node-handle:hover{transform:scale(1.3);background:#27272a!important;border-color:var(--icon-integration)!important;box-shadow:0 0 6px var(--icon-integration)}.square-node-handle--input{left:-5px!important}.square-node-handle--output{right:-5px!important}.square-status{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;border:2px solid #09090b;z-index:4}.square-status--running{background:#3b82f6;box-shadow:0 0 8px #3b82f6,0 0 16px #3b82f680;animation:status-breathe 1.5s ease-in-out infinite}.square-status--success{background:#10b981;box-shadow:0 0 8px #10b981,0 0 16px #10b98180}.square-status--error{background:#ef4444;box-shadow:0 0 8px #ef4444,0 0 16px #ef444480;animation:status-pulse-error 1s ease-in-out infinite}.square-status--waiting{background:#f59e0b;box-shadow:0 0 8px #f59e0b,0 0 16px #f59e0b80;animation:status-breathe 2s ease-in-out infinite}.square-node--inactive .square-fill{fill:#12121666}.square-node--inactive .square-stroke{stroke:#4a4a554d}.square-node--inactive .square-icon{opacity:.5}.hex-toolbar-btn--play:hover{color:#4ade80}.hex-toolbar-btn--delete:hover{color:#f87171}.hex-toolbar-btn--power.hex-toolbar-btn--inactive{color:#3f3f46}.hex-config-panel{position:absolute;top:calc(100% + 12px);left:50%;transform:translate(-50%);width:280px;background:#18181bfa;border:1px solid #3f3f46;border-radius:12px;padding:16px;z-index:101;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 32px #0009}.hex-config-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #3f3f46}.hex-config-title{font-size:.875rem;font-weight:600;color:#fafafa}.hex-config-close{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:transparent;border:none;cursor:pointer;color:#71717a;transition:all var(--transition-fast)}.hex-config-close:hover{background:#27272a;color:#fafafa}.hex-config-field{margin-bottom:14px}.hex-config-label{display:block;font-size:.7rem;font-weight:600;color:#a1a1aa;margin-bottom:6px;text-transform:uppercase;letter-spacing:.08em}.hex-config-input{width:100%;padding:10px 12px;background:#18181b;border:1px solid #3f3f46;border-radius:6px;color:#fafafa;font-size:.875rem;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.hex-config-input:focus{outline:none;border-color:#60a5fa;box-shadow:0 0 0 2px #60a5fa33}.hex-config-input::-moz-placeholder{color:#52525b}.hex-config-input::placeholder{color:#52525b}.hex-config-textarea{min-height:80px;resize:vertical}.hex-config-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23a1a1aa' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;padding-right:36px}.hex-node-handle{width:10px!important;height:10px!important;background:#262626!important;border:2px solid #64748b!important;border-radius:50%!important;z-index:2}.hex-node-handle:hover{background:#64748b!important;border-color:#94a3b8!important}.hex-node-handle--input{left:-5px!important}.hex-node-handle--output{right:-5px!important}.hex-status{position:absolute;top:-4px;right:-4px;width:14px;height:14px;border-radius:50%;border:2px solid #0f0f0f;z-index:3}.hex-status--running{background:#3b82f6;animation:hex-pulse 1.5s ease-in-out infinite}.hex-status--success{background:#10b981}.hex-status--error{background:#ef4444}.hex-status--waiting{background:#f59e0b;animation:hex-pulse 2s ease-in-out infinite}@keyframes hex-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.hex-hover-toolbar{position:absolute;top:-32px;left:50%;transform:translate(-50%) scale(.78);transform-origin:center bottom;display:flex;gap:4px;background:#000000e6;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:4px;opacity:0;visibility:hidden;transition:opacity var(--transition-fast),visibility var(--transition-fast);z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 20px #000000b3}.hex-hover-toolbar--visible{opacity:1;visibility:visible}.hex-toolbar-btn{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:transparent;border:none;cursor:pointer;color:#fff!important;transition:background var(--transition-fast),color var(--transition-fast)}.hex-toolbar-btn svg{color:#fff!important;fill:currentColor;stroke:currentColor;display:none}.hex-toolbar-label{font-size:14px;line-height:1;color:#fff!important;pointer-events:none}.hex-toolbar-btn:hover{background:#ffffff26;color:#fff}.hex-toolbar-btn--play:hover{color:#10b981}.hex-toolbar-btn--delete:hover{color:#ef4444}.hex-toolbar-btn--power.hex-toolbar-btn--inactive{color:#64748b}.hex-config-backdrop{position:fixed;inset:0;z-index:100}.hex-config-panel{width:320px;background:#262626;border:1px solid #333333;border-radius:12px;box-shadow:0 8px 32px #0006;z-index:101}.hex-config-header{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #333333}.hex-config-title{font-size:.875rem;font-weight:600;color:#fff;margin:0}.hex-config-close{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:#64748b;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.hex-config-close:hover{background:#333;color:#fff}.hex-config-body{padding:16px;display:flex;flex-direction:column;gap:16px;max-height:400px;overflow-y:auto}.hex-config-field{display:flex;flex-direction:column;gap:6px}.hex-config-label{font-size:.75rem;font-weight:500;color:#94a3b8}.hex-config-input,.hex-config-select,.hex-config-textarea{width:100%;padding:10px 12px;background:#1a1a1a;border:1px solid #333333;border-radius:6px;color:#fff;font-size:.875rem;transition:border-color var(--transition-fast)}.hex-config-input:focus,.hex-config-select:focus,.hex-config-textarea:focus{outline:none;border-color:#f59e0b}.hex-config-input::-moz-placeholder,.hex-config-textarea::-moz-placeholder{color:#64748b}.hex-config-input::placeholder,.hex-config-textarea::placeholder{color:#64748b}.hex-config-select{cursor:pointer}.hex-config-textarea{resize:vertical;min-height:80px}.hex-config-footer{display:flex;gap:8px;justify-content:flex-end;padding:16px;border-top:1px solid #333333}.hex-config-btn{padding:8px 16px;font-size:.875rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.hex-config-btn--cancel{background:transparent;color:#94a3b8;border:1px solid #333333}.hex-config-btn--cancel:hover{background:#333;color:#fff}.hex-config-btn--save{background:#f59e0b;color:#1a1a1a}.hex-config-btn--save:hover{background:#fcd34d}.hex-config-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center}.hex-config-error-title{color:#ef4444;font-size:1.25rem;font-weight:600;margin:16px 0 8px}.hex-config-error-message{color:#9ca3af;font-size:.875rem;margin:0;line-height:1.5}.hex-config-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;gap:12px;color:#9ca3af}.hex-config-spinner{width:32px;height:32px;border:3px solid #333333;border-top-color:#f59e0b;border-radius:50%;animation:hex-config-spin 1s linear infinite}@keyframes hex-config-spin{to{transform:rotate(360deg)}}.hex-config-checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer}.hex-config-checkbox{width:18px;height:18px;accent-color:#f59e0b;cursor:pointer}.hex-config-checkbox-text{color:#e5e7eb;font-size:.875rem}.webhook-panel{position:fixed;top:50%;right:24px;transform:translateY(-50%);width:420px;max-height:85vh;background:#262626;border:1px solid #333333;border-radius:12px;box-shadow:0 8px 32px #0006;z-index:200;display:flex;flex-direction:column;overflow:hidden}.webhook-panel-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #333333}.webhook-panel-header h3{font-size:1rem;font-weight:600;color:#fff;margin:0}.webhook-close{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;color:#64748b;font-size:24px;line-height:1;cursor:pointer;transition:all var(--transition-fast)}.webhook-close:hover{background:#333;color:#fff}.webhook-tabs{display:flex;border-bottom:1px solid #333333;background:#1a1a1a}.webhook-tab{flex:1;padding:12px 16px;background:transparent;border:none;border-bottom:2px solid transparent;color:#64748b;font-size:.875rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.webhook-tab:hover{color:#94a3b8;background:#ffffff0d}.webhook-tab.active{color:#f59e0b;border-bottom-color:#f59e0b;background:#f59e0b0d}.webhook-panel-body{flex:1;overflow-y:auto;padding:20px}.webhook-section{display:flex;flex-direction:column;gap:20px}.webhook-section h4{font-size:.875rem;font-weight:600;color:#fff;margin:0 0 12px}.webhook-url-section{display:flex;flex-direction:column;gap:8px}.webhook-label{display:flex;align-items:center;gap:8px;font-size:.75rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em}.webhook-status-active{display:inline-flex;align-items:center;padding:2px 8px;background:#10b98133;border:1px solid #10b981;border-radius:12px;font-size:.65rem;font-weight:600;color:#10b981;text-transform:uppercase;letter-spacing:.05em}.webhook-status-test{display:inline-flex;align-items:center;padding:2px 8px;background:#f59e0b33;border:1px solid #f59e0b;border-radius:12px;font-size:.65rem;font-weight:600;color:#f59e0b;text-transform:uppercase;letter-spacing:.05em}.webhook-url-group{display:flex;align-items:center;gap:8px;background:#1a1a1a;border:1px solid #333333;border-radius:6px;padding:10px 12px}.webhook-url{flex:1;font-size:.8rem;font-family:Monaco,Menlo,monospace;color:#22d3ee;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.webhook-copy-btn{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid #333333;border-radius:4px;color:#64748b;cursor:pointer;transition:all var(--transition-fast)}.webhook-copy-btn:hover{background:#333;border-color:#64748b;color:#fff}.webhook-hint{font-size:.75rem;color:#64748b;margin:4px 0 0;line-height:1.4}.webhook-config-info h4{margin-top:16px;padding-top:16px;border-top:1px solid #333333}.webhook-config-grid{display:grid;grid-template-columns:1fr;gap:10px}.webhook-config-item{display:flex;justify-content:space-between;padding:8px 12px;background:#1a1a1a;border-radius:6px}.webhook-config-key{font-size:.75rem;font-weight:500;color:#94a3b8}.webhook-config-value{font-size:.75rem;font-family:Monaco,Menlo,monospace;color:#fff}.webhook-test-form{display:flex;flex-direction:column;gap:12px}.webhook-textarea{width:100%;padding:12px;background:#1a1a1a;border:1px solid #333333;border-radius:6px;color:#fff;font-size:.875rem;font-family:Monaco,Menlo,monospace;resize:vertical;transition:border-color var(--transition-fast)}.webhook-textarea:focus{outline:none;border-color:#f59e0b}.webhook-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;font-size:.875rem;font-weight:500;border-radius:6px;border:none;cursor:pointer;transition:all var(--transition-fast)}.webhook-btn:disabled{opacity:.5;cursor:not-allowed}.webhook-btn-primary{background:#f59e0b;color:#1a1a1a}.webhook-btn-primary:hover:not(:disabled){background:#fcd34d}.webhook-btn-secondary{background:transparent;color:#94a3b8;border:1px solid #333333}.webhook-btn-secondary:hover:not(:disabled){background:#333;color:#fff}.webhook-test-result{margin-top:16px;padding:16px;background:#1a1a1a;border:1px solid #333333;border-radius:8px}.webhook-test-result.success{border-color:#10b981;background:#10b9810d}.webhook-test-result.error{border-color:#ef4444;background:#ef44440d}.webhook-test-result-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.webhook-test-result-time{font-size:.75rem;color:#64748b}.webhook-test-result-status{font-size:.875rem;font-weight:600;color:#10b981;margin-bottom:8px}.webhook-test-result-body{font-size:.75rem;font-family:Monaco,Menlo,monospace;color:#94a3b8;background:#0f0f0f;padding:12px;border-radius:4px;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.webhook-test-result-error{font-size:.875rem;color:#ef4444}.webhook-status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.7rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em}.webhook-history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.webhook-loading,.webhook-empty{padding:40px 20px;text-align:center;font-size:.875rem;color:#64748b}.webhook-history-list{display:flex;flex-direction:column;gap:12px}.webhook-history-item{padding:14px;background:#1a1a1a;border:1px solid #333333;border-radius:8px}.webhook-history-item-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.webhook-history-item-time{font-size:.75rem;color:#64748b}.webhook-history-item-details{display:flex;flex-direction:column;gap:6px;font-size:.75rem;color:#94a3b8}.webhook-history-item-details strong{color:#fff}.webhook-history-item-error{color:#ef4444;margin-top:4px}.webhook-example-section{margin-bottom:20px}.webhook-example-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.webhook-code{padding:14px;background:#0f0f0f;border:1px solid #333333;border-radius:6px;font-size:.75rem;font-family:Monaco,Menlo,monospace;color:#94a3b8;overflow-x:auto;white-space:pre-wrap;word-break:break-all}.workflow-test-page{min-height:100vh;background:#0f172a;color:#e2e8f0;padding:24px}.workflow-test-header{margin-bottom:24px;text-align:center}.workflow-test-header h1{font-size:28px;font-weight:700;margin-bottom:8px;background:linear-gradient(135deg,#8b5cf6,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.workflow-test-subtitle{font-size:14px;color:#94a3b8}.workflow-test-canvas{height:500px;border:1px solid #334155;border-radius:12px;overflow:hidden;margin-bottom:32px;background:#0f172a}.workflow-test-showcase{background:#1e293b;border-radius:12px;padding:24px}.workflow-test-showcase h2{font-size:16px;font-weight:600;margin-bottom:16px;color:#f1f5f9}.workflow-test-showcase h2:not(:first-child){margin-top:32px}.showcase-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.showcase-icons{gap:24px}.icon-item{display:flex;flex-direction:column;align-items:center;gap:8px;color:#3b82f6}.icon-item svg{width:36px;height:36px}.icon-item span{font-size:12px;color:#94a3b8}.showcase-nodes{gap:24px}.react-flow{background:#0f172a!important}.react-flow__background{background-color:#0f172a!important}.react-flow__minimap{background-color:#1e293b!important}.react-flow__minimap-mask{fill:#00000080!important}.react-flow__controls{box-shadow:none!important;border:1px solid #334155!important;border-radius:8px!important;overflow:hidden}.react-flow__controls-button{background:#1e293b!important;border-bottom:1px solid #334155!important;fill:#94a3b8!important}.react-flow__controls-button:hover{background:#334155!important;fill:#e2e8f0!important}.react-flow__edge-text{font-size:12px;font-weight:600}.workflow-test-controls{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:16px;background:#1e293b;border-radius:8px}.test-button{padding:10px 20px;font-size:14px;font-weight:600;border:none;border-radius:6px;cursor:pointer;transition:all .15s ease}.test-button--primary{background:linear-gradient(135deg,#8b5cf6,#7c3aed);color:#fff}.test-button--primary:hover{background:linear-gradient(135deg,#9f75ff,#8b5cf6);transform:translateY(-1px)}.test-button--secondary{background:#334155;color:#e2e8f0}.test-button--secondary:hover{background:#475569}.node-count{margin-left:auto;font-size:13px;color:#94a3b8}.node-palette{width:220px;height:100%;background:#0f172a;border-right:1px solid #1e293b;display:flex;flex-direction:column;overflow:hidden}.node-palette-header{padding:20px 16px;border-bottom:1px solid #1e293b}.node-palette-header h3{margin:0 0 4px;font-size:16px;font-weight:600;color:#f1f5f9}.node-palette-subtitle{margin:0;font-size:12px;color:#64748b}.node-palette-categories{flex:1;overflow-y:auto;padding:8px 0}.node-palette-categories::-webkit-scrollbar{width:6px}.node-palette-categories::-webkit-scrollbar-track{background:#0f172a}.node-palette-categories::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}.node-palette-categories::-webkit-scrollbar-thumb:hover{background:#475569}.palette-category{margin-bottom:4px}.palette-category-header{width:100%;display:flex;align-items:center;gap:8px;padding:10px 16px;background:transparent;border:none;color:#cbd5e1;font-size:13px;font-weight:500;text-align:left;cursor:pointer;transition:background .15s ease}.palette-category-header:hover{background:#1e293b}.palette-category-icon{font-size:10px;color:#64748b;width:12px;display:flex;align-items:center;justify-content:center}.palette-category-label{flex:1}.palette-category-count{font-size:11px;color:#64748b;background:#1e293b;padding:2px 8px;border-radius:10px}.palette-category-content{padding:8px 12px;display:flex;flex-direction:column;gap:4px}.palette-node{display:flex;align-items:center;gap:12px;padding:10px 12px;background:#1e293b;border:1px solid #334155;border-radius:8px;cursor:grab;transition:all .15s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none}.palette-node:hover{background:#334155;border-color:#475569;transform:translate(4px)}.palette-node:active{cursor:grabbing;opacity:.7}.palette-node-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:#0f172a;border-radius:6px;color:#f59e0b;flex-shrink:0}.palette-node-label{font-size:13px;color:#f1f5f9;font-weight:500}.node-palette-footer{padding:12px 16px;border-top:1px solid #1e293b}.palette-collapse-all{width:100%;padding:8px 12px;background:transparent;border:1px solid #334155;border-radius:6px;color:#cbd5e1;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.palette-collapse-all:hover{background:#1e293b;border-color:#475569}.palette-node.dragging{opacity:.5}@media(max-width:1200px){.node-palette{width:200px}.palette-node{padding:8px 10px}.palette-node-icon{width:28px;height:28px}.palette-node-label{font-size:12px}}.workflow-builder{display:flex;height:100vh;background:#0f172a;overflow:hidden}.workflow-builder-main{flex:1;display:flex;flex-direction:column;overflow:hidden}.workflow-builder-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;background:#1e293b;border-bottom:1px solid #334155;min-height:60px}.toolbar-left{display:flex;align-items:center;gap:16px}.workflow-name-button{display:flex;align-items:center;gap:8px;background:transparent;border:none;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .15s ease}.workflow-name-button:hover{background:#334155}.workflow-name-button h1{margin:0;font-size:18px;font-weight:600;color:#f1f5f9}.edit-icon{font-size:14px;color:#64748b;opacity:0;transition:opacity .15s ease}.workflow-name-button:hover .edit-icon{opacity:1}.workflow-status{font-size:12px;color:#64748b}.status-saving{color:#3b82f6}.status-unsaved{color:#f59e0b}.status-saved{color:#10b981}.toolbar-right{display:flex;align-items:center;gap:12px}.toolbar-button{padding:8px 16px;background:#334155;border:1px solid #475569;border-radius:6px;color:#f1f5f9;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.toolbar-button:hover:not(:disabled){background:#475569;border-color:#64748b}.toolbar-button:disabled{opacity:.5;cursor:not-allowed}.toolbar-button--primary{background:#f59e0b;border-color:#f59e0b;color:#0f172a}.toolbar-button--primary:hover:not(:disabled){background:#fb923c;border-color:#fb923c}.toolbar-divider{width:1px;height:24px;background:#334155}.node-count{font-size:12px;color:#94a3b8;white-space:nowrap}.workflow-canvas{flex:1;position:relative;background:linear-gradient(135deg,#0f172afa,#0f172af2)}.workflow-empty-state{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#64748b;z-index:10;pointer-events:none}.empty-icon{font-size:64px;margin-bottom:16px}.workflow-empty-state h3{margin:0 0 8px;font-size:20px;font-weight:600;color:#94a3b8}.workflow-empty-state p{margin:0;font-size:14px;color:#64748b}.dialog-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.dialog{background:#1e293b;border:1px solid #334155;border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #00000080}.dialog-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #334155}.dialog-header h2{margin:0;font-size:18px;font-weight:600;color:#f1f5f9}.dialog-close{background:transparent;border:none;font-size:28px;color:#64748b;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .15s ease}.dialog-close:hover{background:#334155;color:#f1f5f9}.dialog-content{padding:20px 24px;overflow-y:auto;flex:1}.dialog-content::-webkit-scrollbar{width:6px}.dialog-content::-webkit-scrollbar-track{background:#0f172a}.dialog-content::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}.dialog-content::-webkit-scrollbar-thumb:hover{background:#475569}.dialog-empty{text-align:center;padding:40px 20px;color:#64748b}.flow-list{display:flex;flex-direction:column;gap:8px}.flow-item{width:100%;padding:16px;background:#0f172a;border:1px solid #334155;border-radius:8px;text-align:left;cursor:pointer;transition:all .15s ease}.flow-item:hover{background:#334155;border-color:#475569;transform:translate(4px)}.flow-item-name{font-size:14px;font-weight:600;color:#f1f5f9;margin-bottom:4px}.flow-item-meta{font-size:12px;color:#64748b}.webhook-dialog{max-width:700px}.webhook-warning{padding:12px 16px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.3);border-radius:8px;color:#fb923c;margin-bottom:20px;font-size:14px}.webhook-section{margin-bottom:24px}.webhook-label{display:block;font-size:13px;font-weight:600;color:#f1f5f9;margin-bottom:8px}.webhook-url-container{display:flex;gap:8px}.webhook-url-input{flex:1;padding:10px 12px;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#f1f5f9;font-size:13px;font-family:Courier New,monospace}.webhook-url-input:focus{outline:none;border-color:#f59e0b}.webhook-button{padding:10px 16px;background:#334155;border:1px solid #475569;border-radius:6px;color:#f1f5f9;font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap}.webhook-button:hover:not(:disabled){background:#475569;border-color:#64748b}.webhook-button:disabled{opacity:.5;cursor:not-allowed}.webhook-button--copy{min-width:100px}.webhook-button--test{background:#10b981;border-color:#10b981;color:#fff}.webhook-button--test:hover:not(:disabled){background:#059669;border-color:#059669}.webhook-help{font-size:13px;color:#94a3b8;margin:8px 0;line-height:1.5}.webhook-help-text{font-size:12px;color:#64748b;margin-top:8px;font-style:italic}.webhook-code{padding:12px;background:#0f172a;border:1px solid #334155;border-radius:6px;color:#10b981;font-size:12px;font-family:Courier New,monospace;overflow-x:auto;white-space:pre;margin:0}.webhook-code::-webkit-scrollbar{height:6px}.webhook-code::-webkit-scrollbar-track{background:#0f172a}.webhook-code::-webkit-scrollbar-thumb{background:#334155;border-radius:3px}.page-main--no-padding{padding:0;overflow:hidden}@media(max-width:1200px){.workflow-builder-toolbar{flex-wrap:wrap;min-height:auto}.toolbar-left,.toolbar-right{flex:1;min-width:50%}.node-count{display:none}}@media(max-width:768px){.workflow-name-button h1{font-size:16px}.toolbar-button{padding:6px 12px;font-size:12px}.dialog{width:95%;max-height:90vh}}.hosted-apps-main{padding:1.5rem 2rem;overflow:auto}.hosted-apps-grid{display:grid;grid-template-columns:1fr;gap:1rem}@media(min-width:768px){.hosted-apps-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.hosted-apps-grid{grid-template-columns:repeat(3,1fr)}}.hosted-app-card{background-color:#111827;border:1px solid rgb(31,41,55);border-radius:.5rem;padding:1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.hosted-app-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(59,130,246,.05) 0%,transparent 50%);opacity:0;transition:opacity .3s ease;pointer-events:none}.hosted-app-card:hover{border-color:#374151;transform:translateY(-2px);box-shadow:0 8px 20px #0000004d,0 0 0 1px #3b82f61a}.hosted-app-card:hover:before{opacity:1}.status-deploying{animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{box-shadow:0 0 #3b82f666;opacity:1}50%{box-shadow:0 0 0 4px #3b82f600;opacity:.9}}.skeleton{background:linear-gradient(90deg,#1f2937,#374151,#1f2937);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:.25rem}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card{background-color:#111827;border:1px solid rgb(31,41,55);border-radius:.5rem;padding:1rem;height:200px}.skeleton-text{height:1rem;margin-bottom:.5rem}.skeleton-text-sm{height:.75rem;margin-bottom:.5rem}.hosted-app-card button,.hosted-app-card a{transition:all .2s ease}.hosted-app-card button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 8px #0003}.hosted-app-card button:active:not(:disabled){transform:translateY(0)}.hosted-app-card a[href]{position:relative}.hosted-app-card a[href]:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:1px;background-color:#60a5fa;transition:width .3s ease}.hosted-app-card a[href]:hover:after{width:100%}@media(max-width:768px){.hosted-apps-main{padding:1rem}}.hosted-apps-main .text-center{animation:fade-in .5s ease-out}@keyframes fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hosted-apps-main .bg-red-950{animation:shake .5s ease-out}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.hosted-app-card .inline-flex.items-center.gap-1\.5{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hosted-app-logs{height:500px;min-height:400px;max-height:70vh}@media(max-width:768px){.hosted-app-logs{height:400px;max-height:60vh}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#0a0a0a;color:#fff}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center}.login-card{background:#1a1a2e;padding:2rem;border-radius:8px;width:100%;max-width:400px}.login-card h1{margin-bottom:1.5rem;text-align:center;color:#00d4ff}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;color:#888}.form-group input{width:100%;padding:.75rem;border:1px solid #333;border-radius:4px;background:#0a0a0a;color:#fff}.form-group input:focus{outline:none;border-color:#00d4ff}.login-card button{width:100%;padding:.75rem;background:#00d4ff;color:#000;border:none;border-radius:4px;cursor:pointer;font-weight:600}.login-card button:hover{background:#00b8e6}.login-card button:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#f44;color:#fff;padding:.75rem;border-radius:4px;margin-bottom:1rem}.dashboard{min-height:100vh}.dashboard-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;background:#1a1a2e;border-bottom:1px solid #333}.dashboard-header h1{color:#00d4ff;font-size:1.5rem}.dashboard-nav{display:flex;gap:1rem;padding:1rem 2rem;background:#16213e}.dashboard-nav a{color:#888;text-decoration:none;padding:.5rem 1rem;border-radius:4px}.dashboard-nav a:hover{color:#fff;background:#1a1a2e}.dashboard-main{padding:2rem}.dashboard-main h2{margin-bottom:1rem}.user-menu{display:flex;align-items:center;gap:1rem}.user-info{color:#888}.user-role{font-size:.8rem;color:#00d4ff}.logout-btn{padding:.5rem 1rem;background:transparent;color:#f44;border:1px solid #ff4444;border-radius:4px;cursor:pointer}.logout-btn:hover{background:#f44;color:#fff}.loading-spinner{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center}.spinner{width:40px;height:40px;border:3px solid #333;border-top-color:#00d4ff;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.users-table{width:100%;border-collapse:collapse;margin-top:1rem}.users-table th,.users-table td{padding:.75rem;text-align:left;border-bottom:1px solid #333}.users-table th{background:#1a1a2e;color:#00d4ff}.users-table tr:hover{background:#16213e}.create-project-container{max-width:800px;margin:0 auto}.create-project-header{margin-bottom:2rem}.create-project-header h2{font-size:1.8rem;margin-bottom:.5rem}.create-project-header .subtitle{color:#888;line-height:1.6}.create-project-form{background:#1a1a2e;padding:2rem;border-radius:8px;margin-bottom:2rem}.create-project-form .form-group{margin-bottom:1.5rem}.create-project-form label{display:block;margin-bottom:.5rem;font-weight:500}.create-project-form .label-hint{display:block;color:#888;font-weight:400;font-size:.9rem;margin-top:.25rem}.create-project-form input[type=text]{width:100%;padding:.75rem;border:1px solid #333;border-radius:4px;background:#0a0a0a;color:#fff;font-size:1rem}.create-project-form textarea{width:100%;padding:.75rem;border:1px solid #333;border-radius:4px;background:#0a0a0a;color:#fff;font-size:1rem;font-family:inherit;resize:vertical;min-height:200px}.create-project-form input:focus,.create-project-form textarea:focus{outline:none;border-color:#00d4ff}.file-upload-area{border:2px dashed #333;border-radius:8px;padding:2rem;text-align:center;cursor:pointer;transition:all .2s}.file-upload-area:hover{border-color:#00d4ff;background:#00d4ff0d}.file-placeholder{color:#888}.file-placeholder .upload-icon{font-size:2rem;display:block;margin-bottom:.5rem}.file-placeholder .file-hint{display:block;font-size:.8rem;margin-top:.5rem}.file-selected{display:flex;align-items:center;justify-content:center;gap:.5rem}.file-selected .file-icon{font-size:1.5rem}.file-selected .file-name{color:#00d4ff}.file-selected .file-clear{background:none;border:none;color:#f44;cursor:pointer;font-size:1rem;padding:.25rem}.form-actions{margin-top:2rem}.btn-primary{padding:.75rem 1.5rem;background:#00d4ff;color:#000;border:none;border-radius:4px;cursor:pointer;font-weight:600;font-size:1rem;display:inline-flex;align-items:center;gap:.5rem;text-decoration:none}.btn-primary:hover{background:#00b8e6}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:.75rem 1.5rem;background:transparent;color:#00d4ff;border:1px solid #00d4ff;border-radius:4px;cursor:pointer;font-weight:500}.btn-secondary:hover{background:#00d4ff1a}.spinner-small{width:16px;height:16px;border:2px solid transparent;border-top-color:currentColor;border-radius:50%;animation:spin .6s linear infinite;display:inline-block}.workflow-preview{background:#16213e;padding:1.5rem;border-radius:8px}.workflow-preview h3{margin-bottom:1rem;color:#00d4ff}.workflow-steps{display:grid;gap:1rem}.workflow-step{display:flex;gap:1rem;align-items:flex-start}.step-number{width:32px;height:32px;background:#00d4ff;color:#000;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.step-content strong{display:block;margin-bottom:.25rem}.step-content p{color:#888;font-size:.9rem;margin:0}.design-session-main{padding:0!important}.design-session-container{display:grid;grid-template-columns:1fr 300px;grid-template-rows:auto 1fr;height:calc(100vh - 120px)}.session-header{grid-column:1 / -1;padding:1.5rem 2rem;background:#1a1a2e;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center;gap:2rem}.session-info h2{margin-bottom:.5rem}.session-meta{display:flex;gap:1rem;align-items:center}.state-badge{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;color:#000}.session-id{color:#666;font-size:.85rem;font-family:monospace}.progress-section{min-width:250px}.progress-label{display:flex;justify-content:space-between;margin-bottom:.5rem;font-size:.85rem;color:#888}.progress-bar{height:8px;background:#333;border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:4px;transition:width .3s ease}.chat-container{display:flex;flex-direction:column;background:#0d0d15}.chat-messages{flex:1;overflow-y:auto;padding:1.5rem 2rem;display:flex;flex-direction:column;gap:1rem}.chat-empty{text-align:center;padding:3rem;color:#666}.chat-empty p{margin-bottom:.5rem}.chat-empty .hint{font-size:.9rem;color:#555}.chat-message{display:flex;gap:.75rem;max-width:80%}.message-avatar{width:36px;height:36px;border-radius:50%;background:#1a1a2e;display:flex;align-items:center;justify-content:center;flex-shrink:0}.message-bubble{background:#1a1a2e;padding:.75rem 1rem;border-radius:12px}.chat-message.user .message-bubble{background:#00d4ff;color:#000}.message-content{line-height:1.5;white-space:pre-wrap}.message-time{font-size:.75rem;color:#666;margin-top:.25rem}.chat-message.user .message-time{color:#00000080}.system-message{background:#16213e;padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:#888}.chat-input-area{padding:1rem 2rem;background:#1a1a2e;border-top:1px solid #333}.chat-input-form{display:flex;gap:.75rem;margin-bottom:.75rem}.chat-input-form input{flex:1;padding:.75rem 1rem;border:1px solid #333;border-radius:8px;background:#0a0a0a;color:#fff;font-size:1rem}.chat-input-form input:focus{outline:none;border-color:#00d4ff}.chat-input-form button{padding:.75rem 1.5rem;background:#00d4ff;color:#000;border:none;border-radius:8px;cursor:pointer;font-weight:500}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed}.chat-actions{display:flex;gap:.75rem;flex-wrap:wrap}.session-sidebar{background:#16213e;padding:1.5rem;border-left:1px solid #333;overflow-y:auto}.session-sidebar h3{color:#00d4ff;margin-bottom:1rem;font-size:1rem}.gathered-info{display:flex;flex-direction:column;gap:1rem}.info-item{background:#1a1a2e;padding:.75rem;border-radius:6px}.info-item strong{display:block;color:#888;font-size:.8rem;text-transform:capitalize;margin-bottom:.25rem}.info-item p{margin:0;font-size:.9rem}.no-info{color:#666;font-size:.9rem}.dashboard-nav a.active{color:#00d4ff;background:#1a1a2e}@media(max-width:900px){.design-session-container{grid-template-columns:1fr}.session-sidebar{display:none}.session-header{flex-direction:column;align-items:flex-start}.progress-section{width:100%}}.glass-card{background:#1a1a2ecc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(0,212,255,.15);border-radius:12px;box-shadow:0 4px 30px #0000004d}.glass-card:hover{border-color:#00d4ff4d;box-shadow:0 4px 40px #00d4ff1a}.chat-input-form input:focus,.chat-input:focus{box-shadow:0 0 20px #00d4ff4d;border-color:#00d4ff;outline:none}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message{animation:slideIn .3s ease}.typing-indicator{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;max-width:80%}.typing-indicator .message-avatar{width:36px;height:36px;border-radius:50%;background:#1a1a2e;display:flex;align-items:center;justify-content:center;flex-shrink:0}.typing-dots{display:flex;gap:4px;padding:12px 16px;background:#1a1a2e;border-radius:12px}.typing-dots span{width:8px;height:8px;background:#00d4ff;border-radius:50%;animation:typingPulse 1.4s infinite ease-in-out}@keyframes typingPulse{0%,60%,to{transform:scale(1);opacity:.4}30%{transform:scale(1.2);opacity:1}}.progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:4px;transition:width .5s ease;box-shadow:0 0 10px #00d4ff80}.progress-bar{height:8px;background:#1a1a2e;border-radius:4px;overflow:hidden;position:relative}.state-badge.input{background:#666;color:#fff}.state-badge.clarifying{background:#00d4ff;color:#000}.state-badge.ready_for_docs{background:orange;color:#000}.state-badge.reviewing{background:#ff69b4;color:#000}.state-badge.approved{background:#0f8;color:#000}.state-badge.building{background:#9370db;color:#fff}.state-badge.completed{background:#32cd32;color:#000}.state-badge.cancelled,.state-badge.failed{background:#f44;color:#fff}.action-btn{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:500;font-size:.95rem;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5rem}.action-btn.primary{background:linear-gradient(135deg,#00d4ff,#00b8e6);color:#000}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00d4ff66}.action-btn.secondary{background:transparent;border:1px solid #00d4ff;color:#00d4ff}.action-btn.secondary:hover{background:#00d4ff1a;transform:translateY(-2px)}.action-btn.success{background:linear-gradient(135deg,#0f8,#00d470);color:#000}.action-btn.success:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0f86}.action-btn.cancel{background:#333;color:#888}.action-btn.cancel:hover{background:#444;color:#fff}.action-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important;box-shadow:none!important}.sidebar-card{padding:1rem;margin-bottom:1rem;border-radius:12px}.sidebar-card h3{font-size:.9rem;color:#00d4ff;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.gathered-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.gathered-item{background:#0003;padding:.5rem .75rem;border-radius:6px}.gathered-header{display:flex;justify-content:space-between;align-items:center}.gathered-key{font-size:.85rem;text-transform:capitalize;color:#ccc}.gathered-score{font-weight:600;font-size:.8rem}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.stat-item{text-align:center;padding:.5rem;background:#0003;border-radius:8px}.stat-value{display:block;font-size:1.5rem;font-weight:700;color:#00d4ff}.stat-label{font-size:.7rem;color:#888;text-transform:uppercase}.flow-steps.vertical{list-style:none;padding:0;margin:0}.flow-step{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;opacity:.5;transition:all .2s ease}.flow-step.current{opacity:1;color:#00d4ff}.flow-step.completed{opacity:.8;color:#0f8}.step-icon{font-size:1.1rem}.step-label,.spec-preview .spec-content{font-size:.85rem}.spec-preview h4{color:#fff;margin-bottom:.5rem}.spec-summary{color:#888;line-height:1.5;margin-bottom:.75rem}.spec-section h5{font-size:.8rem;color:#00d4ff;margin-bottom:.25rem}.spec-section ul{list-style:none;padding:0;margin:0}.spec-section li{padding:.25rem 0 .25rem 1rem;position:relative;font-size:.8rem;color:#ccc}.spec-section li:before{content:"•";position:absolute;left:0;color:#00d4ff}.more-items{color:#666!important;font-style:italic}.revision-input-area{margin-top:1rem;padding:1rem;background:#0003;border-radius:8px}.revision-textarea{width:100%;padding:.75rem;background:#0a0a0a;border:1px solid #333;border-radius:6px;color:#fff;font-size:.9rem;resize:vertical;min-height:80px}.revision-textarea:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 10px #00d4ff33}.submit-button{width:100%;padding:1rem;background:linear-gradient(135deg,#00d4ff,#0f8);color:#000;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.submit-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #00d4ff66}.submit-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.loading-spinner{display:inline-flex;align-items:center;gap:.5rem}.session-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.session-item a{display:block;padding:.75rem;background:#0003;border-radius:8px;text-decoration:none;transition:all .2s ease}.session-item a:hover{background:#00d4ff1a;transform:translate(4px)}.session-name{color:#fff;font-weight:500;margin-bottom:.25rem}.session-meta{display:flex;justify-content:space-between;align-items:center}.session-date{font-size:.75rem;color:#666}.no-sessions{color:#666;font-size:.9rem;text-align:center;padding:1rem 0}.error-message{background:#ff44441a;border:1px solid #ff4444;color:#ff6b6b;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}.action-buttons,.chat-actions{display:flex;gap:.75rem;flex-wrap:wrap}.vm-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.vm-header h2{margin:0;color:#fff}.vm-controls-top{display:flex;gap:1rem;align-items:center}.auto-refresh{display:flex;align-items:center;gap:.5rem;color:#888;cursor:pointer}.auto-refresh input{cursor:pointer}.vm-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #333;border-radius:12px;padding:1.5rem;text-align:center}.stat-value{font-size:2.5rem;font-weight:700;color:#00d4ff;margin-bottom:.25rem}.stat-label{color:#888;font-size:.9rem;text-transform:uppercase;letter-spacing:.5px}.vm-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1rem;background:#1a1a2e;border-radius:8px;border:1px solid #333}.boot-controls{display:flex;gap:.75rem;align-items:center}.boot-controls select{padding:.5rem 1rem;background:#0a0a0a;border:1px solid #333;border-radius:4px;color:#fff;cursor:pointer}.btn-boot,.btn-cleanup,.btn-refresh{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-weight:500;transition:all .2s ease}.btn-boot{background:linear-gradient(135deg,#00d4ff,#09c);color:#000}.btn-boot:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.btn-cleanup{background:linear-gradient(135deg,#ff6b6b,#ee5a5a);color:#fff}.btn-cleanup:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ff6b6b4d}.btn-refresh{background:#333;color:#fff}.btn-refresh:hover:not(:disabled){background:#444}.btn-boot:disabled,.btn-cleanup:disabled,.btn-refresh:disabled{opacity:.5;cursor:not-allowed;transform:none}.vm-list{background:#1a1a2e;border:1px solid #333;border-radius:12px;overflow:hidden}.vm-list h3{margin:0;padding:1rem 1.5rem;background:#16213e;border-bottom:1px solid #333;color:#fff}.vm-table{width:100%;border-collapse:collapse}.vm-table th{text-align:left;padding:1rem 1.5rem;background:#0a0a0a;color:#888;font-weight:500;text-transform:uppercase;font-size:.8rem;letter-spacing:.5px}.vm-table td{padding:1rem 1.5rem;border-bottom:1px solid #333;color:#fff}.vm-table tr:last-child td{border-bottom:none}.vm-table tr:hover{background:#00d4ff0d}.vm-table .pid{font-family:monospace;color:#00d4ff;font-weight:600}.vm-table .command{font-family:monospace;font-size:.9rem;color:#aaa;max-width:400px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vm-table .actions button{padding:.4rem .8rem;background:#ff6b6b;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.85rem;transition:all .2s ease}.vm-table .actions button:hover:not(:disabled){background:#ff5252}.vm-table .actions button:disabled{opacity:.5;cursor:not-allowed}.empty-state{padding:3rem;text-align:center;color:#888}.empty-state p{margin:.5rem 0}.empty-state .hint{font-size:.9rem;color:#666}.error-banner{background:#ff6b6b1a;border:1px solid #ff6b6b;color:#ff6b6b;padding:1rem;border-radius:8px;margin-bottom:1.5rem}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;gap:1rem;flex-wrap:wrap}.page-title{display:flex;align-items:center;gap:1rem}.page-icon{color:#00d4ff}.page-title h2{margin:0;font-size:1.75rem;font-weight:600;color:#fff}.page-subtitle{margin:.25rem 0 0;color:#888;font-size:.9rem}.page-actions{display:flex;align-items:center;gap:1rem}.toggle-label{display:flex;align-items:center;gap:.5rem;color:#888;font-size:.9rem;cursor:pointer}.toggle-label input[type=checkbox]{width:18px;height:18px;accent-color:#00d4ff;cursor:pointer}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1rem;border:none;border-radius:8px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#00d4ff,#09c);color:#000}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff4d}.btn-secondary{background:#2a2a3e;color:#fff;border:1px solid #333}.btn-secondary:hover:not(:disabled){background:#333;border-color:#444}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.btn-danger:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.btn-icon{padding:.5rem;border-radius:6px}.btn-ghost-danger{background:transparent;color:#888}.btn-ghost-danger:hover:not(:disabled){background:#ef44441a;color:#ef4444}.select{padding:.625rem 1rem;background:#1a1a2e;border:1px solid #333;border-radius:8px;color:#fff;font-size:.9rem;cursor:pointer}.select:focus{outline:none;border-color:#00d4ff}.alert{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-radius:8px;margin-bottom:1.5rem}.alert-error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#f87171}.alert-dismiss{margin-left:auto;background:none;border:none;color:inherit;font-size:1.25rem;cursor:pointer;opacity:.7}.alert-dismiss:hover{opacity:1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;align-items:center;gap:1rem;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid #333;border-radius:12px;padding:1.25rem}.stat-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-icon.running{background:#00d4ff26;color:#00d4ff}.stat-icon.time{background:#a855f726;color:#a855f7}.stat-icon.capacity{background:#22c55e26;color:#22c55e}.stat-icon.health{background:#fbbf2426;color:#fbbf24}.stat-content{flex:1;min-width:0}.stat-value{font-size:1.5rem;font-weight:700;color:#fff;line-height:1.2}.stat-value.healthy{color:#22c55e}.stat-label{font-size:.8rem;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-top:.25rem}.stat-bar{height:4px;background:#333;border-radius:2px;margin-top:.5rem;overflow:hidden}.stat-bar-fill{height:100%;background:linear-gradient(90deg,#22c55e,#00d4ff);border-radius:2px;transition:width .5s ease}.action-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;background:#1a1a2e;border:1px solid #333;border-radius:12px;margin-bottom:1.5rem;flex-wrap:wrap}.action-group{display:flex;align-items:center;gap:.75rem}.action-label{color:#888;font-size:.9rem}.card{background:#1a1a2e;border:1px solid #333;border-radius:12px;overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;background:#0003;border-bottom:1px solid #333}.card-header h3{margin:0;font-size:1rem;font-weight:600;color:#fff;display:flex;align-items:center;gap:.5rem}.card-body{padding:0}.badge{background:#00d4ff26;color:#00d4ff;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.table{width:100%;border-collapse:collapse}.table th{text-align:left;padding:.875rem 1.25rem;background:#0003;color:#888;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.table td{padding:.875rem 1.25rem;border-bottom:1px solid #2a2a3e;color:#fff}.table tr:last-child td{border-bottom:none}.table tbody tr{transition:background .15s ease}.table tbody tr:hover{background:#00d4ff0d}.vm-row{animation:slideIn .3s ease forwards;animation-delay:var(--delay, 0ms);opacity:0}.monospace{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.9rem}.command-cell{font-family:SF Mono,Monaco,Consolas,monospace;font-size:.8rem;color:#888;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-dot{display:inline-flex;align-items:center;justify-content:center}.status-dot.online{color:#22c55e}.status-dot.offline{color:#888}.status-dot.error{color:#ef4444}.empty-state{padding:4rem 2rem;text-align:center}.empty-icon{color:#333;margin-bottom:1rem}.empty-state h4{margin:0 0 .5rem;color:#fff;font-size:1.25rem}.empty-state p{margin:0 0 1.5rem;color:#888}.skeleton-table{padding:1rem}.skeleton-row{display:flex;gap:1rem;padding:.875rem 0;border-bottom:1px solid #2a2a3e}.skeleton-row:last-child{border-bottom:none}.skeleton{background:linear-gradient(90deg,#2a2a3e 25%,#333,#2a2a3e 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px;height:20px}.skeleton-sm{width:60px}.skeleton-lg{flex:1}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:#1a1a2e;border:1px solid #333;border-radius:16px;width:100%;max-width:420px;margin:1rem;animation:modalIn .2s ease}@keyframes modalIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.modal-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem;border-bottom:1px solid #333}.modal-header h4{margin:0;font-size:1.1rem;color:#fff}.text-warning{color:#fbbf24}.modal-body{padding:1.25rem;color:#ccc;line-height:1.6}.modal-body p{margin:0}.modal-footer{display:flex;justify-content:flex-end;gap:.75rem;padding:1rem 1.25rem;background:#0003;border-top:1px solid #333}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media(max-width:768px){.page-header{flex-direction:column;align-items:stretch}.page-actions{justify-content:space-between}.stats-grid{grid-template-columns:repeat(2,1fr)}.action-bar{flex-direction:column;align-items:stretch}.action-group{justify-content:space-between}.command-cell{max-width:150px}}@media(max-width:480px){.stats-grid{grid-template-columns:1fr}.table th:nth-child(3),.table td:nth-child(3),.table th:nth-child(4),.table td:nth-child(4){display:none}}.spec-review-page .spec-review-main{padding:.5rem;display:flex;flex-direction:column;gap:.5rem;height:100vh;overflow:hidden}.spec-review-header{position:sticky;top:0;z-index:100;display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;flex-shrink:0;background:linear-gradient(135deg,#0d0d17fa,#141423fa);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.spec-review-header .header-left{display:flex;align-items:center;gap:1rem}.spec-review-header .back-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#ccc;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s}.spec-review-header .back-btn:hover{background:#fff3;color:#fff}.spec-review-header h2{margin:0;font-size:1.25rem;color:#fff}.spec-review-header .header-actions{display:flex;gap:.75rem}.revision-panel{padding:1.25rem;flex-shrink:0}.revision-panel h3{margin:0 0 .5rem;color:#00d4ff}.revision-panel p{margin:0 0 .75rem;color:#aaa;font-size:.9rem}.revision-textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:.75rem;color:#fff;font-size:.95rem;resize:vertical;min-height:60px}.revision-textarea:focus{outline:none;border-color:#00d4ff}.spec-review-tabs{display:flex;gap:.25rem;padding:0 .5rem;border-bottom:1px solid rgba(255,255,255,.06);background:#0003;border-radius:8px 8px 0 0;flex-shrink:0}.spec-review-tabs .tab{padding:.625rem 1rem;background:transparent;border:none;color:#71717a;font-size:.875rem;font-weight:500;cursor:pointer;position:relative;transition:color .15s ease}.spec-review-tabs .tab:hover{color:#a1a1aa}.spec-review-tabs .tab.active{color:#fff}.spec-review-tabs .tab.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:2px;background:linear-gradient(90deg,#7c3aed,#a855f7)}.spec-tab-content{flex:1;min-height:0;overflow:hidden;background:#0003;border-radius:0 0 8px 8px;padding:.5rem}.mockup-tab-panel{height:100%;display:flex;flex-direction:column}.spec-split-pane{display:grid;grid-template-columns:1fr 1fr;gap:1rem;flex:1;min-height:0;overflow:hidden}.markdown-editor{display:flex;flex-direction:column;background:#0d1117;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden}.editor-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.editor-label{color:#00d4ff;font-weight:500}.line-count{color:#666;font-size:.85rem}.editor-container{display:flex;flex:1;overflow:hidden}.line-numbers{padding:1rem .5rem;background:#ffffff05;border-right:1px solid rgba(255,255,255,.1);overflow-y:hidden;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-width:45px;text-align:right}.line-number{color:#444;font-family:Fira Code,monospace;font-size:.85rem;line-height:1.5;height:1.5em}.editor-textarea{flex:1;padding:1rem;background:transparent;border:none;color:#e6e6e6;font-family:Fira Code,Consolas,monospace;font-size:.9rem;line-height:1.5;resize:none;overflow-y:auto}.editor-textarea:focus{outline:none}.editor-textarea::-moz-placeholder{color:#555}.editor-textarea::placeholder{color:#555}.markdown-preview{display:flex;flex-direction:column;background:#0d1117;border:1px solid rgba(255,255,255,.1);border-radius:12px;overflow:hidden}.preview-header{display:flex;align-items:center;padding:.75rem 1rem;background:#ffffff0d;border-bottom:1px solid rgba(255,255,255,.1)}.preview-label{color:#0f8;font-weight:500}.preview-content{flex:1;padding:1.5rem;overflow-y:auto;color:#e6e6e6;line-height:1.6}.preview-content h1{color:#fff;font-size:1.75rem;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.preview-content h2{color:#00d4ff;font-size:1.35rem;margin:1.5rem 0 .75rem}.preview-content h3{color:orange;font-size:1.1rem;margin:1.25rem 0 .5rem}.preview-content p{margin:.75rem 0}.preview-content ul,.preview-content ol{margin:.75rem 0;padding-left:1.5rem}.preview-content li{margin:.35rem 0}.preview-content code{background:#00d4ff26;color:#00d4ff;padding:.15rem .4rem;border-radius:4px;font-family:Fira Code,monospace;font-size:.85em}.preview-content pre.code-block{background:#0006;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem;overflow-x:auto;margin:1rem 0}.session-status-badges{display:flex;align-items:center;gap:.75rem}.connection-status{display:flex;align-items:center;gap:.35rem;font-size:.8rem;padding:.35rem .75rem;border-radius:20px;background:#0000004d;border:1px solid rgba(255,255,255,.1)}.connection-status.connected{color:#0f8;border-color:#00ff884d}.connection-status.reconnecting{color:orange;border-color:#ffa5004d}.status-dot{font-size:.6rem;animation:pulse-status 2s infinite}.status-dot.live{color:#0f8;text-shadow:0 0 8px rgba(0,255,136,.8)}.status-dot.reconnecting{color:orange;text-shadow:0 0 8px rgba(255,165,0,.8);animation:pulse-reconnect 1s infinite}@keyframes pulse-status{0%,to{opacity:1}50%{opacity:.6}}@keyframes pulse-reconnect{0%,to{opacity:1}50%{opacity:.3}}.design-session-layout{display:flex;flex-direction:column;height:calc(100vh - 32px);gap:1rem}.design-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:1rem;border-bottom:1px solid rgba(255,255,255,.06)}.design-header-left{display:flex;align-items:center;gap:1rem}.design-header-left h1{font-size:1.5rem;font-weight:600;margin:0}.design-header-right{display:flex;align-items:center;gap:1rem}.progress-wrapper{display:flex;align-items:center;gap:.75rem}.progress-label{font-size:.875rem;color:#a1a1aa;font-weight:500}.progress-track{width:120px;height:6px;background:#ffffff1a;border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#0f8);border-radius:3px;transition:width .3s ease}.connection-dot{width:8px;height:8px;background:#22c55e;border-radius:50%;box-shadow:0 0 8px #22c55e99}.state-badge{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;border-radius:6px;font-size:.8rem;font-weight:500}.design-content{display:grid;grid-template-columns:1fr 300px;gap:1.5rem;flex:1;min-height:0}.chat-panel{display:flex;flex-direction:column;min-height:0;overflow:hidden}.chat-messages-area{flex:1;overflow-y:auto;padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.empty-chat{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#52525b;gap:.75rem}.empty-chat svg{opacity:.4}.chat-message{display:flex;gap:.75rem;max-width:85%}.chat-message.user{flex-direction:row-reverse;margin-left:auto}.chat-message.system{max-width:100%;justify-content:center}.message-avatar{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.user-avatar-bubble{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000}.assistant-avatar-bubble{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.message-bubble{padding:.875rem 1rem;border-radius:12px;max-width:100%}.user-bubble{background:linear-gradient(135deg,#00d4ff,#0ea5e9);color:#000;border-bottom-right-radius:4px}.assistant-bubble{background:linear-gradient(135deg,#6366f140,#8b5cf633);border:1px solid rgba(139,92,246,.3);color:#e4e4e7;border-bottom-left-radius:4px}.message-content{line-height:1.5;white-space:pre-wrap;font-size:.9rem}.message-time{font-size:.7rem;margin-top:.375rem;opacity:.6}.user-bubble .message-time{color:#00000080}.system-message{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-size:.85rem;color:#a1a1aa}.typing-indicator-container{display:flex;gap:.75rem;max-width:85%}.typing-avatar{width:36px;height:36px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0}.typing-bubble{background:linear-gradient(135deg,#6366f140,#8b5cf633);border:1px solid rgba(139,92,246,.3);padding:.875rem 1rem;border-radius:12px 12px 12px 4px;display:flex;align-items:center;gap:.75rem}.typing-dots{display:flex;gap:4px}.typing-dots span{width:8px;height:8px;background:#8b5cf6;border-radius:50%;animation:typing-bounce 1.4s infinite ease-in-out}.typing-dots span:nth-child(1){animation-delay:0s}.typing-dots span:nth-child(2){animation-delay:.2s}.typing-dots span:nth-child(3){animation-delay:.4s}@keyframes typing-bounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.typing-text{font-size:.8rem;color:#a1a1aa;font-style:italic}.chat-input-wrapper{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);background:#0003}.chat-form{display:flex;gap:.75rem}.chat-input{flex:1}.send-btn{padding:.625rem 1rem}.input-disabled{text-align:center;color:#52525b;font-size:.875rem;padding:.75rem}.action-buttons{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06);flex-wrap:wrap}.revision-panel{padding:1rem 1.5rem;border-top:1px solid rgba(255,255,255,.06)}.revision-actions{display:flex;gap:.75rem;margin-top:.75rem}.design-sidebar{display:flex;flex-direction:column;gap:1rem;overflow-y:auto}.sidebar-card{padding:1rem}.sidebar-card .card-header{margin-bottom:.75rem}.sidebar-card .card-title{display:flex;align-items:center;gap:.5rem;font-size:.85rem}.gathered-list{list-style:none;display:flex;flex-direction:column;gap:.5rem}.gathered-item{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#ffffff08;border-radius:6px;font-size:.8rem}.gathered-key{color:#a1a1aa;text-transform:capitalize}.gathered-score{font-weight:600}.spec-preview-content h4{font-size:.9rem;margin-bottom:.5rem;color:#fff}.spec-preview-content p{font-size:.8rem;color:#71717a;margin-bottom:.75rem}.spec-section{margin-top:.75rem}.spec-section strong{font-size:.75rem;color:#a1a1aa;text-transform:uppercase;letter-spacing:.05em}.spec-section ul{list-style:none;margin-top:.375rem}.spec-section li{font-size:.8rem;color:#e4e4e7;padding:.25rem 0}.spec-section .more{font-size:.75rem;color:#00d4ff}.stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.stat{text-align:center;padding:.5rem;background:#ffffff08;border-radius:6px}.stat-val{display:block;font-size:1.25rem;font-weight:600;color:#00d4ff}.stat-lbl{font-size:.7rem;color:#71717a;text-transform:uppercase}.flow-list{list-style:none;display:flex;flex-direction:column;gap:.25rem}.flow-item{display:flex;align-items:center;gap:.5rem;padding:.375rem .5rem;border-radius:4px;font-size:.8rem;color:#52525b}.flow-item.current{background:#00d4ff1a;color:#00d4ff}.flow-item.done{color:#22c55e}.flow-icon{font-size:.9rem}.design-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#52525b}.spin{animation:spin 1s linear infinite}.error-toast{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#ef4444;font-size:.875rem}.error-toast button{background:none;border:none;color:#ef4444;font-size:1.25rem;cursor:pointer;padding:0;line-height:1}@media(max-width:1024px){.design-content{grid-template-columns:1fr}.design-sidebar{display:none}}.project-type-selector{max-width:900px;margin:0 auto;padding:2rem}.project-type-selector .selector-header{text-align:center;margin-bottom:2.5rem}.project-type-selector .selector-header h2{font-size:2rem;margin-bottom:.5rem}.project-type-selector .selector-header .subtitle{color:#888;font-size:1.1rem}.project-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:2rem}@media(max-width:900px){.project-type-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.project-type-grid{grid-template-columns:1fr}}.project-type-card{position:relative;display:flex;flex-direction:column;align-items:center;padding:2rem 1.5rem;border:2px solid transparent;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center;background:#1a1a2ecc}.project-type-card:hover:not(.disabled){border-color:#00d4ff;transform:translateY(-4px);box-shadow:0 8px 24px #00d4ff26}.project-type-card.disabled{opacity:.5;cursor:not-allowed}.project-type-card .type-icon{font-size:3rem;margin-bottom:1rem}.project-type-card h3{font-size:1.3rem;margin-bottom:.5rem;color:#fff}.project-type-card p{color:#888;font-size:.9rem;line-height:1.5;margin:0}.coming-soon-badge{position:absolute;top:1rem;right:1rem;background:linear-gradient(135deg,#f80,#f44);color:#fff;font-size:.7rem;font-weight:600;padding:.25rem .5rem;border-radius:4px;text-transform:uppercase}.back-button{background:transparent;border:1px solid #333;color:#888;padding:.5rem 1rem;border-radius:4px;cursor:pointer;margin-bottom:1rem;transition:all .2s ease}.back-button:hover{border-color:#00d4ff;color:#00d4ff}.textarea-medium{min-height:120px!important}.type-summary{list-style:none;padding:0;margin:0}.type-summary li{padding:.5rem 0;color:#888;font-size:.9rem}.type-summary li strong{color:#ccc}.glass-card{background:#1a1a2eb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(0,212,255,.1);border-radius:12px;box-shadow:0 8px 32px #0000004d}.glass-card:hover{border-color:#00d4ff33}input:focus,textarea:focus,select:focus{outline:none;border-color:#00d4ff!important;box-shadow:0 0 0 3px #00d4ff1a,0 0 15px #00d4ff26}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.animate-fadeIn{animation:fadeIn .3s ease-out}.animate-slideIn{animation:slideIn .3s ease-out}.btn-primary{position:relative;overflow:hidden;transition:all .2s ease}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff66}.btn-primary:active:not(:disabled){transform:translateY(0)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003;border-radius:4px}::-webkit-scrollbar-thumb{background:#00d4ff4d;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#00d4ff80}.type-icon-wrapper{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:1rem;color:#fff}.type-icon-wrapper.small{width:36px;height:36px;margin-bottom:0}.type-icon-wrapper.blue{background:linear-gradient(135deg,#3b82f6,#2563eb)}.type-icon-wrapper.green{background:linear-gradient(135deg,#22c55e,#16a34a)}.type-icon-wrapper.purple{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.type-icon-wrapper.purple .type-icon-wrapper.orange,.type-icon-wrapper.orange{background:linear-gradient(135deg,#f97316,#ea580c)}.project-type-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:1.5rem;border:1px solid #334155;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:left;background:linear-gradient(145deg,#1e293b,#0f172a)}.project-type-card:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 8px 25px #3b82f626}.project-type-card.blue:hover:not(.disabled){border-color:#3b82f6;box-shadow:0 8px 25px #3b82f633}.project-type-card.green:hover:not(.disabled){border-color:#22c55e;box-shadow:0 8px 25px #22c55e33}.project-type-card.purple:hover:not(.disabled){border-color:#8b5cf6;box-shadow:0 8px 25px #8b5cf633}.project-type-card.disabled{opacity:.6;cursor:not-allowed}.project-type-card h3{font-size:1.1rem;font-weight:600;margin-bottom:.5rem;color:#f1f5f9}.project-type-card p{color:#94a3b8;font-size:.875rem;line-height:1.5;margin:0}.coming-soon-badge{position:absolute;top:1rem;right:1rem;background:#334155;color:#94a3b8;font-size:.65rem;font-weight:500;padding:.2rem .5rem;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.type-meta-info{display:flex;gap:1.25rem;margin-top:1rem;margin-bottom:.5rem;padding-top:1rem;border-top:1px solid #334155}.type-meta-info .meta-item{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:#64748b}.type-meta-info .meta-item svg{opacity:.7}.see-example-link{display:inline-flex;align-items:center;gap:.4rem;margin-top:.75rem;padding:.4rem .75rem;background:transparent;border:1px solid #334155;border-radius:6px;color:#64748b;font-size:.8rem;font-weight:500;cursor:pointer;transition:all .2s}.see-example-link:hover{background:#3b82f61a;border-color:#3b82f6;color:#3b82f6;transform:translate(2px)}.project-type-card.blue .see-example-link:hover{border-color:#3b82f6;color:#3b82f6}.project-type-card.green .see-example-link:hover{border-color:#22c55e;color:#22c55e;background:#22c55e1a}.project-type-card.orange .see-example-link:hover{border-color:#f97316;color:#f97316;background:#f973161a}.project-type-card.purple .see-example-link:hover{border-color:#8b5cf6;color:#8b5cf6;background:#8b5cf61a}.form-header-title{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.form-header-title h2{margin:0;font-size:1.5rem}.back-button{display:flex;align-items:center;gap:.5rem;background:transparent;border:1px solid #334155;color:#94a3b8;padding:.5rem 1rem;border-radius:6px;cursor:pointer;transition:all .2s ease;margin-bottom:1.5rem}.back-button:hover{border-color:#64748b;color:#e2e8f0;background:#64748b1a}.submit-button{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;border:none;border-radius:8px;background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.submit-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 15px #3b82f64d}.submit-button:disabled{opacity:.5;cursor:not-allowed}.submit-button.green{background:linear-gradient(135deg,#22c55e,#16a34a)}.submit-button.green:hover:not(:disabled){box-shadow:0 4px 15px #22c55e4d}.flow-preview-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.75rem}.flow-preview-header h4{margin:0;font-size:.9rem;color:#e2e8f0}.project-type-selector .selector-header h2{font-size:1.75rem;font-weight:600;color:#f1f5f9;margin-bottom:.5rem}.project-type-selector .selector-header .subtitle{color:#94a3b8;font-size:1rem}.recent-sessions-sidebar.glass-card{background:linear-gradient(145deg,#1e293b,#0f172a);border:1px solid #334155;-webkit-backdrop-filter:none;backdrop-filter:none}.recent-sessions-sidebar.glass-card:hover{border-color:#334155;box-shadow:none}.recent-sessions-sidebar h3{color:#f1f5f9;font-size:1rem;font-weight:600;margin-bottom:1rem}.recent-sessions-sidebar .session-list{display:flex;flex-direction:column;gap:.5rem}.recent-sessions-sidebar .session-item a{display:block;padding:.75rem;background:linear-gradient(145deg,#1e293b80,#0f172a80);border:1px solid #334155;border-radius:8px;text-decoration:none;transition:all .2s ease}.recent-sessions-sidebar .session-item a:hover{border-color:#3b82f6;background:linear-gradient(145deg,#3b82f61a,#1e293b80);transform:translate(4px);box-shadow:0 4px 15px #3b82f61a}.recent-sessions-sidebar .session-name{color:#f1f5f9;font-weight:500;font-size:.875rem;margin-bottom:.35rem}.recent-sessions-sidebar .session-date{color:#64748b;font-size:.75rem}.recent-sessions-sidebar .no-sessions{color:#64748b;font-size:.875rem}.recent-sessions-sidebar .flow-preview{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #334155}.recent-sessions-sidebar .flow-preview h4{color:#f1f5f9;font-size:.9rem;margin-bottom:.75rem}.recent-sessions-sidebar .flow-steps{list-style:none;padding:0;margin:0;counter-reset:step}.recent-sessions-sidebar .flow-steps li{position:relative;padding-left:2rem;padding-bottom:.75rem;color:#94a3b8;font-size:.8rem;counter-increment:step}.recent-sessions-sidebar .flow-steps li:before{content:counter(step);position:absolute;left:0;width:1.25rem;height:1.25rem;background:#334155;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:#94a3b8}.recent-sessions-sidebar .flow-steps li.current:before{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.recent-sessions-sidebar .flow-steps li.current{color:#f1f5f9}.recent-sessions-sidebar .type-summary{list-style:none;padding:0;margin:0}.recent-sessions-sidebar .type-summary li{color:#94a3b8;font-size:.8rem;padding:.35rem 0}.recent-sessions-sidebar .type-summary li strong{color:#e2e8f0}.btn-loading{display:inline-flex;align-items:center;gap:.5rem}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem;padding:1rem 0}.agent-card{background:var(--card-bg, #1e293b);border:1px solid var(--border-color, #334155);border-radius:12px;padding:1.25rem;cursor:pointer;transition:all .2s ease}.agent-card:hover{border-color:var(--primary, #3b82f6);transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.agent-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.agent-card-title{display:flex;align-items:center;gap:.5rem}.agent-icon{color:var(--primary, #3b82f6)}.agent-name{font-weight:600;font-size:1.1rem;color:var(--text-primary, #f1f5f9)}.agent-version{font-size:.75rem;color:var(--text-muted, #64748b);background:var(--bg-tertiary, #0f172a);padding:2px 6px;border-radius:4px}.agent-badges{display:flex;gap:.5rem}.badge{font-size:.7rem;padding:3px 8px;border-radius:4px;font-weight:500}.badge-runtime{background:var(--primary-dim, #1e3a5f);color:var(--primary, #3b82f6)}.badge-memory{background:var(--purple-dim, #2e1065);color:var(--purple, #a855f7)}.agent-description{color:var(--text-secondary, #94a3b8);font-size:.9rem;margin-bottom:.75rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.agent-tags{display:flex;flex-wrap:wrap;gap:.375rem;margin-bottom:.75rem}.tag{font-size:.7rem;padding:2px 8px;background:var(--bg-tertiary, #0f172a);color:var(--text-muted, #64748b);border-radius:12px;border:1px solid var(--border-color, #334155)}.tag-more{background:var(--primary-dim, #1e3a5f);color:var(--primary, #3b82f6)}.agent-meta{display:flex;justify-content:space-between;font-size:.8rem;color:var(--text-muted, #64748b);margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border-color, #334155)}.agent-stats{display:flex;gap:1rem}.agent-stats .stat{display:flex;align-items:center;gap:.375rem;font-size:.8rem;color:var(--text-secondary, #94a3b8)}.agent-stats .text-green{color:var(--success, #22c55e)}.agent-stats .text-yellow{color:var(--warning, #f59e0b)}.filters-bar{display:flex;gap:1rem;padding:1rem;background:var(--card-bg, #1e293b);border-radius:8px;margin-bottom:1rem}.search-input{display:flex;align-items:center;gap:.5rem;flex:1;background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:6px;padding:0 .75rem}.search-input input{flex:1;background:transparent;border:none;outline:none;padding:.5rem 0;color:var(--text-primary, #f1f5f9)}.filter-select{background:var(--bg-tertiary, #0f172a);border:1px solid var(--border-color, #334155);border-radius:6px;padding:.5rem 1rem;color:var(--text-primary, #f1f5f9);min-width:140px}
