@import"https://fonts.googleapis.com/css2?family=Alfa+Slab+One&family=Nixie+One&family=Lato:wght@300;400;700&family=Raleway:wght@200;400;800&family=Tulpen+One&family=Sacramento&display=swap";:root{--space-xs: clamp(.25rem, 1vw, .5rem);--space-sm: clamp(.5rem, 2vw, 1rem);--space-md: clamp(1rem, 3vw, 2rem);--space-lg: clamp(1.5rem, 4vw, 3rem);--space-xl: clamp(2rem, 5vw, 4rem);--text-xs: clamp(.7rem, 1.5vw, .75rem);--text-sm: clamp(.8rem, 2vw, .875rem);--text-base: clamp(.9rem, 2.5vw, 1rem);--text-lg: clamp(1rem, 3vw, 1.25rem);--text-xl: clamp(1.25rem, 4vw, 1.5rem);--text-2xl: clamp(1.5rem, 5vw, 2rem);--text-3xl: clamp(2rem, 6vw, 3rem);--container-sm: min(100% - 2rem, 640px);--container-md: min(100% - 2rem, 768px);--container-lg: min(100% - 2rem, 1024px);--container-xl: min(100% - 2rem, 1280px);--is-mobile: 0}@media (max-width: 768px){:root{--is-mobile: 1}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;height:100%;overflow-x:hidden;overflow-y:auto}body,#root{width:100%;min-height:100%;overflow-x:hidden}@media (min-width: 769px){html,body,#root{height:100%;overflow:hidden}}body{font-family:Lato,Arial,sans-serif;font-size:var(--text-base);line-height:1.6;color:#333;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;touch-action:manipulation}.mobile-only{display:none}.desktop-only{display:block}@media (max-width: 768px){.mobile-only{display:block}.desktop-only{display:none}.main{width:100vw;min-height:100vh;min-height:100dvh;overflow-x:hidden;overflow-y:auto}.rm-container{width:100%;height:100%;max-width:none;margin:0;perspective:none}.rm-wrapper,.rm-wrapper>div,.rm-wrapper>div>div{transform-style:flat!important;transform:none!important;position:absolute;width:100%;height:100%}.rm-container.rm-closed .rm-cover .rm-front{z-index:100;opacity:1;visibility:visible}.rm-container.rm-closed .rm-cover .rm-back,.rm-container.rm-closed .rm-middle,.rm-container.rm-closed .rm-right{opacity:0;visibility:hidden;pointer-events:none}.rm-container.rm-open{height:auto!important;min-height:100vh;overflow:visible!important}.rm-container.rm-open .rm-wrapper{position:relative!important;height:auto!important;min-height:auto;display:block}.rm-container.rm-open .rm-cover .rm-front{display:none}.rm-container.rm-open .rm-cover{position:relative;order:1}.rm-container.rm-open .rm-cover .rm-back{position:relative;opacity:1;visibility:visible;transform:none;height:auto;min-height:auto}.rm-container.rm-open .rm-middle{position:relative;opacity:1;visibility:visible;z-index:10;order:2;height:auto}.rm-container.rm-open .rm-middle .rm-front{position:relative;height:auto}.rm-container.rm-open .rm-right{position:relative;opacity:1;visibility:visible;z-index:10;order:3;height:auto}.rm-container.rm-open .rm-right .rm-front{position:relative;height:auto;transform:none}.rm-container.rm-open .rm-right .back-cover{display:none}.cover{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;height:100%}.cover h1{font-size:1.8rem}.cover h2{font-size:1rem;margin:1rem 0}.cover h3{font-size:.85rem;margin:.5rem 0}a.rm-button-open{position:relative;right:auto;top:auto;transform:none;margin-top:2rem;display:inline-block}.ribbon{padding:1rem 2rem;font-size:1.1rem;min-width:120px;text-align:center}.rm-container.rm-open .rm-inner,.rm-container.rm-open .page-scroll,.rm-container.rm-open .page,.rm-container.rm-open .content{position:relative!important;height:auto!important;min-height:auto!important;overflow:visible!important}.rm-container.rm-open .content{padding:1rem;border-bottom:3px solid rgba(194,83,55,.3);background:#fdfbf7}.rm-container.rm-open .section-title{font-size:1.1rem;margin-bottom:.5rem;color:#c25337}.rm-container.rm-open .rm-right .content{padding-bottom:100px;border-bottom:none}.rm-container.rm-open .solving-terminal,.rm-container.rm-open .projects-list-simple,.rm-container.rm-open .project-workspace{position:relative!important;height:auto!important}.rm-container.rm-open textarea,.rm-container.rm-open input[type=text]{font-size:16px!important;width:100%!important}.rm-container.rm-open .rm-overlay{display:none!important}.rm-close{position:fixed!important;bottom:20px!important;right:20px!important;top:auto!important;left:auto!important;background:#c25337!important;color:#fff!important;width:56px!important;height:56px!important;border-radius:50%!important;display:flex!important;align-items:center!important;justify-content:center!important;font-size:1.5rem!important;z-index:1000!important;box-shadow:0 4px 15px #0006!important;border:3px solid white!important}.settings-fab{top:10px;right:10px;width:40px;height:40px;z-index:1000}.status-bar,.simple-status{top:10px;left:10px;font-size:.75rem;z-index:1000}.modal-overlay,.settings-modal-overlay,.deploy-modal-overlay{padding:1rem}.settings-modal-content,.deploy-modal-content{width:95%;max-height:85vh;margin:auto}.roadmap-btn{top:60px!important;right:10px!important;width:34px!important;height:34px!important;font-size:.9rem!important;z-index:1001!important}}a{color:#c25337;text-decoration:none;outline:none}a:hover{color:#c00}img{width:auto;max-width:100%;height:auto}h1,h2,h3,h4,h5,h6{font-weight:400}p,ul,ol{font-size:.875em;line-height:160%}.cf:before,.cf:after{content:" ";display:table}.cf:after{clear:both}.center{text-align:center}.main{width:100%;height:100%;min-height:100vh;background-color:#c4a882;background-image:url(/images/bckg/body-bg/wood.png);background-attachment:fixed;background-repeat:repeat}#header{display:none;position:relative;z-index:1000;width:100%;text-align:center}#header nav ul{list-style:none;display:flex;padding:0;margin:0}#header nav ul li{flex:1}#header nav ul li a{display:block;line-height:70px;font-size:20px;text-align:center;color:#ddd;background:#303335;border-left:1px solid #555;border-right:1px solid #232428;text-shadow:0 2px rgba(0,0,0,.12);box-shadow:inset 0 1px #ffffff0d,inset 0 -1px 1px #00000026;transition:all .3s ease-out}#header nav ul li:first-child a{border-left:none}#header nav ul li:last-child a{border-right:none}#header nav ul li a:hover{color:#eee;background:#222}#header nav ul li:nth-child(1) a:before{content:"◀";font-family:inherit}#header nav ul li:nth-child(2) a:before{content:"☰";font-family:inherit}#header nav ul li:nth-child(3) a:before{content:"◈";font-family:inherit}#header nav ul li:nth-child(4) a:before{content:"✉";font-family:inherit}.rm-container{width:32%;height:100%;max-width:560px;margin:0 auto;position:relative;perspective:1600px}.rm-wrapper{position:absolute;top:40px;bottom:40px;left:0;width:100%;height:auto;transform-style:preserve-3d;transition:all .6s ease-in-out,height 0s}.rm-wrapper>div{width:100%;height:100%;left:0;top:0;position:absolute;transform-style:preserve-3d;transition:all .6s ease-in-out,height 0s}.rm-wrapper>div>div{width:100%;height:100%;position:absolute;background:#eee url(/images/bckg/paper-bg/cream_dust.png) 0 0 repeat}.rm-container .rm-front,.rm-container .rm-back{backface-visibility:hidden}.rm-container .rm-back{transform:rotateY(-180deg)}.rm-wrapper .rm-cover{transform-origin:0% 50%;transition-delay:.2s;z-index:100}.rm-wrapper .rm-right{transform-origin:100% 50%;transition-delay:0s;z-index:60}.rm-wrapper .rm-middle{z-index:50;box-shadow:2px 2px 10px #00000080}.rm-middle .rm-inner{position:absolute;top:0;right:0;bottom:0;left:0}.rm-wrapper>div>div.rm-front{z-index:120}.rm-wrapper>div>div.rm-back{z-index:120}.rm-container.rm-open .rm-cover{transform:rotateY(-180deg);transition-delay:0s}.rm-container.rm-open .rm-right{transform:rotateY(180deg);transition-delay:.2s}.rm-container.rm-open .rm-wrapper .rm-cover{box-shadow:2px 4px 4px #0003}.rm-container.rm-open .rm-wrapper .rm-right{box-shadow:-2px 4px 4px #0003}.rm-container.rm-open .rm-wrapper .rm-middle{box-shadow:0 6px 4px -2px #0003}.rm-container.rm-closed .rm-wrapper>div.rm-right>div.rm-front{visibility:hidden}.rm-container .rm-wrapper>div.rm-right>div.rm-front{visibility:visible}.rm-overlay{position:absolute;width:10%;height:100%;top:0;right:0;pointer-events:none;background:linear-gradient(to right,#0000,#0000000a)}.antiscroll-wrap{position:absolute;top:0;left:0;right:0;bottom:0;overflow:hidden;z-index:1}.antiscroll-inner{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.antiscroll-inner::-webkit-scrollbar{width:7px}.antiscroll-inner::-webkit-scrollbar-track{background:transparent}.antiscroll-inner::-webkit-scrollbar-thumb{background:#0000004d;border-radius:7px}.content{position:relative;padding:2em}.content h2.inner-page-title{margin:.6em 0 1.6em;text-align:center}.content h2.inner-page-title span{display:inline-block;padding:10px 25px;background:#222;color:#fff;font-family:Lato,sans-serif;font-size:1.1rem;font-weight:700;text-transform:uppercase;letter-spacing:3px;box-shadow:0 2px 4px #0003}h3.section-label{margin:2.2em 0 1.6em;text-align:center}h3.section-label span{display:inline-block;padding:5px 15px;border:1px solid #333;font-family:Lato,sans-serif;font-size:.75rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#333}.cover{position:relative;z-index:1000;width:100%;height:100%;overflow:hidden;background-position:center center;background-repeat:no-repeat;background-size:cover;background:linear-gradient(145deg,#1a1a2e,#16213e,#0f0f1a);box-shadow:inset 0 0 100px #0000004d}.cover:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 30% 20%,rgba(99,102,241,.08) 0%,transparent 50%),radial-gradient(ellipse at 70% 80%,rgba(236,72,153,.05) 0%,transparent 50%);pointer-events:none;z-index:1}.cover:after{content:"";position:absolute;top:0;left:1px;width:3px;height:100%;background:linear-gradient(to right,rgba(0,0,0,.4),transparent);box-shadow:-3px 0 8px #0003,3px 0 8px #00000026;z-index:2}.cover h1{position:relative;z-index:10;display:block;width:100%;margin:0 auto;padding:.5em .5em .1em;text-align:center;color:#fff;line-height:1;letter-spacing:2px;font-size:48px;font-family:Alfa Slab One,serif;word-wrap:break-word;overflow-wrap:break-word;text-shadow:#1a1a2e -1px 1px 0,#1a1a2e -2px 2px 0,#f59e0b -3px 3px 0,#d97706 -4px 4px 0}.cover h2{position:relative;z-index:10;display:block;width:100%;margin:0 0 8%;padding:0;text-align:center;line-height:1.2;letter-spacing:2px;color:#ffffffb3;font-size:14px;font-family:Raleway,sans-serif;font-weight:300;text-transform:uppercase;text-shadow:rgba(0,0,0,.5) 1px 1px 0}.cover h3{position:relative;z-index:10;display:block;width:40%;margin:4% 0 0 6%;padding:0;text-align:left;letter-spacing:.5px;font-size:15px;font-family:Raleway,sans-serif;font-weight:300;color:#fffc;text-shadow:rgba(0,0,0,.3) 1px 1px 0}.cover h3 span{display:block;font-weight:700;font-size:14px;letter-spacing:2px;text-transform:uppercase;background:linear-gradient(135deg,#f59e0b,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:2px}a.rm-button-open{position:absolute;top:50%;transform:translateY(-50%);right:-12px;cursor:pointer;z-index:1000;display:flex;align-items:center}a.rm-button-open:hover{right:0}.ribbon{position:relative;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:#0000004d 2px 2px 4px,inset 0 1px #fff3;transition:all .2s ease-out;height:46px}.ribbon strong{display:block;padding:0 16px 0 10px;font-size:13px!important;font-weight:700;color:#1a1a2e;text-shadow:0 1px 0 rgba(255,255,255,.3);letter-spacing:2px;text-transform:uppercase}a.ribbon{color:#1a1a2e}a.ribbon:hover{color:#000;background:linear-gradient(135deg,#fbbf24,#f59e0b)}.ribbon:before{content:"";position:absolute;left:-23px;top:0;width:0;height:0;border-top:23px solid transparent;border-bottom:23px solid transparent;border-right:23px solid #f59e0b;filter:drop-shadow(-1px 1px 2px rgba(0,0,0,.3))}.ribbon-stitches-top{position:absolute;top:3px;left:-18px;right:0;border-top:1px dashed rgba(0,0,0,.15);box-shadow:0 0 2px #ffffff4d}.ribbon-stitches-bottom{position:absolute;bottom:3px;left:-18px;right:0;border-top:1px dashed rgba(0,0,0,.15);box-shadow:0 0 2px #fff3}.rm-close{color:#fff;position:absolute;top:0;right:30px;cursor:pointer;z-index:300;background:#333;border-left:1px dashed #888;border-right:1px dashed #888;box-shadow:3px 0 #333,-3px 0 #333;text-align:center;width:40px;height:50px}.rm-close:hover{color:#ccc}.rm-close span{display:inline-block;margin-top:14px}.rm-close span:before{content:"✕";font-size:20px}.rm-close:after,.rm-close:before{border-top:15px solid #333;content:"";height:0;position:absolute;top:100%;width:0}.rm-close:after{border-left:25px solid transparent;right:-4px}.rm-close:before{border-right:25px solid transparent;left:-4px}.latest-from-blog{margin:22px 0;position:absolute;bottom:60px;right:0;left:0}.latest-from-blog h3{width:320px;font-size:12px!important;padding:6px 6px 6px 4%;background:#111;margin:0;text-transform:uppercase;text-align:left;font-family:Lato,sans-serif;font-weight:700;color:#fff;text-shadow:none}.latest-from-blog h3 a:before{content:" - "}.latest-from-blog h3 a{font-size:10px;color:#fff;letter-spacing:2px}.latest-from-blog h3 a:hover{opacity:.6}.latest-from-blog h2{text-align:left;margin:0 0 0 4%;display:inline;font-size:18px!important;text-shadow:none!important}.latest-from-blog h2 a{display:inline-block;padding:5px;color:#111;background:#f9ed3a;font-family:Lato,sans-serif}.latest-from-blog h2 a:hover{background:#fff}h4.about-text{text-align:center;font-size:1.4em;line-height:160%;padding:.3em 0}.label{display:inline-block;padding:0 .4em;border-bottom:2px solid #333;font-weight:700}.history-group{padding-top:.4em}.history-unit{position:relative;padding:.5em 0}.history-unit .work-desc{margin-left:126px;position:relative}.history-unit .work-desc h4{margin:0 0 2px;font-weight:400}.history-unit .work-desc h5{margin:.2em 0 .4em;font-size:.8em;color:#999}.history-unit .work-desc h5:before{content:"→ ";display:inline-block;margin-right:6px}.history-unit .work-desc p{margin-top:.6em}.history-unit h4.work-time{position:relative;z-index:100;float:left;margin-top:0;min-width:80px;text-align:center;font-size:2.2em;font-family:Tulpen One,cursive;padding:4px 10px;border:1px solid #ddd;border-radius:4px}.history-unit:before{content:"";position:absolute;z-index:90;top:66px;left:50px;bottom:4px;border-left:1px dashed #ccc}.history-unit:last-child:before{display:none}#filters{list-style:none;padding:0;margin:0 0 1.2em;text-align:center}#filters li{display:inline-block;margin:0 .7em .2em}#filters li a{color:#999;font-size:.9em;padding-bottom:2px;cursor:pointer}#filters li a:hover{color:#888}#filters li.current a{border-bottom:3px solid #333;color:#333}.portfolio-items{min-height:200px;width:106%;margin-left:-3%;display:flex;flex-wrap:wrap}.portfolio-items .hentry{float:left;width:50%;padding:10px 15px;margin-bottom:0;text-align:center}.portfolio-items .hentry img{display:block;width:100%}.portfolio-items .hentry h4{color:#222;margin:1em 0 .2em;font-size:.9em;font-weight:400}.portfolio-items .hentry p{font-size:.8em;margin:0 0 .2em;padding-bottom:.8em;color:#888;text-shadow:0 1px 0 #fff;border-bottom:1px solid #ddd}.portfolio-items .media-box{position:relative;padding:4px;background-color:#fff;border-radius:2px;box-shadow:1px 1px 1px #d1d1d1}.portfolio-items .media-box:before{content:" ";position:absolute;height:75%;top:15px;left:0;width:100%;border-radius:12px/65px;box-shadow:0 0 10px #555;z-index:-10}.media-box .mask{opacity:0;position:absolute;width:100%;height:100%;top:0;left:0;transition:opacity .3s ease-out}.media-box:hover .mask{opacity:1}.media-box .mask a{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffff80}.social{padding:0;margin:2em 0;list-style:none;text-align:center}.social li{display:inline-block;padding:0;margin-bottom:-3px}.social li a{display:block;float:left;margin:0 .1em .2em 0;line-height:100%;text-align:center;font-size:21px;padding:9px 8px 7px;min-width:21px;max-height:40px;color:#444;border-radius:50%;border:1px solid #ddd;transition:all .3s ease-out}.social li a:hover{color:#fff!important;background-color:#000;border-color:#fff}.social li a.facebook:before{content:"f";font-family:Arial;font-weight:700}.social li a.twitter:before{content:"𝕏"}.social li a.linkedin:before{content:"in";font-size:12px;font-weight:700}.social li a.googleplus:before{content:"g+";font-size:12px;font-weight:700}.social li a.pinterest:before{content:"P";font-weight:700}.social li a.tumblr:before{content:"t";font-weight:700}.social li a.behance:before{content:"Bē";font-size:12px;font-weight:700}.social li a.dribbble:before{content:"●"}.social li a.github:before{content:"⌘"}.social li a.instagram:before{content:"◎"}.social li a.facebook:hover{background-color:#3c5fac}.social li a.twitter:hover{background-color:#5ec3df}.social li a.linkedin:hover{background-color:#2089b5}.social li a.googleplus:hover{background-color:#dd4b39}.social li a.pinterest:hover{background-color:#cb2027}.social li a.tumblr:hover{background-color:#35465c}.social li a.behance:hover{background-color:#1769ff}.social li a.dribbble:hover{background-color:#ea4c89}.contact-form{padding-top:2em;margin-top:30px;background:repeating-linear-gradient(90deg,#e74c3c,#e74c3c 15px,#fff 15px,#fff 30px,#3498db 30px,#3498db 45px,#fff 45px,#fff 60px);background-size:60px 5px;background-repeat:repeat-x;background-position:left top}.letter{padding:1.2em 0;background:#fff}.stamp{position:relative;float:right;margin-right:.4em;width:114px;height:134px;background:#f5f5f5;border:3px dashed #ccc}.stamp img{display:block;width:94px;height:114px;position:absolute;top:10px;left:10px;-o-object-fit:cover;object-fit:cover}.letter-info{float:left;margin-left:.4em}.letter-info h4{margin:.5em 0 0;font-size:2.2em;line-height:120%;font-family:Sacramento,cursive}.letter-info p{margin:0}.letter-info a{color:#c25337}form fieldset{border:0;padding:1em 0;background:#fff}form p{margin:.8em 0}form p:before,form p:after{content:" ";display:table}form p:after{clear:both}form label{display:block;float:left;width:30%;font-size:10px;letter-spacing:1px;font-weight:700;margin-bottom:.6em;text-transform:uppercase}form input:not([type=submit]),form textarea{display:block;float:left;width:70%!important;padding:10px;border:1px solid #ddd;border-radius:0;outline:0;background:#fff;box-shadow:none;-webkit-appearance:none;font-family:inherit;font-size:14px;transition:all .3s ease-out}form input:focus,form textarea:focus{border-color:#aaa}form textarea{height:80px;resize:vertical}form input.submit{width:auto!important;margin-top:1.2em;float:right!important}.btn{padding:20px 60px;letter-spacing:1px;font-size:.9em;border-radius:40px;background:#333;color:#fff;border:none;cursor:pointer;transition:all .3s ease-out}.btn:hover{background:#d64b4b}@media screen and (min-height: 600px){.rm-wrapper{top:60px;bottom:60px}}@media screen and (min-height: 800px){.rm-wrapper{top:80px;bottom:80px}}@media screen and (min-height: 900px){.rm-wrapper{top:120px;bottom:120px}}@media screen and (min-height: 1000px){.rm-wrapper{top:140px;bottom:140px}}@media screen and (max-width: 1100px){.rm-container{width:45%}}@media screen and (max-width: 960px){html,body{overflow:visible;overflow-x:hidden}#header{display:block}.rm-container{width:100%;max-width:600px;perspective:none;overflow:hidden}.rm-wrapper{position:static;background:#fff;top:auto;bottom:auto;height:auto}.rm-wrapper .rm-middle{box-shadow:none}.rm-close,.rm-overlay{display:none}.rm-wrapper,.rm-wrapper>div{position:static;transform:none!important;transition:none}.rm-wrapper>div>div{position:static}.rm-right .rm-front{display:none}.antiscroll-wrap{position:relative;overflow:visible}.antiscroll-inner{overflow:visible}}@media screen and (max-width: 560px){.content{padding:2em 1.2em}.letter-info{float:none;text-align:center;margin-left:0}.stamp{float:none;margin:0 auto}form label{float:none;width:100%}form input:not([type=submit]),form textarea{float:none;width:100%!important}.history-unit:before{left:46px}.history-unit h4.work-time{min-width:67px;font-size:2em}.history-unit .work-desc{margin-left:104px}.portfolio-items .hentry{width:100%}}.orchestrator-platform{display:flex;flex-direction:column;height:100vh;width:100vw;overflow:hidden}.master-nav{display:flex;align-items:center;justify-content:space-between;padding:0 2rem;height:60px;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);box-shadow:0 2px 10px #0000004d;z-index:1000}.nav-brand{display:flex;align-items:center;gap:.75rem}.brand-icon{font-size:1.8rem}.brand-name{font-family:Alfa Slab One,serif;font-size:1.5rem;color:#fff;letter-spacing:1px}.nav-links{display:flex;list-style:none;gap:.5rem}.nav-links li a{display:block;padding:.75rem 1.25rem;color:#fffc;text-decoration:none;border-radius:8px;transition:all .2s ease;font-weight:500}.nav-links li a:hover{background:#ffffff1a;color:#fff}.nav-links li.active a{background:#fff3;color:#fff}.platform-content{flex:1;overflow:auto;background:url(/images/bckg/body-bg/wood.png) repeat}.page-container{padding:2rem;max-width:1400px;margin:0 auto}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{font-family:Alfa Slab One,serif;font-size:2rem;color:#2d5a5a;text-shadow:1px 1px 2px rgba(255,255,255,.8)}.add-btn{padding:.75rem 1.5rem;background:#d64b4b;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.add-btn:hover{background:#c43c3c;transform:translateY(-2px)}.apps-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.app-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 20px #0000001a;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;text-align:center}.app-card:hover{transform:translateY(-5px);box-shadow:0 8px 30px #00000026}.app-card.coming{opacity:.7}.app-icon{font-size:3rem;margin-bottom:1rem}.app-card h3{font-family:Raleway,sans-serif;font-weight:700;font-size:1.25rem;color:#2d5a5a;margin-bottom:.5rem}.app-card p{color:#666;font-size:.9rem;margin-bottom:1rem;flex:1}.app-status{font-size:.85rem;margin-bottom:1rem;color:#888}.app-btn{width:100%;padding:.75rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.app-card.installed .app-btn{background:#2d5a5a;color:#fff}.app-card.installed .app-btn:hover{background:#1a3a3a}.app-card.available .app-btn{background:#4caf50;color:#fff}.app-card.coming .app-btn{background:#ddd;color:#888;cursor:not-allowed}.embedded-app{display:flex;flex-direction:column;height:calc(100vh - 60px);background:#1a1a1a}.embedded-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:#2d2d2d;border-bottom:1px solid #444}.back-btn{background:none;border:none;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;border-radius:4px}.back-btn:hover{background:#ffffff1a}.app-title{color:#fff;font-weight:600}.app-controls button{background:none;border:none;color:#888;cursor:pointer;padding:.25rem .5rem;font-size:1rem}.app-controls button:hover{color:#fff}.app-iframe{flex:1;width:100%;border:none}.projects-list{display:flex;flex-direction:column;gap:1rem}.project-card{display:flex;align-items:center;gap:1.5rem;background:#fff;padding:1.5rem;border-radius:12px;box-shadow:0 2px 10px #0000001a;transition:all .2s ease}.project-card:hover{box-shadow:0 4px 20px #00000026}.project-icon{font-size:2.5rem}.project-info{flex:1}.project-info h3{font-weight:700;color:#2d5a5a;margin-bottom:.25rem}.project-info p{color:#888;font-size:.85rem;margin-bottom:.5rem}.project-info .status{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem}.project-info .status.complete{background:#e8f5e9;color:#2e7d32}.project-info .status.progress{background:#fff3e0;color:#f57c00}.project-actions{display:flex;gap:.5rem}.project-actions button{padding:.5rem 1rem;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;transition:all .2s ease}.project-actions button:hover{background:#f5f5f5}.empty-state{text-align:center;padding:3rem;color:#888}.settings-section{background:#fff;border-radius:16px;padding:2rem;margin-bottom:1.5rem;box-shadow:0 2px 10px #0000001a}.settings-section h2{font-family:Raleway,sans-serif;font-weight:700;color:#2d5a5a;margin-bottom:1rem;font-size:1.25rem}.settings-note{background:#fff3cd;border-left:4px solid #ffc107;padding:1rem;margin-bottom:1.5rem;border-radius:0 8px 8px 0;color:#856404}.api-key-form{display:flex;flex-direction:column;gap:1.5rem}.key-input{display:flex;flex-direction:column;gap:.5rem}.key-input label{font-weight:600;color:#333}.key-input input{padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:border-color .2s ease}.key-input input:focus{outline:none;border-color:#2d5a5a}.key-input .status{font-size:.85rem;color:#888}.key-input .status.valid{color:#4caf50}.save-btn{align-self:flex-start;padding:.75rem 2rem;background:#2d5a5a;color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s ease}.save-btn:hover{background:#1a3a3a}.theme-options{display:flex;gap:1rem}.theme-btn{padding:1rem 1.5rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;cursor:pointer;transition:all .2s ease}.theme-btn:hover{border-color:#2d5a5a}.theme-btn.active{border-color:#2d5a5a;background:#e8f4f4}.quick-actions{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.action-btn{padding:1rem 1.5rem;background:#2d5a5a1a;border:2px solid #2d5a5a;color:#2d5a5a;border-radius:8px;cursor:pointer;font-weight:600;font-size:1rem;transition:all .2s ease}.action-btn:hover{background:#2d5a5a;color:#fff}.action-btn.primary{background:#d64b4b;border-color:#d64b4b;color:#fff}.action-btn.primary:hover{background:#c43c3c}.apps-list-compact{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.app-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#ffffffe6;border-radius:8px;transition:all .2s ease}.app-item:hover{background:#fff;transform:translate(5px)}.app-item-icon{font-size:1.5rem;width:40px;text-align:center}.app-item-info{flex:1}.app-item-info h4{font-size:.95rem;font-weight:700;color:#2d5a5a;margin-bottom:2px}.app-item-info p{font-size:.75rem;color:#888;margin:0}.app-item-btn{padding:.4rem .75rem;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.app-item-btn.installed{background:#2d5a5a;color:#fff}.app-item-btn.installed:hover{background:#1a4a4a}.app-item-btn.available{background:#4caf50;color:#fff}.app-item-btn.coming{background:#e0e0e0;color:#888;cursor:not-allowed}.project-item-card{background:#ffffffe6!important;border-radius:8px!important;padding:.75rem!important}.project-item-card:hover{background:#fff!important}.project-icon-box{background:#f5f5f5!important;border-radius:8px!important;display:flex!important;align-items:center;justify-content:center;font-size:2rem;height:80px!important}.project-item-card h4{font-weight:700!important;color:#2d5a5a!important;margin-top:.5rem!important}.project-item-card p{font-size:.7rem!important;color:#888!important}.byok-intro{text-align:center;font-size:.85rem;color:#666;margin-bottom:1rem;padding:.75rem;background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-radius:8px;border-left:4px solid #4caf50}.byok-intro strong{color:#2e7d32}.settings-form{display:flex;flex-direction:column;gap:1rem;margin:1rem 0}.setting-item{display:flex;flex-direction:column;gap:.4rem;padding:.75rem;background:#fafafa;border-radius:8px;border:1px solid #e0e0e0;transition:all .2s ease}.setting-item.valid{border-color:#4caf50;background:linear-gradient(135deg,#f1f8f1,#fff)}.setting-item.invalid{border-color:#ff9800;background:linear-gradient(135deg,#fff8e1,#fff)}.setting-header{display:flex;justify-content:space-between;align-items:center}.setting-item label{font-size:.9rem;font-weight:600;color:#333}.get-key-link{font-size:.75rem;color:#1976d2;text-decoration:none}.get-key-link:hover{text-decoration:underline}.input-wrapper{display:flex;align-items:center;gap:.5rem}.setting-item input{flex:1;padding:.6rem .75rem;border:1px solid #ddd;border-radius:6px;font-size:.85rem;font-family:Courier New,monospace}.setting-item input:focus{outline:none;border-color:#2d5a5a;box-shadow:0 0 0 3px #2d5a5a1a}.status-icon{font-size:1.2rem;width:28px;text-align:center}.button-row{display:flex;gap:.75rem;justify-content:center;margin-top:.5rem}.settings-form .btn{padding:.6rem 1.25rem;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.settings-form .btn.submit{background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.settings-form .btn.submit:hover{transform:translateY(-1px);box-shadow:0 4px 12px #4caf504d}.settings-form .btn.clear{background:#f5f5f5;color:#666;border:1px solid #ddd}.settings-form .btn.clear:hover{background:#eee}.save-message{text-align:center;color:#4caf50;font-weight:600;font-size:.9rem;animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.status-summary{text-align:center;padding:1rem;background:#fafafa;border-radius:8px;margin-bottom:1rem}.status-summary p{margin-bottom:.5rem;font-size:.9rem}.status-bar{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden}.status-fill{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:4px;transition:width .3s ease}.security-list{list-style:none;padding:0;margin:0;font-size:.8rem;color:#666}.security-list li{padding:.4rem 0;border-bottom:1px dotted #eee}.security-list li:last-child{border-bottom:none}.key-warning{display:block;font-size:.7rem;color:#e65100;margin-top:.25rem}.key-ready{display:block;font-size:.7rem;color:#388e3c;margin-top:.25rem}.app-item.needs-key{opacity:.7}.app-item-btn.disabled{background:#e0e0e0!important;color:#999!important;cursor:not-allowed}.embedded-app{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;background:#1a1a1a;z-index:9999}.embedded-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);border-bottom:1px solid #444}.back-btn{background:#ffffff1a;border:none;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;border-radius:6px;transition:all .2s ease}.back-btn:hover{background:#fff3}.app-title{color:#fff;font-weight:600;font-size:1.1rem}.app-controls{display:flex;gap:.5rem}.app-controls button{background:#ffffff1a;border:none;color:#fff;cursor:pointer;padding:.25rem .75rem;font-size:1rem;border-radius:4px;transition:all .2s ease}.app-controls button:hover{background:#fff3}.app-iframe{flex:1;width:100%;border:none;background:#fff}.settings-fab{position:fixed;top:20px;right:20px;width:50px;height:50px;border-radius:50%;background:linear-gradient(135deg,#1a1a2e,#16213e);border:1px solid rgba(245,158,11,.3);color:#fff;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 15px #0006,inset 0 1px #ffffff0d;z-index:1000;transition:all .3s ease}.settings-fab:hover{transform:scale(1.1) rotate(30deg);box-shadow:0 6px 20px #00000080;border-color:#f59e0b99;background:linear-gradient(135deg,#16213e,#1a1a2e)}.fab-badge{position:absolute;top:-5px;right:-5px;background:#e53935;color:#fff;font-size:.7rem;padding:2px 6px;border-radius:10px;font-weight:700}.simple-status{position:fixed;top:20px;left:20px;padding:8px 16px;border-radius:20px;font-size:.8rem;font-weight:600;z-index:100;cursor:pointer;transition:all .2s ease}.simple-status.ready{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.simple-status.offline{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.simple-status:hover{transform:scale(1.05)}.setup-banner-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.setup-banner{background:#0d0d12;border:1px solid #2a2a3a;border-radius:16px;padding:32px 40px;text-align:center;max-width:380px}.setup-banner-icon{font-size:48px;margin-bottom:12px}.setup-banner-title{font-size:1.4rem;font-weight:700;color:#f59e0b;margin-bottom:8px}.setup-banner-text{font-size:.95rem;color:#888;margin-bottom:20px}.setup-banner-btn{display:inline-block;padding:14px 32px;background:#22c55e;border:none;border-radius:8px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease}.setup-banner-btn:hover{background:#16a34a;transform:translateY(-2px)}.setup-banner-hint{font-size:.75rem;color:#666;margin-top:12px}.setup-banner-skip{display:block;margin:16px auto 0;padding:8px 16px;background:transparent;border:1px solid #333;border-radius:6px;color:#666;font-size:.8rem;cursor:pointer;transition:all .2s ease}.setup-banner-skip:hover{border-color:#555;color:#888}.reopen-fab{position:fixed;bottom:20px;right:20px;display:flex;align-items:center;gap:.5rem;padding:.75rem 1.25rem;background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:25px;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;box-shadow:0 4px 20px #28a74566;z-index:1000;transition:all .3s ease;animation:bounce-in .5s ease}@keyframes bounce-in{0%{transform:scale(0);opacity:0}50%{transform:scale(1.1)}to{transform:scale(1);opacity:1}}.reopen-fab:hover{transform:translateY(-3px);box-shadow:0 6px 25px #28a74580}.reopen-icon{font-size:1.1rem}.reopen-text{white-space:nowrap}.section-title{font-family:Alfa Slab One,serif;font-size:1.3rem;color:#2d5a5a;text-align:center;margin:0;padding:.5rem 0;line-height:1.2}.section-subtitle{text-align:center;color:#666;font-size:.8rem;margin:0;padding-bottom:.75rem}.define-content{display:flex;flex-direction:column;height:100%;padding:1rem 1.5rem!important;background:#fff!important}.rm-cover .rm-back .page-scroll,.rm-cover .rm-back.page{background:#fff!important}.define-content .section-title{flex-shrink:0;font-size:1.3rem;color:#18181b}.define-content .section-subtitle{flex-shrink:0;font-size:.8rem;color:#71717a}.define-content .chat-input-container{flex-shrink:0;margin-bottom:.75rem}.define-content .define-chat-area{flex:1;min-height:100px;overflow-y:auto;background:transparent;border-radius:0;padding:.75rem;border:none}.define-content .ai-status-bar{flex-shrink:0;margin-top:.5rem}.template-gallery{margin-bottom:1rem}.template-label{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#888;margin-bottom:.5rem}.template-chips{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.template-chip{padding:.4rem .8rem;background:#fff;border:2px solid #e0e0e0;border-radius:20px;font-size:.8rem;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.template-chip:hover{border-color:#2d5a5a;color:#2d5a5a;transform:translateY(-2px)}.template-chip.active{background:#2d5a5a;border-color:#2d5a5a;color:#fff}.page-scroll{height:100%;overflow-y:auto;padding:1.5rem}.build-agents{display:flex;flex-direction:column;gap:1rem}.build-card{background:#fff;border-radius:12px;padding:1rem;border:2px solid #e0e0e0;transition:all .2s ease}.build-card:hover{border-color:#2d5a5a;box-shadow:0 4px 15px #0000001a}.build-card.needs-key{border-style:dashed;opacity:.8}.build-card.coming{opacity:.6}.build-card-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.build-icon{font-size:2rem}.build-card-header h4{font-size:1rem;font-weight:700;color:#333;margin:0}.build-card p{font-size:.8rem;color:#666;margin-bottom:.75rem}.coming-badge{font-size:.65rem;background:#f5f5f5;color:#999;padding:2px 8px;border-radius:10px;margin-left:.5rem}.key-needed{font-size:.65rem;background:#fff3e0;color:#e65100;padding:2px 8px;border-radius:10px;margin-left:.5rem;cursor:pointer}.ready-badge{font-size:.65rem;background:#e8f5e9;color:#2e7d32;padding:2px 8px;border-radius:10px;margin-left:.5rem}.build-launch-btn{width:100%;padding:.6rem;border:none;border-radius:8px;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.build-launch-btn:hover:not(.disabled){transform:translateY(-2px);box-shadow:0 4px 15px #2d5a5a4d}.build-launch-btn.disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.build-info{margin-top:1.5rem;padding:.75rem;background:#f0f7f7;border-radius:8px;text-align:center}.build-info p{font-size:.8rem;color:#2d5a5a;margin:0}.chat-models{display:flex;flex-direction:column;gap:.75rem}.chat-card{display:flex;align-items:center;gap:.75rem;background:#fff;border-radius:12px;padding:.75rem;border:2px solid #e0e0e0;cursor:pointer;transition:all .2s ease}.chat-card:hover{transform:translate(5px);box-shadow:0 4px 15px #0000001a}.chat-card.needs-key{opacity:.7}.chat-card-icon{width:45px;height:45px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff}.chat-card-info{flex:1}.chat-card-info h4{font-size:.95rem;font-weight:700;color:#333;margin:0 0 .2rem}.chat-card-info p{font-size:.75rem;color:#888;margin:0}.chat-card-status{font-size:1.25rem}.chat-info{margin-top:1.5rem;padding:.75rem;background:#f0f7f7;border-radius:8px;text-align:center}.chat-info p{font-size:.8rem;color:#2d5a5a;margin:0}.chat-examples{margin-top:1rem;text-align:center}.chat-examples h5{font-size:.75rem;color:#999;margin-bottom:.5rem}.example-prompts{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.example-prompts span{font-size:.7rem;background:#f5f5f5;padding:.4rem .75rem;border-radius:15px;color:#666}.project-filters{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.filter-btn{padding:.4rem .75rem;border:none;border-radius:20px;background:#f5f5f5;color:#666;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.filter-btn.active{background:#2d5a5a;color:#fff}.projects-list{display:flex;flex-direction:column;gap:.75rem}.project-item{display:flex;align-items:center;gap:.75rem;background:#fff;border-radius:10px;padding:.75rem;border:1px solid #e0e0e0;transition:all .2s ease}.project-item:hover{border-color:#2d5a5a;box-shadow:0 2px 10px #0000001a}.project-item.new-project{border-style:dashed;cursor:pointer}.project-item .project-icon{font-size:1.5rem}.project-item .project-info{flex:1}.project-item .project-info h4{font-size:.9rem;font-weight:700;color:#333;margin:0 0 .2rem}.project-item .project-info p{font-size:.7rem;color:#888;margin:0}.project-status{font-size:1rem}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease}.modal{background:#fff;border-radius:16px;width:90%;max-width:400px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff}.modal-header h3{margin:0;font-size:1rem}.modal-close{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer;font-size:.9rem}.modal-body{padding:1.25rem}.modal-intro{text-align:center;font-size:.8rem;color:#666;margin-bottom:1rem;padding:.5rem;background:#f0f7f7;border-radius:8px}.key-input-group{margin-bottom:.75rem}.key-input-group label{display:block;font-size:.8rem;font-weight:600;color:#333;margin-bottom:.3rem}.key-input-row{display:flex;gap:.5rem;align-items:center}.key-input-row input{flex:1;padding:.5rem .75rem;border:1px solid #ddd;border-radius:8px;font-size:.85rem;font-family:monospace}.key-input-group.valid .key-input-row input{border-color:#4caf50;background:#f1f8f1}.modal-actions{display:flex;gap:.75rem;margin-top:1rem}.btn-primary{flex:1;padding:.6rem;border:none;border-radius:8px;background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;font-weight:600;cursor:pointer}.btn-secondary{padding:.6rem 1rem;border:1px solid #ddd;border-radius:8px;background:#fff;color:#666;cursor:pointer}.chat-modal{background:#fff;border-radius:16px;width:90%;max-width:500px;height:70vh;max-height:500px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;color:#fff;font-weight:600}.chat-header button{background:#fff3;border:none;color:#fff;width:28px;height:28px;border-radius:50%;cursor:pointer}.chat-body{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-no-key{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center}.chat-no-key p{color:#666;margin-bottom:1rem}.chat-no-key button{padding:.5rem 1rem;border:none;border-radius:8px;background:#2d5a5a;color:#fff;cursor:pointer}.chat-messages{flex:1;overflow-y:auto;padding:1rem}.chat-welcome{text-align:center;padding:2rem}.chat-welcome span{font-size:3rem;display:block;margin-bottom:.5rem}.chat-welcome p{color:#666}.chat-input-area{display:flex;gap:.5rem;padding:.75rem;border-top:1px solid #eee}.chat-input-area input{flex:1;padding:.6rem 1rem;border:1px solid #ddd;border-radius:20px;font-size:.9rem}.chat-input-area button{padding:.6rem 1.25rem;border:none;border-radius:20px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.chat-input-area button:hover{background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1a2e}.back-cover{background:linear-gradient(145deg,#1a1a2e,#16213e,#0f0f1a)!important;display:flex;align-items:center;justify-content:center;position:relative}.back-cover:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 50% 50%,rgba(99,102,241,.08) 0%,transparent 60%);pointer-events:none}.back-cover-content{text-align:center;color:#fff;position:relative;z-index:1}.back-cover-content span{font-size:4rem;display:block;margin-bottom:.5rem}.back-cover-content h3{font-family:Alfa Slab One,serif;font-size:1.2rem;margin-bottom:.25rem;background:linear-gradient(135deg,#f59e0b,#fbbf24,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.back-cover-content p{opacity:.7;font-size:.85rem;color:#fffc}.define-input-area{margin:1.5rem 0}.define-input-area textarea{width:100%;padding:1rem;border:2px solid #e0e0e0;border-radius:12px;font-size:.95rem;font-family:inherit;resize:none;transition:all .2s ease}.define-input-area textarea:focus{outline:none;border-color:#f59e0b;box-shadow:0 0 0 4px #f59e0b26}.define-input-area textarea::-moz-placeholder{color:#999}.define-input-area textarea::placeholder{color:#999}.solve-btn{width:100%;margin-top:1rem;padding:1rem 2rem;border:none;border-radius:12px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .3s ease}.solve-btn:hover:not(:disabled){transform:translateY(-2px);background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1a2e;box-shadow:0 8px 25px #f59e0b4d}.solve-btn:disabled{background:#ccc;cursor:not-allowed}.define-info{margin-top:1rem;padding:.75rem;background:#f0f7f7;border-radius:8px;text-align:center}.define-info p{font-size:.8rem;color:#2d5a5a;margin:0}.ai-provider-info{display:flex;justify-content:space-between;align-items:center;margin-top:1rem;padding:.5rem .75rem;background:#f5f5f5;border-radius:8px;font-size:.8rem}.ai-provider-info button{background:none;border:none;color:#2d5a5a;cursor:pointer;text-decoration:underline}.engine-selection{margin:1rem 0;padding:1rem;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:12px;border:1px solid #dee2e6}.engine-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.engine-label{font-weight:600;font-size:.85rem;color:#333}.engine-recommended{font-size:.75rem;color:#4caf50;background:#e8f5e9;padding:.2rem .5rem;border-radius:10px}.engine-info-btn{background:none;border:none;color:#666;font-size:.75rem;cursor:pointer}.engine-info-btn:hover{color:#333}.engine-options{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.engine-card{background:#fff;border:2px solid #e0e0e0;border-radius:10px;padding:.75rem;cursor:pointer;transition:all .2s ease}.engine-card:hover{border-color:#2d5a5a;box-shadow:0 2px 8px #0000001a}.engine-card.selected{border-color:#2d5a5a;background:linear-gradient(135deg,#f0f7f7,#e3f2f2);box-shadow:0 0 0 3px #2d5a5a26}.engine-card-header{display:flex;align-items:center;gap:.4rem;margin-bottom:.4rem}.engine-icon{font-size:1.25rem}.engine-name{font-weight:700;font-size:.85rem;flex:1}.engine-badge{font-size:.6rem;font-weight:700;color:#fff;padding:.15rem .4rem;border-radius:8px;text-transform:uppercase}.engine-desc{font-size:.7rem;color:#666;margin:0;line-height:1.3}.engine-details{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #eee}.engine-features{display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.5rem}.feature-tag{font-size:.65rem;color:#4caf50;background:#e8f5e9;padding:.15rem .4rem;border-radius:6px}.engine-best-for{font-size:.65rem;color:#666}.engine-best-for strong{color:#333;margin-right:.3rem}@media (max-width: 500px){.engine-options{grid-template-columns:1fr}}.active-solving{padding:.5rem 0}.current-problem-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:10px;padding:.75rem 1rem;margin-bottom:1rem;border-left:3px solid #2d5a5a}.problem-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.engine-badge-small{font-size:1rem}.problem-header .label{font-size:.7rem;color:#888;text-transform:uppercase}.problem-text{font-size:.9rem;font-style:italic;color:#333;margin:0}.journey-steps-inline{display:flex;flex-direction:column;gap:.5rem}.step-row{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#fff;border-radius:8px;border:1px solid #eee;transition:all .3s ease}.step-row.active{background:linear-gradient(135deg,#e8f5f5,#d4eded);border-color:#2d5a5a;box-shadow:0 2px 8px #2d5a5a1a}.step-row.done{background:#f8fff8;border-color:#c8e6c9}.step-row.pending{opacity:.6}.step-indicator-inline{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:.9rem}.done-icon{color:#4caf50;font-weight:700}.active-icon{color:#2d5a5a;font-size:1.1rem}.pending-icon{color:#ccc}.step-info{flex:1;min-width:0}.step-info h4{margin:0;font-size:.85rem;font-weight:600;color:#333}.step-desc{margin:.15rem 0 0;font-size:.7rem;color:#666}.step-progress-inline{display:flex;align-items:center;gap:.5rem;min-width:80px}.progress-track{flex:1;height:4px;background:#e0e0e0;border-radius:2px;overflow:hidden}.progress-fill-inline{height:100%;background:linear-gradient(90deg,#2d5a5a,#4caf50);border-radius:2px;transition:width .8s ease-out}.progress-text{font-size:.65rem;color:#666;min-width:28px;text-align:right}.step-done-text{font-size:.65rem;color:#4caf50;font-weight:600}.ai-status-bar{margin-top:1rem;padding:.5rem;background:#f5f5f5;border-radius:6px;text-align:center}.ai-working{font-size:.8rem;color:#666}.empty-icon{font-size:2.5rem;display:block;margin-bottom:.5rem}.current-problem{background:#f8f8f8;padding:1rem;border-radius:10px;margin-bottom:1.5rem}.current-problem .label{font-size:.75rem;color:#666;display:block;margin-bottom:.25rem}.current-problem p{font-size:.95rem;font-style:italic;color:#333;margin:0}.journey-visualization{position:relative;padding-left:2rem}.viz-step{display:flex;align-items:flex-start;gap:1rem;position:relative;padding-bottom:1.5rem;transition:opacity .3s ease}.viz-step:last-child{padding-bottom:0}.viz-step:before{content:"";position:absolute;left:0;top:1.5rem;bottom:0;width:2px;background:#e0e0e0}.viz-step:last-child:before{display:none}.viz-step.done:before{background:#4caf50}.viz-step.active:before{background:linear-gradient(to bottom,#4caf50,#e0e0e0)}.viz-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;background:#fff;border:2px solid #e0e0e0;border-radius:50%;position:relative;z-index:1;color:#ccc;transition:all .3s ease}.viz-step.done .viz-icon{border-color:#4caf50;background:#4caf50;color:#fff}.viz-step.active .viz-icon{border-color:#2d5a5a;background:#2d5a5a;color:#fff;box-shadow:0 0 0 4px #2d5a5a26}.viz-content h4{margin:0 0 .25rem;font-size:.95rem;font-weight:600}.mini-progress{margin-top:.5rem}.mini-bar{height:6px;background:#e0e0e0;border-radius:3px;overflow:hidden}.mini-bar>div{height:100%;background:linear-gradient(90deg,#2d5a5a,#4caf50);transition:width .8s ease-out;border-radius:3px}.live-project-view{padding:.5rem 0}.project-header-card{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-radius:12px;padding:1rem;margin-bottom:1rem;border-left:4px solid #28a745;position:relative}.project-status-badge{position:absolute;top:-8px;right:10px;background:#28a745;color:#fff;padding:.2rem .6rem;border-radius:12px;font-size:.7rem;font-weight:600}.project-name{margin:0 0 .25rem;font-size:1.1rem;color:#155724;font-weight:700}.project-problem{margin:0;font-size:.8rem;color:#155724;opacity:.8}.live-preview-area{background:#1a1a1a;border-radius:10px;overflow:hidden;margin-bottom:1rem;height:200px;position:relative}.live-preview-iframe{border:none;transform:scale(.5);transform-origin:top left;width:200%;height:200%}.preview-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#666}.preview-placeholder .preview-icon{font-size:2.5rem;margin-bottom:.5rem;opacity:.5}.preview-placeholder p{font-size:.8rem;margin:0}.files-summary{background:#f8f9fa;border-radius:10px;padding:.75rem;margin-bottom:1rem}.files-summary h4{margin:0 0 .5rem;font-size:.85rem;color:#333}.file-chips{display:flex;flex-wrap:wrap;gap:.4rem}.file-chip{display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .6rem;background:#fff;border:1px solid #e0e0e0;border-radius:15px;font-size:.7rem;font-family:monospace;cursor:pointer;transition:all .2s}.file-chip:hover{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.quick-actions-row{display:flex;gap:.5rem;margin-bottom:.75rem}.action-btn-inline{flex:1;padding:.6rem .5rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn-inline:hover{border-color:#2d5a5a;background:#f0f9f9}.action-btn-inline.primary{background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;border:none}.integrated-project-view{display:flex;flex-direction:column;height:calc(100% - 80px);gap:.5rem}.project-header-bar{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:linear-gradient(135deg,#2d5a5a,#3a6b6b);border-radius:8px;color:#fff}.project-info{display:flex;align-items:center;gap:.75rem}.project-info h3{font-size:.9rem;margin:0}.project-badge{background:#fff3;padding:.2rem .5rem;border-radius:12px;font-size:.7rem}.project-quick-actions{display:flex;gap:.25rem}.view-toggle{padding:.3rem .6rem;border:none;background:#ffffff1a;color:#fff;border-radius:4px;cursor:pointer;font-size:.75rem;transition:all .2s}.view-toggle.active{background:#fff;color:#2d5a5a}.view-toggle:hover:not(.active){background:#fff3}.project-main-area{display:grid;grid-template-columns:160px 1fr;gap:.5rem;flex:1;min-height:0;overflow:hidden}.project-sidebar{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto}.sidebar-section{background:#f8f9fa;border-radius:6px;padding:.5rem}.sidebar-section h4{font-size:.7rem;margin:0 0 .4rem;color:#555;text-transform:uppercase;letter-spacing:.5px}.files-section .file-list{display:flex;flex-direction:column;gap:.2rem}.file-btn{display:flex;align-items:center;gap:.4rem;padding:.35rem .5rem;background:#fff;border:1px solid #e0e0e0;border-radius:4px;cursor:pointer;font-size:.7rem;transition:all .15s;text-align:left}.file-btn:hover{background:#e8f4f4;border-color:#2d5a5a}.file-btn.active{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.file-btn .file-icon{font-size:.9rem}.actions-section{display:flex;flex-direction:column;gap:.3rem}.action-btn-full{width:100%;padding:.4rem .5rem;border:none;border-radius:4px;cursor:pointer;font-size:.7rem;transition:all .15s;text-align:left;background:#e8f4f4;color:#2d5a5a;font-weight:500}.action-btn-full:hover:not(:disabled){background:#d0e8e8}.action-btn-full.primary{background:#2d5a5a;color:#fff}.action-btn-full.primary:hover:not(:disabled){background:#1d4a4a}.action-btn-full.secondary{background:#f0f0f0;color:#666}.action-btn-full.new{background:transparent;border:1px dashed #ccc;color:#888}.action-btn-full:disabled{opacity:.5;cursor:not-allowed}.project-content-area{display:flex;flex-direction:column;background:#fff;border-radius:6px;border:1px solid #e0e0e0;overflow:hidden}.inline-chat{display:flex;flex-direction:column;height:100%}.chat-messages-inline{flex:1;overflow-y:auto;padding:.75rem;display:flex;flex-direction:column;gap:.5rem}.chat-welcome-inline{text-align:center;padding:1rem}.chat-welcome-inline .welcome-emoji{font-size:2rem}.chat-welcome-inline h4{margin:.5rem 0 .25rem;color:#2d5a5a;font-size:.9rem}.chat-welcome-inline p{font-size:.75rem;color:#666;margin:0 0 .75rem}.suggestion-chips{display:flex;flex-wrap:wrap;gap:.3rem;justify-content:center}.suggestion-chips button{padding:.3rem .6rem;background:#f0f0f0;border:1px solid #ddd;border-radius:12px;cursor:pointer;font-size:.65rem;transition:all .15s}.suggestion-chips button:hover{background:#e0f0f0;border-color:#2d5a5a}.chat-msg{display:flex;gap:.5rem;align-items:flex-start}.chat-msg.user{flex-direction:row-reverse}.msg-avatar{font-size:1rem;flex-shrink:0}.msg-bubble{background:#f0f0f0;padding:.5rem .75rem;border-radius:12px;max-width:80%}.chat-msg.user .msg-bubble{background:#2d5a5a;color:#fff}.msg-text{font-size:.75rem;line-height:1.4;white-space:pre-wrap}.msg-time{font-size:.6rem;color:#999;margin-top:.2rem}.chat-msg.user .msg-time{color:#ffffffb3}.msg-bubble.typing{padding:.6rem 1rem;display:flex;gap:.25rem}.msg-bubble.typing span{width:6px;height:6px;background:#999;border-radius:50%;animation:typingBounce 1.2s infinite}.msg-bubble.typing span:nth-child(2){animation-delay:.2s}.msg-bubble.typing span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.chat-input-inline{border-top:1px solid #e0e0e0;padding:.5rem}.inline-code-view{display:flex;flex-direction:column;height:100%}.code-view-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#f5f5f5;border-bottom:1px solid #e0e0e0;font-size:.75rem;font-weight:500}.copy-code-btn{padding:.25rem .5rem;background:#2d5a5a;color:#fff;border:none;border-radius:4px;font-size:.65rem;cursor:pointer}.copy-code-btn:hover{background:#1d4a4a}.code-view-content{flex:1;overflow:auto;background:#1e1e1e}.code-view-content pre{margin:0;padding:.75rem}.code-view-content code{font-family:Monaco,Menlo,monospace;font-size:.7rem;line-height:1.5;color:#d4d4d4;white-space:pre-wrap;word-break:break-all}.code-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#888}.code-placeholder span{font-size:2rem;margin-bottom:.5rem}.code-placeholder p{font-size:.75rem}.solving-terminal{background:#0d1117;border-radius:12px;overflow:hidden;margin-bottom:1rem;box-shadow:0 8px 32px #0006,0 0 0 1px #ffffff0d}.terminal-header{display:flex;align-items:center;padding:.75rem 1rem;background:linear-gradient(180deg,#1c2128,#161b22);border-bottom:1px solid #30363d}.terminal-dots{display:flex;gap:6px}.terminal-dots .dot{width:12px;height:12px;border-radius:50%}.dot.red{background:#ff5f56}.dot.yellow{background:#ffbd2e}.dot.green{background:#27c93f}.terminal-title{flex:1;text-align:center;font-size:.75rem;color:#8b949e;font-family:Monaco,Menlo,monospace}.terminal-status{display:flex;align-items:center;gap:6px;font-size:.65rem;color:#3fb950;font-weight:600}.status-pulse{width:8px;height:8px;background:#3fb950;border-radius:50%;animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #3fb95066}50%{opacity:.8;box-shadow:0 0 0 8px #3fb95000}}.terminal-body{padding:1rem}.terminal-problem{font-family:Monaco,Menlo,monospace;font-size:.7rem;padding:.75rem;background:#161b22;border-radius:6px;margin-bottom:1rem;border:1px solid #30363d}.terminal-problem .prompt{color:#3fb950;margin-right:.5rem}.terminal-problem .command{color:#79c0ff;margin-right:.5rem}.terminal-problem .arg{color:#a5d6ff;font-style:italic}.solving-pipeline{display:flex;flex-direction:column}.pipeline-step{display:flex;gap:.75rem}.step-line-container{display:flex;flex-direction:column;align-items:center;width:24px}.step-connector{width:2px;flex:1;min-height:12px;background:#30363d;transition:background .3s ease}.step-connector.first,.step-connector.last{min-height:0}.step-connector.done{background:#3fb950}.step-connector.active{background:linear-gradient(180deg,#3fb950,#30363d)}.step-node{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;border:2px solid #30363d;background:#0d1117;color:#8b949e;transition:all .3s ease}.step-node.done{background:#238636;border-color:#3fb950;color:#fff}.step-node.active{background:#1f6feb;border-color:#58a6ff;color:#fff;animation:nodeGlow 2s infinite}@keyframes nodeGlow{0%,to{box-shadow:0 0 #58a6ff66}50%{box-shadow:0 0 0 6px #58a6ff00}}.node-check{font-size:.7rem}.node-spinner{width:10px;height:10px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite}.node-number{font-size:.6rem}.step-content{flex:1;padding-bottom:1rem}.step-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.step-icon{font-size:.9rem}.step-name{font-size:.8rem;font-weight:600;color:#e6edf3}.step-percent{font-size:.65rem;font-weight:700;color:#58a6ff;background:#58a6ff26;padding:.15rem .5rem;border-radius:10px;font-family:Monaco,Menlo,monospace}.step-done{font-size:.6rem;font-weight:600;color:#3fb950;background:#3fb95026;padding:.15rem .5rem;border-radius:10px}.step-progress-bar{height:4px;background:#30363d;border-radius:2px;overflow:hidden;margin-bottom:.35rem}.step-progress-bar .progress-fill{height:100%;background:linear-gradient(90deg,#1f6feb,#58a6ff);border-radius:2px;transition:width .3s ease}.step-description{font-size:.7rem;color:#8b949e;margin:0;line-height:1.4}.pipeline-step.pending .step-name{color:#8b949e}.pipeline-step.done .step-name{color:#3fb950}.terminal-footer{margin-top:.5rem;padding-top:1rem;border-top:1px solid #30363d}.overall-progress{padding:0 .25rem}.progress-label{display:flex;justify-content:space-between;font-size:.65rem;color:#8b949e;margin-bottom:.5rem;font-weight:600}.progress-label span:last-child{color:#58a6ff;font-family:Monaco,Menlo,monospace}.progress-track-full{height:6px;background:#30363d;border-radius:3px;overflow:hidden}.progress-fill-full{height:100%;background:linear-gradient(90deg,#238636,#3fb950,#56d364);border-radius:3px;transition:width .5s ease;position:relative}.progress-fill-full:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.solve-content{display:flex;flex-direction:column;height:calc(100% - 40px)}.projects-list-simple{margin-bottom:.75rem}.list-header{font-size:.7rem;color:#888;padding:.4rem 0;border-bottom:1px solid #e8e8e8;font-weight:500}.empty-list{padding:1rem;text-align:center;color:#999;font-size:.75rem}.project-list{list-style:none;margin:0;padding:0;max-height:120px;overflow-y:auto}.project-item{display:flex;align-items:center;gap:.5rem;padding:.5rem;cursor:pointer;border-bottom:1px solid #f5f5f5;transition:all .15s}.project-item:hover{background:#f8f8f8}.project-item.active{background:#e8f4f4;border-left:2px solid #2d5a5a;padding-left:calc(.5rem - 2px)}.item-status{font-size:.8rem}.item-name{flex:1;font-size:.75rem;font-weight:500;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.item-time{font-size:.6rem;color:#aaa}.project-workspace{flex:1;display:flex;flex-direction:column;background:#fff;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;min-height:0}.workspace-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;background:#2d5a5a;color:#fff}.workspace-header h4{margin:0;font-size:.8rem;font-weight:600}.workspace-actions{display:flex;gap:.35rem}.workspace-actions button{padding:.25rem .5rem;background:#ffffff26;border:none;border-radius:4px;color:#fff;font-size:.6rem;cursor:pointer;transition:background .15s}.workspace-actions button:hover{background:#ffffff40}.workspace-files{padding:.5rem;background:#f8f9fa;border-bottom:1px solid #e0e0e0}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.4rem;font-size:.65rem;color:#666}.view-toggle{display:flex;gap:2px;background:#e0e0e0;padding:2px;border-radius:4px}.view-toggle button{padding:.2rem .4rem;background:transparent;border:none;border-radius:3px;font-size:.55rem;cursor:pointer;transition:all .15s}.view-toggle button.active{background:#fff;box-shadow:0 1px 2px #0000001a}.files-tabs{display:flex;gap:.25rem;flex-wrap:wrap}.file-tab-simple{padding:.25rem .5rem;background:#fff;border:1px solid #ddd;border-radius:4px;font-size:.6rem;cursor:pointer;transition:all .15s}.file-tab-simple:hover{border-color:#2d5a5a}.file-tab-simple.active{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.workspace-content{flex:1;overflow:hidden;min-height:0}.workspace-code{height:100%;overflow:auto;background:#1e1e1e}.workspace-code pre{margin:0;padding:.6rem}.workspace-code code{font-family:Monaco,Menlo,monospace;font-size:.6rem;line-height:1.5;color:#d4d4d4;white-space:pre-wrap}.workspace-preview{height:100%;background:#fff}.workspace-preview iframe{width:100%;height:100%;border:none}.preview-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;color:#888;background:#f8f9fa}.preview-placeholder p{font-size:.75rem;margin:0}.preview-placeholder button{padding:.4rem .8rem;background:#2d5a5a;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.7rem}.preview-placeholder button:hover{background:#1d4a4a}.preview-placeholder small{font-size:.65rem;color:#999;margin-top:.25rem}.preview-options{display:flex;flex-direction:column;gap:.5rem;margin-top:.75rem;width:100%;max-width:220px}.preview-btn{display:flex;flex-direction:column;align-items:center;padding:.6rem .8rem;border:none;border-radius:8px;cursor:pointer;font-size:.75rem;font-weight:600;transition:all .2s}.preview-btn .btn-hint{font-size:.55rem;font-weight:400;opacity:.8;margin-top:.15rem}.preview-btn.stackblitz{background:linear-gradient(135deg,#1389fd,#0969da);color:#fff}.preview-btn.stackblitz:hover{background:linear-gradient(135deg,#0969da,#0550ae);transform:translateY(-2px);box-shadow:0 4px 12px #1389fd66}.preview-btn.embed{background:#2d5a5a;color:#fff}.preview-btn.embed:hover{background:#1d4a4a}.preview-btn.download{background:#f0f0f0;color:#333;border:1px solid #ddd}.preview-btn.download:hover{background:#e5e5e5}.stackblitz-container{width:100%;height:100%;min-height:300px}.stackblitz-container iframe{width:100%;height:100%;border:none}.loading-indicator{display:flex;flex-direction:column;align-items:center;margin-top:.75rem}.loading-indicator p{font-size:.7rem;color:#666;margin:.5rem 0 0}.error-msg{font-size:.7rem;color:#e74c3c;margin-top:.5rem}.project-type-badge{margin-bottom:.75rem}.project-type-badge .badge{display:inline-flex;align-items:center;gap:.3rem;padding:.4rem .8rem;border-radius:20px;font-size:.7rem;font-weight:600}.project-type-badge .badge.react{background:linear-gradient(135deg,#61dafb20,#61dafb40);color:#61dafb;border:1px solid #61dafb}.project-type-badge .badge.vanilla{background:linear-gradient(135deg,#f7df1e20,#f7df1e40);color:#b8a700;border:1px solid #f7df1e}.project-type-badge .badge.static{background:linear-gradient(135deg,#e34c2620,#e34c2640);color:#e34c26;border:1px solid #e34c26}.project-type-badge .badge.vue{background:linear-gradient(135deg,#42b88320,#42b88340);color:#42b883;border:1px solid #42b883}.project-type-badge .badge.angular{background:linear-gradient(135deg,#dd1b1620,#dd1b1640);color:#dd1b16;border:1px solid #dd1b16}.preview-btn.recommended{position:relative;box-shadow:0 0 0 2px #4caf50,0 4px 12px #4caf504d}.preview-btn.recommended:after{content:"✓ BEST";position:absolute;top:-8px;right:-8px;background:#4caf50;color:#fff;font-size:.5rem;font-weight:700;padding:2px 6px;border-radius:8px}.preview-category{width:100%;margin-bottom:.75rem}.category-label{display:block;font-size:.6rem;font-weight:600;color:#888;margin-bottom:.4rem;text-transform:uppercase;letter-spacing:.5px}.preview-btn.sandpack{background:linear-gradient(135deg,#151515,#0d0d0d);color:gold;border:1px solid #333}.preview-btn.sandpack:hover{background:linear-gradient(135deg,#252525,#1d1d1d);box-shadow:0 4px 12px #ffd70033}.preview-btn.codesandbox{background:linear-gradient(135deg,#151515,#0d0d0d);color:#40b883;border:1px solid #333}.preview-btn.codesandbox:hover{background:linear-gradient(135deg,#252525,#1d1d1d);box-shadow:0 4px 12px #40b88333}.preview-btn.static{background:#f5f5f5;color:#333;border:1px solid #ddd}.preview-btn.static:hover{background:#eee}.sandpack-wrapper{width:100%;height:100%;min-height:250px}.sandpack-wrapper>div{height:100%!important}.static-preview-iframe{width:100%;height:100%;border:none;background:#fff;min-height:250px}.preview-back-btn{position:absolute;top:.5rem;left:.5rem;padding:.3rem .6rem;background:#000000b3;color:#fff;border:none;border-radius:4px;font-size:.65rem;cursor:pointer;z-index:10;transition:background .2s}.preview-back-btn:hover{background:#000000e6}.back-to-options{margin-top:.75rem;padding:.4rem .8rem;background:transparent;border:1px solid #ddd;border-radius:4px;font-size:.7rem;color:#666;cursor:pointer}.back-to-options:hover{background:#f5f5f5}.workspace-preview{position:relative}.preview-loading-spinner{width:32px;height:32px;border:3px solid #e0e0e0;border-top-color:#2d5a5a;border-radius:50%;animation:spinPreview .8s linear infinite;margin-bottom:.5rem}@keyframes spinPreview{to{transform:rotate(360deg)}}.gpt-chat-section{display:flex;flex-direction:column;height:calc(100% - 20px)}.gpt-chat-section .section-title{margin-bottom:.5rem}.gpt-chat-container{flex:1;display:flex;flex-direction:column;background:#f7f7f8;border-radius:8px;overflow:hidden}.gpt-messages{flex:1;overflow-y:auto;padding:1rem}.gpt-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:1rem}.gpt-logo{font-size:2.5rem;margin-bottom:.75rem}.gpt-welcome h3{font-size:1.1rem;color:#202123;margin:0 0 .35rem;font-weight:600}.gpt-welcome p{font-size:.85rem;color:#6e6e80;margin:0 0 1.25rem}.gpt-suggestions{display:flex;flex-direction:column;gap:.5rem;width:100%;max-width:280px}.gpt-suggestions button{padding:.65rem .85rem;background:#fff;border:1px solid #d9d9e3;border-radius:8px;font-size:.75rem;color:#202123;cursor:pointer;text-align:left;transition:all .15s}.gpt-suggestions button:hover{background:#f7f7f8;border-color:#10a37f}.gpt-message-list{display:flex;flex-direction:column}.gpt-message{display:flex;gap:.75rem;padding:.85rem 0}.gpt-message.user{background:#fff;margin:.25rem -1rem;padding:.85rem 1rem}.gpt-message.assistant{background:#f7f7f8}.gpt-avatar{width:28px;height:28px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:.9rem;flex-shrink:0;background:#ececf1}.gpt-message.assistant .gpt-avatar{background:#10a37f}.gpt-message-content{flex:1;min-width:0}.gpt-message-text{font-size:.78rem;line-height:1.5;color:#202123;white-space:pre-wrap}.gpt-typing{display:flex;gap:.25rem;padding:.5rem 0}.gpt-typing span{width:6px;height:6px;background:#10a37f;border-radius:50%;animation:gptBounce 1.4s infinite ease-in-out}.gpt-typing span:nth-child(1){animation-delay:0s}.gpt-typing span:nth-child(2){animation-delay:.2s}.gpt-typing span:nth-child(3){animation-delay:.4s}@keyframes gptBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.gpt-input-area{padding:.75rem 1rem 1rem;background:#fff;border-top:1px solid #e5e5e5}.gpt-input-container{position:relative}.gpt-input-container form{display:flex;gap:.5rem;background:#fff;border:1px solid #d9d9e3;border-radius:12px;padding:.5rem .75rem;box-shadow:0 0 10px #0000000d}.gpt-input-container input{flex:1;border:none;outline:none;font-size:.85rem;padding:.35rem 0;background:transparent}.gpt-input-container input::-moz-placeholder{color:#8e8ea0}.gpt-input-container input::placeholder{color:#8e8ea0}.gpt-input-container button{padding:.4rem .6rem;background:#10a37f;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;transition:background .15s}.gpt-input-container button:hover:not(:disabled){background:#0d8a6a}.gpt-input-container button:disabled{background:#d9d9e3;cursor:not-allowed}.gpt-disclaimer{text-align:center;font-size:.65rem;color:#8e8ea0;margin:.5rem 0 0}.chat-section-content{display:flex;flex-direction:column;height:calc(100% - 20px)}.chat-section-content .section-title{margin:0;font-size:1.1rem}.chat-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid #e8e8e8}.chat-title-area{display:flex;align-items:center;gap:.75rem}.active-project-badge{display:flex;align-items:center;gap:.4rem;background:linear-gradient(135deg,#238636,#2ea043);color:#fff;padding:.3rem .75rem;border-radius:20px;font-size:.7rem;font-weight:600}.badge-dot{width:6px;height:6px;background:#fff;border-radius:50%;animation:pulse 2s infinite}.chat-status{display:flex;align-items:center;gap:.4rem;font-size:.7rem;color:#3fb950;font-weight:600}.status-indicator{width:8px;height:8px;border-radius:50%;background:#3fb950}.status-indicator.online{animation:pulse 2s infinite}.chat-full-panel{display:flex;flex-direction:column;flex:1;min-height:0;background:#0d1117;border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0000004d}.files-bar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:linear-gradient(180deg,#161b22,#0d1117);border-bottom:1px solid #30363d}.files-scroll{display:flex;gap:.5rem;overflow-x:auto;flex:1;padding:2px}.file-tab{display:flex;align-items:center;gap:.4rem;padding:.5rem .85rem;background:transparent;border:1px solid #30363d;border-radius:6px;font-size:.75rem;font-weight:500;color:#8b949e;cursor:pointer;white-space:nowrap;transition:all .2s}.file-tab:hover{border-color:#58a6ff;color:#c9d1d9;background:#58a6ff1a}.file-tab.active{background:#238636;color:#fff;border-color:#238636}.files-actions{display:flex;gap:.4rem;margin-left:1rem}.mode-btn{padding:.5rem .75rem;background:transparent;border:1px solid #30363d;border-radius:6px;cursor:pointer;font-size:.9rem;color:#8b949e;transition:all .2s}.mode-btn:hover{border-color:#58a6ff;color:#c9d1d9}.mode-btn.active{background:#1f6feb;color:#fff;border-color:#1f6feb}.chat-main-content{flex:1;min-height:0;display:flex;flex-direction:column}.chat-area{display:flex;flex-direction:column;flex:1;min-height:0;background:#0d1117}.chat-messages-scroll{flex:1;overflow-y:auto;padding:1.25rem;display:flex;flex-direction:column;gap:1rem}.chat-empty{text-align:center;padding:2rem 1rem;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%}.chat-empty span{font-size:3.5rem;display:block;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.chat-empty h4{font-size:1.25rem;margin:0 0 .5rem;color:#e6edf3;font-weight:600}.chat-empty p{font-size:.9rem;color:#8b949e;margin:0 0 1.5rem;max-width:280px}.quick-prompts{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;width:100%;max-width:320px}.quick-prompts button{padding:.75rem 1rem;background:#161b22;border:1px solid #30363d;border-radius:8px;font-size:.8rem;font-weight:500;color:#c9d1d9;cursor:pointer;transition:all .2s;text-align:left}.quick-prompts button:hover{background:#1f6feb;border-color:#1f6feb;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #1f6feb4d}.chat-bubble{display:flex;gap:.75rem;align-items:flex-start;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-bubble.user{flex-direction:row-reverse}.bubble-icon{font-size:1.25rem;flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:#21262d;border-radius:50%;border:1px solid #30363d}.chat-bubble.user .bubble-icon{background:#1f6feb;border-color:#1f6feb}.bubble-content{background:#161b22;padding:.85rem 1.1rem;border-radius:12px;max-width:75%;border:1px solid #30363d}.chat-bubble.user .bubble-content{background:linear-gradient(135deg,#238636,#2ea043);color:#fff;border:none}.bubble-content p{font-size:.78rem;margin:0;line-height:1.6;white-space:pre-wrap;color:#c9d1d9}.chat-bubble.user .bubble-content p{color:#fff}.bubble-content small{display:block;font-size:.65rem;color:#8b949e;margin-top:.5rem}.chat-bubble.user .bubble-content small{color:#ffffffb3}.chat-bubble.typing .bubble-content{padding:1rem 1.25rem}.typing-dots{display:flex;gap:.35rem;align-items:center}.typing-dots span{width:8px;height:8px;background:#58a6ff;border-radius:50%;animation:typingBounce 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 typingBounce{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1.2);opacity:1}}.chat-input-area{border-top:1px solid #30363d;padding:1rem 1.25rem;background:#161b22}.chat-input-area form{display:flex;gap:.75rem;align-items:center}.chat-input-area input{flex:1;padding:.85rem 1rem;background:#0d1117;border:1px solid #30363d;border-radius:8px;color:#c9d1d9;font-size:.9rem;transition:all .2s}.chat-input-area input::-moz-placeholder{color:#484f58}.chat-input-area input::placeholder{color:#484f58}.chat-input-area input:focus{outline:none;border-color:#58a6ff;box-shadow:0 0 0 3px #58a6ff26}.chat-input-area button{padding:.85rem 1.5rem;background:linear-gradient(135deg,#238636,#2ea043);border:none;border-radius:8px;color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.chat-input-area button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #23863666}.chat-input-area button:disabled{opacity:.5;cursor:not-allowed}.code-area{display:flex;flex-direction:column;flex:1;min-height:0;background:#0d1117}.code-header-bar{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#161b22;border-bottom:1px solid #30363d;font-size:.85rem;font-weight:500;color:#e6edf3}.copy-btn-small{padding:.4rem .85rem;background:#238636;color:#fff;border:none;border-radius:6px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.copy-btn-small:hover{background:#2ea043;transform:translateY(-1px)}.code-display{flex:1;overflow:auto;background:#0d1117}.code-display pre{margin:0;padding:1.25rem}.code-display code{font-family:JetBrains Mono,Fira Code,Monaco,Menlo,monospace;font-size:.8rem;line-height:1.7;color:#c9d1d9;white-space:pre-wrap;word-break:break-all}.code-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#8b949e;background:#0d1117}.code-empty span{font-size:2.5rem;margin-bottom:.75rem}.code-empty p{font-size:.9rem;color:#8b949e}.action-bar{display:flex;gap:.6rem;padding:1rem 1.25rem;background:#161b22;border-top:1px solid #30363d}.action-bar-btn{flex:1;padding:.85rem 1rem;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;background:#21262d;color:#c9d1d9;border:1px solid #30363d}.action-bar-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0000004d;background:#30363d}.action-bar-btn.primary{background:linear-gradient(135deg,#238636,#2ea043);color:#fff;border:none}.action-bar-btn.primary:hover:not(:disabled){box-shadow:0 4px 12px #23863666}.action-bar-btn.secondary{background:transparent;border:1px solid #30363d;color:#8b949e}.action-bar-btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important}.chat-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 2rem;height:100%;background:linear-gradient(135deg,#0d1117,#161b22);border-radius:12px}.chat-empty-state .empty-icon{font-size:4rem;display:block;margin-bottom:1.5rem;animation:float 3s ease-in-out infinite}.chat-empty-state h4{font-size:1.25rem;margin:0 0 .75rem;color:#e6edf3;font-weight:600}.chat-empty-state p{font-size:.95rem;color:#8b949e;margin:0;max-width:280px;line-height:1.5}.chat-empty-state small{display:block;margin-top:1rem;font-size:.8rem;color:#58a6ff;font-weight:500}.view-mode-tabs{display:flex;gap:.25rem;background:#21262d;padding:.25rem;border-radius:8px}.view-tab{padding:.5rem .85rem;background:transparent;border:none;border-radius:6px;font-size:.75rem;font-weight:600;color:#8b949e;cursor:pointer;transition:all .2s;white-space:nowrap}.view-tab:hover{color:#c9d1d9;background:#ffffff0d}.view-tab.active{background:#0d1117;color:#e6edf3}.view-tab.preview{color:#3fb950}.view-tab.preview.active{background:#238636;color:#fff}.preview-area{display:flex;flex-direction:column;flex:1;min-height:0;background:#0d1117}.preview-header-bar{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;background:#161b22;border-bottom:1px solid #30363d}.preview-url-bar{display:flex;align-items:center;gap:.5rem;background:#0d1117;padding:.4rem .75rem;border-radius:6px;border:1px solid #30363d;flex:1;max-width:300px}.url-icon{font-size:.8rem}.url-text{font-size:.75rem;color:#8b949e;font-family:Monaco,monospace;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.open-external{color:#58a6ff;text-decoration:none;font-size:.9rem;padding:.2rem;border-radius:4px;transition:all .2s}.open-external:hover{background:#58a6ff26}.preview-controls{display:flex;gap:.5rem}.refresh-btn{background:#21262d;border:1px solid #30363d;border-radius:6px;padding:.4rem .6rem;cursor:pointer;font-size:.85rem;transition:all .2s}.refresh-btn:hover{background:#30363d}.preview-frame{flex:1;background:#fff;border-radius:0 0 8px 8px;overflow:hidden;position:relative}.live-iframe{width:100%;height:100%;border:none;background:#fff}.preview-loading{display:flex;align-items:center;justify-content:center;height:100%;background:linear-gradient(135deg,#0d1117,#161b22)}.preview-status{text-align:center;max-width:320px;padding:2rem}.loading-icon{font-size:3rem;display:block;margin-bottom:1rem;animation:bounce 1s infinite}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.preview-status h4{font-size:1.1rem;color:#e6edf3;margin:0 0 .5rem}.preview-status>p{font-size:.85rem;color:#8b949e;margin:0 0 1.5rem}.loading-bar{height:4px;background:#30363d;border-radius:2px;overflow:hidden;margin-bottom:2rem}.loading-progress{height:100%;width:30%;background:linear-gradient(90deg,#238636,#3fb950,#238636);border-radius:2px;animation:loadingSlide 1.5s infinite}@keyframes loadingSlide{0%{transform:translate(-100%)}to{transform:translate(400%)}}.preview-instructions{background:#161b22;border:1px solid #30363d;border-radius:8px;padding:1rem;text-align:left}.preview-instructions p{font-size:.75rem;color:#8b949e;margin:0 0 .75rem}.preview-instructions ol{margin:0;padding-left:1.25rem;font-size:.7rem;color:#c9d1d9;line-height:1.8}.preview-instructions code{background:#0d1117;padding:.15rem .4rem;border-radius:4px;font-family:Monaco,monospace;font-size:.65rem;color:#79c0ff}.btn-start-new{width:100%;padding:.6rem;background:#f8f9fa;border:2px dashed #ccc;border-radius:8px;font-size:.8rem;color:#666;cursor:pointer;transition:all .2s}.btn-start-new:hover{border-color:#2d5a5a;color:#2d5a5a;background:#fff}.no-active-solving{padding:2rem 0}.empty-state{text-align:center;padding:2rem}.empty-state span{font-size:3rem;display:block;margin-bottom:1rem}.empty-state h4{margin:0 0 .5rem;color:#666}.empty-state p{color:#999;font-size:.85rem}.solve-info{margin-top:1.5rem;padding:.75rem;background:#f0f7f7;border-radius:8px;text-align:center}.solve-info p{font-size:.8rem;color:#2d5a5a;margin:0}.result-filters{display:flex;gap:.5rem;justify-content:center;margin-bottom:1rem}.solutions-list{display:flex;flex-direction:column;gap:.75rem}.solution-card{display:flex;align-items:flex-start;gap:.75rem;background:#fff;border-radius:12px;padding:1rem;border:1px solid #e0e0e0;transition:all .2s ease}.solution-card:hover{border-color:#2d5a5a;box-shadow:0 4px 15px #0000001a}.solution-card.solving{border-left:3px solid #2196f3}.solution-card.completed{border-left:3px solid #4caf50}.solution-status{font-size:1.25rem}.solution-content{flex:1}.solution-problem{font-size:.85rem;color:#333;margin:0 0 .5rem;font-style:italic}.solution-meta{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.7rem;color:#888;margin-bottom:.5rem;align-items:center}.solution-name{font-weight:600;color:#2d5a5a}.solution-engine{background:#e8f4f4;color:#2d5a5a;padding:.15rem .4rem;border-radius:6px;font-size:.65rem}.solution-card{cursor:pointer;transition:all .3s ease}.solution-card:hover{background:#f8f8f8}.solution-card.expanded{background:#f5f9f9;border-color:#2d5a5a}.solution-header{display:flex;align-items:flex-start;gap:.75rem}.expand-icon{font-size:.7rem;color:#888;padding:.25rem}.solution-journey-expanded{margin-top:.75rem;padding-top:.75rem;border-top:1px solid #e0e0e0}.journey-title{font-size:.75rem;font-weight:600;color:#2d5a5a;margin-bottom:.5rem}.journey-steps-list{display:flex;flex-direction:column;gap:.4rem}.journey-step-item{display:flex;align-items:center;gap:.6rem;padding:.4rem .5rem;background:#fff;border-radius:6px;border:1px solid #eee}.journey-step-item.done{background:#f0fff0;border-color:#c8e6c9}.journey-step-item.active{background:#e8f5f5;border-color:#2d5a5a}.step-number{width:20px;height:20px;background:#e0e0e0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700;color:#666}.journey-step-item.done .step-number{background:#4caf50;color:#fff}.step-details{flex:1;min-width:0}.step-details h5{margin:0;font-size:.8rem;font-weight:600;color:#333}.step-details p{margin:.1rem 0 0;font-size:.65rem;color:#666}.step-status-icon{font-size:.9rem;color:#4caf50}.step-detail-text{font-size:.65rem!important;color:#555!important;line-height:1.4;margin-top:.2rem!important}.solution-actions-row{display:flex;gap:.5rem;margin-top:1rem;padding-top:.75rem;border-top:1px dashed #e0e0e0}.btn-view-again,.btn-download-again{flex:1;padding:.6rem 1rem;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-view-again{background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff}.btn-view-again:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2d5a5a4d}.btn-download-again{background:#fff;color:#2d5a5a;border:2px solid #2d5a5a}.btn-download-again:hover{background:#f0f9f9}.journey-title-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.journey-title{font-size:.75rem;font-weight:600;color:#2d5a5a}.mini-toggle{display:flex;gap:.25rem}.mini-toggle button{padding:.2rem .4rem;font-size:.6rem;border:1px solid #ddd;background:#fff;border-radius:4px;cursor:pointer;color:#666}.mini-toggle button.active{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.view-mode-toggle{margin-bottom:1rem}.view-mode-toggle .label{display:block;margin-bottom:.5rem}.toggle-buttons{display:flex;gap:.5rem}.toggle-buttons button{flex:1;padding:.5rem 1rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;cursor:pointer;font-size:.8rem;transition:all .2s ease}.toggle-buttons button:hover{border-color:#2d5a5a}.toggle-buttons button.active{border-color:#2d5a5a;background:#2d5a5a;color:#fff}.result-journey-detailed{margin-bottom:1rem}.journey-steps-detailed{display:flex;flex-direction:column;gap:.5rem}.journey-step-detailed{background:#f8f8f8;border-radius:8px;padding:.6rem;border-left:3px solid #4caf50}.step-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.25rem}.step-num{width:20px;height:20px;background:#4caf50;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.65rem;font-weight:700}.step-name{font-weight:600;font-size:.8rem;flex:1}.step-check{font-size:.8rem}.step-detail{font-size:.7rem;color:#555;margin:0;padding-left:28px;line-height:1.4}.btn-coming-soon{position:relative;opacity:.7;cursor:not-allowed!important}.coming-soon-badge{position:absolute;top:-6px;right:-6px;background:#ff9800;color:#fff;font-size:.55rem;padding:.15rem .35rem;border-radius:8px;font-weight:700}.btn-working{background:#2d5a5a!important;color:#fff!important;border-color:#2d5a5a!important}.result-note{margin-top:1rem;padding:.75rem;background:#fff8e1;border-radius:8px;border-left:3px solid #ff9800}.result-note p{font-size:.7rem;color:#666;margin:0}.result-note strong{color:#333}.solution-journey-mini{display:flex;gap:.25rem}.solution-journey-mini span{font-size:.6rem;color:#ccc}.solution-journey-mini span.done{color:#4caf50}.solution-actions{display:flex;flex-direction:column;gap:.25rem}.solution-actions button{background:#f5f5f5;border:none;border-radius:6px;padding:.4rem;cursor:pointer;font-size:.9rem}.empty-solutions{text-align:center;padding:2rem;color:#999}.empty-solutions span{font-size:2rem;display:block;margin-bottom:.5rem}.solving-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999}.solving-modal{background:#fff;border-radius:20px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.solving-header{padding:1.25rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;text-align:center}.solving-header h3{margin:0;font-size:1.1rem}.solving-problem{padding:1rem 1.5rem;background:#f8f8f8;border-bottom:1px solid #eee}.solving-problem .label{font-size:.7rem;color:#888;text-transform:uppercase}.solving-problem p{margin:.25rem 0 0;font-style:italic;color:#333}.solving-journey{padding:1.5rem}.journey-step{display:flex;align-items:flex-start;gap:1rem;padding:.75rem 0;border-bottom:1px solid #f0f0f0}.journey-step:last-child{border-bottom:none}.step-indicator{font-size:1.25rem}.step-content{flex:1}.step-content h4{margin:0;font-size:.95rem;font-weight:600}.step-content p{margin:.25rem 0 0;font-size:.8rem;color:#666}.step-progress{display:flex;align-items:center;gap:.75rem;margin-top:.5rem}.progress-bar{flex:1;height:6px;background:#e8e8e8;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#2d5a5a,#3d7a7a,#4caf50);border-radius:4px;transition:width .8s ease-out}.step-progress span{font-size:.75rem;color:#666;min-width:35px}.solving-footer{padding:1rem 1.5rem;background:#f8f8f8;border-top:1px solid #eee}.ai-thinking{text-align:center}.thinking-dots{color:#666;font-size:.85rem}.thinking-dots:after{content:"...";letter-spacing:2px}.ai-thinking{display:flex;align-items:center;gap:.5rem;color:#666;font-size:.85rem}.ai-thinking-bar{display:flex;gap:3px}.ai-thinking-bar span{width:4px;height:16px;background:#2d5a5a;border-radius:2px;opacity:.3}.ai-thinking-bar span:nth-child(1){opacity:.9;height:12px}.ai-thinking-bar span:nth-child(2){opacity:.7;height:18px}.ai-thinking-bar span:nth-child(3){opacity:.5;height:14px}.ai-thinking-bar span:nth-child(4){opacity:.3;height:10px}.result-modal{background:#fff;border-radius:20px;width:90%;max-width:500px;overflow:hidden;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease}.result-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem;background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff}.result-header h3{margin:0}.result-header button{background:#fff3;border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer}.result-body{padding:1.5rem}.result-problem,.result-journey,.result-solution{margin-bottom:1.25rem}.result-body .label{font-size:.7rem;color:#888;text-transform:uppercase;display:block;margin-bottom:.5rem}.result-problem p{font-style:italic;color:#333;margin:0}.journey-summary{display:flex;gap:.5rem;flex-wrap:wrap}.journey-item{display:flex;align-items:center;gap:.25rem;font-size:.8rem;color:#4caf50}.solution-preview{text-align:center;padding:1.5rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:12px}.solution-icon{font-size:3rem;margin-bottom:.5rem}.solution-preview h4{margin:0 0 .25rem;color:#2e7d32}.solution-preview p{margin:0;color:#666;font-size:.85rem}.result-actions{display:flex;gap:.75rem;margin-top:1rem}.result-actions .btn-primary{flex:1;padding:.75rem;border:none;border-radius:8px;background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;font-weight:600;cursor:pointer;transition:all .2s ease}.result-actions .btn-secondary{padding:.75rem 1rem;border:1px solid #ddd;border-radius:8px;background:#fff;color:#666;cursor:pointer}.settings-modal{max-width:1000px}.settings-section-title{margin:0 0 1rem;font-size:.95rem;color:#333}.provider-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1.5rem}.provider-card{padding:1rem;border:2px solid #e0e0e0;border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative}.provider-card:hover{border-color:#2d5a5a}.provider-card.selected{border-color:#2d5a5a;background:#f0f7f7}.provider-card.local{border-style:dashed}.provider-icon{font-size:1.75rem;margin-bottom:.5rem}.provider-card h5{margin:0 0 .25rem;font-size:.9rem}.provider-card p{margin:0;font-size:.7rem;color:#888}.free-badge{position:absolute;top:8px;right:8px;background:#4caf50;color:#fff;font-size:.6rem;padding:2px 6px;border-radius:10px;font-weight:700}.ollama-status{display:block;margin-top:.5rem;font-size:.7rem}.ollama-status.running{color:#4caf50}.ollama-status.not-running{color:#e53935}.ollama-status.checking{color:#ff9800}.ollama-instructions{background:#fff3e0;padding:1rem;border-radius:10px;margin-bottom:1rem}.ollama-instructions h5{margin:0 0 .75rem;font-size:.9rem}.ollama-instructions ol{margin:0;padding-left:1.25rem;font-size:.8rem}.ollama-instructions li{margin-bottom:.5rem}.ollama-instructions code{background:#333;color:#fff;padding:2px 6px;border-radius:4px;font-size:.75rem}.api-key-section{padding-top:1rem;border-top:1px solid #eee}.api-key-section input{width:100%;padding:.75rem;border:1px solid #ddd;border-radius:8px;margin-bottom:.75rem;font-family:monospace}.btn-save{width:100%;padding:.75rem;border:none;border-radius:8px;background:linear-gradient(135deg,#4caf50,#388e3c);color:#fff;font-weight:600;cursor:pointer}.status-bar{position:fixed;top:15px;left:15px;display:flex;gap:8px;z-index:100}.privacy-badge,.mode-badge,.offline-badge{background:#fffffff2;padding:.4rem .8rem;border-radius:20px;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;gap:.4rem;font-size:.75rem;font-weight:600}.privacy-badge{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);color:#2e7d32}.privacy-icon,.mode-icon{font-size:.9rem}.mode-badge.ai-mode{background:linear-gradient(135deg,#e3f2fd,#bbdefb);color:#1565c0}.mode-badge.template-mode{background:linear-gradient(135deg,#fff3e0,#ffe0b2);color:#e65100}.offline-badge{background:linear-gradient(135deg,#fce4ec,#f8bbd9);color:#c2185b}.status-dot{width:8px;height:8px;border-radius:50%;background:#ccc}.status-dot.running{background:#4caf50}.status-dot.not-running{background:#ff9800}.status-dot.checking{background:#2196f3;animation:pulse 1s infinite}.free-banner{display:flex;align-items:center;gap:1rem;padding:1rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:12px;margin-bottom:1.5rem}.free-banner h4{margin:0 0 .25rem;color:#2e7d32;font-size:1rem}.free-banner p{margin:0;font-size:.8rem;color:#666}.ollama-status-card{background:#f8f8f8;border-radius:12px;padding:1rem;margin-bottom:1.5rem}.status-header{display:flex;align-items:center;gap:1rem}.ollama-icon{font-size:2.5rem}.status-header h4{margin:0 0 .25rem;font-size:1rem}.status-badge{font-size:.85rem;font-weight:600}.status-badge.running{color:#4caf50}.status-badge.not-running{color:#e53935}.status-badge.checking{color:#ff9800}.model-selector h4{margin:0 0 .75rem;font-size:.95rem}.model-btn{padding:.5rem 1rem;border:2px solid #e0e0e0;border-radius:20px;background:#fff;font-size:.85rem;cursor:pointer;transition:all .2s ease}.model-btn.selected{border-color:#2d5a5a;background:#2d5a5a;color:#fff}.setup-steps{display:flex;flex-direction:column;gap:1rem;margin:1rem 0}.setup-step{display:flex;align-items:flex-start;gap:1rem}.step-number{width:28px;height:28px;background:#2d5a5a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;flex-shrink:0}.setup-step h5{margin:0 0 .25rem;font-size:.9rem}.setup-step code{display:inline-block;background:#333;color:#4caf50;padding:.25rem .75rem;border-radius:6px;font-size:.8rem;margin-top:.25rem}.btn-refresh{width:100%;padding:.75rem;border:none;border-radius:8px;background:#2d5a5a;color:#fff;font-weight:600;cursor:pointer;margin-top:1rem}.btn-refresh:hover{background:#1a3a3a}.coming-soon-note{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;background:#f5f5f5;border-radius:10px;margin-top:1rem;border-left:3px solid #9c27b0}.coming-soon-note span{font-size:1.25rem}.coming-soon-note p{margin:0;font-size:.8rem;color:#666}.coming-soon-note strong{color:#9c27b0}.settings-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .2s ease}.settings-modal{background:transparent;border-radius:16px;width:95%;max-width:1000px;max-height:90vh;overflow:hidden;box-shadow:0 25px 80px #00000080;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}.settings-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff}.settings-modal-header h3{margin:0;font-size:1.1rem}.close-modal{background:#fff3;border:none;color:#fff;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:1rem}.close-modal:hover{background:#ffffff4d}.settings-modal-body{padding:1.5rem;overflow-y:auto;max-height:70vh}.security-note{text-align:center;color:#666;font-size:.8rem;margin-top:1rem}.section-intro{text-align:center;color:#666;font-size:.9rem;margin-bottom:1.5rem}.apps-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.app-card{background:#fff;border-radius:12px;padding:1rem;text-align:center;border:2px solid #e0e0e0;transition:all .2s ease;position:relative}.app-card:hover{border-color:#2d5a5a;transform:translateY(-2px);box-shadow:0 8px 20px #0000001a}.app-card.needs-key{opacity:.7;border-style:dashed}.app-card-icon{font-size:2.5rem;margin-bottom:.5rem}.app-card h4{font-size:1rem;font-weight:700;color:#333;margin-bottom:.25rem}.app-card p{font-size:.75rem;color:#888;margin-bottom:.75rem}.key-badge,.ready-badge{display:inline-block;font-size:.65rem;padding:2px 8px;border-radius:10px;margin-bottom:.5rem}.key-badge{background:#fff3e0;color:#e65100;cursor:pointer}.ready-badge{background:#e8f5e9;color:#2e7d32}.app-launch-btn{width:100%;padding:.5rem;border:none;border-radius:8px;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease}.app-launch-btn:hover:not(.disabled){transform:scale(1.02);box-shadow:0 4px 12px #2d5a5a4d}.app-launch-btn.disabled{background:#e0e0e0;color:#999;cursor:not-allowed}.project-filters{list-style:none;display:flex;gap:.5rem;justify-content:center;margin-bottom:1.5rem}.project-filters li a{display:block;padding:.4rem 1rem;background:#f5f5f5;border-radius:20px;font-size:.75rem;font-weight:600;color:#666;text-decoration:none}.project-filters li.current a{background:#2d5a5a;color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.project-card{background:#fff;border-radius:12px;padding:1rem;text-align:center;border:1px solid #e0e0e0;transition:all .2s ease}.project-card:hover{border-color:#2d5a5a;box-shadow:0 4px 15px #0000001a}.project-card.new-project{border-style:dashed;cursor:pointer}.project-card.new-project:hover{background:#f8f8f8}.project-icon{font-size:2rem;margin-bottom:.5rem}.project-card h4{font-size:.9rem;font-weight:700;color:#333;margin-bottom:.25rem}.project-card p{font-size:.7rem;color:#888;margin-bottom:.5rem}.status-badge{display:inline-block;font-size:.65rem;padding:2px 8px;border-radius:10px}.status-badge.done{background:#e8f5e9;color:#2e7d32}.status-badge.active{background:#e3f2fd;color:#1565c0}.tbd-options{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:1.5rem 0}.tbd-option{background:#f8f8f8;border-radius:12px;padding:1rem;text-align:center;border:1px dashed #ddd}.tbd-option span{font-size:2rem;display:block;margin-bottom:.5rem}.tbd-option h4{font-size:.9rem;font-weight:700;color:#333;margin-bottom:.25rem}.tbd-option p{font-size:.7rem;color:#888}.tbd-note{text-align:center;color:#666;font-size:.85rem;padding:1rem;background:#fff3e0;border-radius:8px}.settings-modal{max-width:1000px!important}.settings-modal .modal-body{padding:1.5rem;max-height:75vh;overflow-y:auto}.free-banner{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-radius:12px;margin-bottom:1.5rem;border:1px solid #a5d6a7}.free-banner span{font-size:2rem}.free-banner h4{margin:0 0 .25rem;font-size:1rem;color:#2e7d32}.free-banner p{margin:0;font-size:.85rem;color:#558b2f}.ollama-status-card{background:#f5f5f5;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1.5rem;border:2px solid #e0e0e0;transition:all .3s ease}.ollama-status-card.running{border-color:#4caf50;background:linear-gradient(135deg,#f1f8e9,#e8f5e9)}.ollama-status-card.not-running{border-color:#ff9800;background:linear-gradient(135deg,#fff8e1,#ffecb3)}.status-header{display:flex;align-items:center;gap:.75rem}.status-header .ollama-icon{font-size:2rem}.status-header h4{margin:0 0 .25rem;font-size:.95rem;color:#333}.status-header .btn-check{margin-left:auto;background:#0000001a;border:none;width:36px;height:36px;border-radius:50%;cursor:pointer;font-size:1rem;transition:all .2s ease}.status-header .btn-check:hover{background:#00000026;transform:rotate(180deg)}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600}.status-badge.running{background:#4caf50;color:#fff}.status-badge.not-running{background:#ff9800;color:#fff}.status-badge.checking{background:#2196f3;color:#fff}.model-selector{margin-bottom:1.5rem}.model-selector h4{margin:0 0 .75rem;font-size:.95rem;color:#333}.model-options{display:flex;flex-wrap:wrap;gap:.5rem}.model-btn{padding:.5rem 1rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;cursor:pointer;font-size:.85rem;transition:all .2s ease}.model-btn:hover{border-color:#2d5a5a}.model-btn.selected{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.no-models-warning{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#fff3e0;border-radius:8px;margin-bottom:1rem;border:1px solid #ffcc80}.no-models-warning span{font-size:1.5rem}.no-models-warning p{margin:0;color:#e65100;font-size:.9rem}.install-model-section{background:#fafafa;border-radius:12px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #e0e0e0}.install-model-section h4{margin:0 0 .5rem;font-size:.95rem;color:#333}.install-hint{margin:0 0 1rem;font-size:.8rem;color:#666}.model-install-options{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.install-option{display:flex;flex-direction:column;align-items:flex-start;padding:.75rem;background:#fff;border:2px solid #e0e0e0;border-radius:10px;cursor:pointer;transition:all .2s ease;text-align:left}.install-option:hover{border-color:#2d5a5a;transform:translateY(-2px)}.install-option.selected{border-color:#2d5a5a;background:linear-gradient(135deg,#e0f2f1,#b2dfdb)}.install-option .model-name{font-size:.95rem;font-weight:700;color:#333}.install-option .model-size{font-size:.7rem;color:#888;margin:.25rem 0}.install-option .model-desc{font-size:.75rem;color:#666}.btn-install-model{width:100%;padding:.75rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-install-model:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #2d5a5a4d}.btn-install-model:disabled{opacity:.6;cursor:not-allowed}.pull-progress{margin-top:.75rem;padding:.75rem;background:#e3f2fd;border-radius:8px;font-size:.85rem;color:#1565c0;text-align:center}.pull-progress.success{background:#e8f5e9;color:#2e7d32}.pull-progress.error{background:#ffebee;color:#c62828}.ollama-instructions{margin-bottom:1.5rem}.ollama-instructions h4{margin:0 0 1rem;font-size:1rem;color:#333}.setup-tabs{display:flex;flex-direction:column;gap:1rem}.setup-tab{background:#fafafa;border-radius:12px;padding:1.25rem;border:1px solid #e0e0e0}.setup-tab h5{margin:0 0 1rem;font-size:.9rem;color:#2d5a5a;font-weight:700}.setup-steps{display:flex;flex-direction:column;gap:.75rem}.setup-step{display:flex;align-items:flex-start;gap:.75rem}.step-number{width:28px;height:28px;background:#2d5a5a;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;flex-shrink:0}.setup-step h5{margin:0 0 .25rem;font-size:.9rem;color:#333;font-weight:600}.setup-step p{margin:0;font-size:.8rem;color:#666}.download-btn{display:inline-block;padding:.5rem 1rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff!important;border-radius:6px;font-size:.85rem;margin-top:.5rem;transition:all .2s ease}.download-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #2d5a5a4d}.terminal-commands{display:flex;flex-direction:column;gap:.75rem}.command-block{background:#263238;border-radius:8px;padding:.75rem;overflow:hidden}.command-label{display:block;font-size:.75rem;color:#80cbc4;margin-bottom:.25rem}.command-block code{display:block;font-family:Monaco,Consolas,monospace;font-size:.8rem;color:#b2dfdb;word-break:break-all}.btn-refresh{width:100%;padding:.75rem;background:linear-gradient(135deg,#ff9800,#f57c00);color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;margin-top:1rem;transition:all .2s ease}.btn-refresh:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ff98004d}.coming-soon-note{display:flex;align-items:center;gap:.75rem;padding:1rem;background:#f3e5f5;border-radius:8px;border:1px solid #ce93d8}.coming-soon-note span{font-size:1.5rem}.coming-soon-note p{margin:0;font-size:.8rem;color:#7b1fa2}.coming-soon-note strong{display:block;font-size:.85rem;margin-bottom:.25rem}.preview-modal-overlay{background:#000000e6}.preview-modal{width:95vw;max-width:1400px;height:90vh;background:#1a1a1a;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 30px 100px #00000080}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff}.preview-header h3{margin:0;font-size:1.1rem}.preview-actions{display:flex;gap:.75rem;align-items:center}.btn-open-tab{padding:.5rem 1rem;background:#fff3;color:#fff!important;border-radius:6px;font-size:.85rem;transition:all .2s}.btn-open-tab:hover{background:#ffffff4d}.btn-close{width:36px;height:36px;background:#ffffff1a;border:none;color:#fff;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .2s}.btn-close:hover{background:#fff3}.preview-container{flex:1;background:#fff;position:relative}.preview-iframe{width:100%;height:100%;border:none}.preview-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#666}.spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#2d5a5a;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.generated-files{margin-top:1.5rem;padding-top:1rem;border-top:1px solid #e0e0e0}.generated-files .label{display:block;font-size:.8rem;color:#888;margin-bottom:.75rem}.file-list{display:flex;flex-wrap:wrap;gap:.5rem}.file-chip{display:inline-flex;align-items:center;padding:.35rem .75rem;background:#f0f0f0;border-radius:20px;font-size:.75rem;color:#555;font-family:Monaco,Consolas,monospace}.btn-working{position:relative;cursor:pointer!important;opacity:1!important}.btn-coming-soon{position:relative;cursor:not-allowed!important;opacity:.6}.coming-soon-badge{position:absolute;top:-8px;right:-8px;background:#ff9800;color:#fff;font-size:.6rem;padding:2px 6px;border-radius:10px;font-weight:700}.result-actions{display:flex;gap:.75rem;margin-top:1.5rem;flex-wrap:wrap}.result-actions button{flex:1;min-width:120px;padding:.75rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;transition:all .2s}.result-actions .btn-primary{background:linear-gradient(135deg,#1a1a2e,#16213e);color:#fff;border:none;transition:all .2s ease}.result-actions .btn-primary:hover{background:linear-gradient(135deg,#f59e0b,#d97706);color:#1a1a2e}.result-actions .btn-primary.btn-working:hover{transform:translateY(-2px);box-shadow:0 4px 15px #1a1a2e66}.result-actions .btn-secondary{background:#f5f5f5;color:#333;border:2px solid #e0e0e0}.result-actions .btn-secondary.btn-working:hover{background:#eee;border-color:#ccc}.result-note{margin-top:1rem;padding:.75rem 1rem;background:#f8f9fa;border-radius:8px;font-size:.8rem;color:#666}.result-note code{background:#e9ecef;padding:.15rem .4rem;border-radius:4px;font-family:Monaco,Consolas,monospace;font-size:.75rem}.result-modal-overlay{background:#000000d9}.result-modal-enhanced{width:95vw;max-width:1200px;height:85vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 30px 100px #0006}.result-header-enhanced{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}.result-title{display:flex;align-items:center;gap:.75rem}.result-icon{font-size:1.8rem}.result-title h3{margin:0;font-size:1.1rem}.result-subtitle{margin:.25rem 0 0;font-size:.8rem;opacity:.8}.result-header-actions{display:flex;align-items:center;gap:.5rem}.tab-btn{padding:.5rem 1rem;background:#ffffff1a;border:none;color:#fff;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.tab-btn:hover{background:#fff3}.tab-btn.active{background:#fff;color:#2d5a5a}.close-btn{width:36px;height:36px;background:#ffffff1a;border:none;color:#fff;border-radius:50%;cursor:pointer;font-size:1.2rem;margin-left:.5rem}.close-btn:hover{background:#fff3}.result-content-enhanced{display:flex;flex:1;overflow:hidden}.result-left-panel{width:280px;background:#f8f9fa;border-right:1px solid #e0e0e0;display:flex;flex-direction:column;padding:1rem;gap:1rem;overflow-y:auto}.result-left-panel h4{margin:0 0 .75rem;font-size:.85rem;color:#666;font-weight:600}.quick-actions{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000d}.action-buttons{display:flex;flex-direction:column;gap:.5rem}.action-btn{padding:.6rem 1rem;border:2px solid #e0e0e0;background:#fff;border-radius:8px;cursor:pointer;font-size:.85rem;text-align:left;transition:all .2s}.action-btn:hover{border-color:#2d5a5a;background:#f0f9f9}.action-btn.primary{background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;border:none}.action-btn.primary:hover{transform:translateY(-2px);box-shadow:0 4px 15px #2d5a5a4d}.deploy-section{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000d}.deploy-section h4{margin:0 0 .75rem;font-size:.9rem;color:#333}.deploy-options{display:flex;flex-direction:column;gap:.5rem}.deploy-btn{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;font-size:.85rem;text-align:left;transition:all .2s}.deploy-btn:hover:not(.disabled){transform:translate(4px);border-color:currentColor}.deploy-btn.disabled{opacity:.6;cursor:not-allowed}.deploy-icon{font-size:1.1rem;width:24px;text-align:center}.deploy-name{flex:1;font-weight:600}.deploy-status{font-size:.7rem;padding:.2rem .5rem;border-radius:10px;font-weight:600;text-transform:uppercase}.deploy-status.ready{background:#d4edda;color:#155724}.deploy-status.soon{background:#f0f0f0;color:#888}.deploy-btn.vercel{border-color:#000;color:#000}.deploy-btn.vercel:hover{background:#000;color:#fff}.deploy-btn.netlify{border-color:#00ad9f;color:#00ad9f}.deploy-btn.github{border-color:#333;color:#333}.deploy-btn.surge{border-color:#ff6b6b;color:#ff6b6b}.deploy-btn.cloudflare{border-color:#f38020;color:#f38020}.deploy-hint{margin:.75rem 0 0;font-size:.75rem;color:#888;text-align:center}.deploy-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.deploy-modal{background:#f8f9fa;border-radius:16px;width:90%;max-width:480px;max-height:90vh;overflow:hidden;box-shadow:0 25px 80px #0000004d}.deploy-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff}.deploy-modal-header h3{margin:0;font-size:1.1rem;font-weight:600}.deploy-modal-content{padding:1.25rem;max-height:70vh;overflow-y:auto}.deploy-option-card{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #0000000d}.deploy-option-card.automatic{border:2px solid #2d5a5a}.deploy-option-card.manual{border:2px solid #e0e0e0}.option-header{margin-bottom:1rem}.option-badge{display:inline-block;padding:.2rem .5rem;background:#d4edda;color:#155724;font-size:.7rem;font-weight:700;border-radius:4px;text-transform:uppercase;margin-bottom:.5rem}.option-header h4{margin:0;font-size:1rem;color:#333}.deploy-connected{display:flex;flex-direction:column;gap:.75rem}.connected-status{display:flex;align-items:center;gap:.5rem;padding:.5rem;background:#d4edda;border-radius:6px;font-size:.85rem;color:#155724}.connected-status .status-icon{font-weight:700}.btn-disconnect{margin-left:auto;padding:.25rem .5rem;background:transparent;border:1px solid #155724;border-radius:4px;color:#155724;font-size:.7rem;cursor:pointer}.btn-disconnect:hover{background:#155724;color:#fff}.btn-deploy-now{padding:.75rem 1.5rem;background:#000;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:.5rem;transition:all .2s}.btn-deploy-now:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #0003}.btn-deploy-now:disabled{opacity:.7;cursor:not-allowed}.spinner-small{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.deploy-note{margin:0;font-size:.75rem;color:#666;text-align:center}.deploy-error{padding:.5rem;background:#f8d7da;border-radius:6px;font-size:.8rem;color:#721c24;display:flex;align-items:center;gap:.5rem}.deploy-success{text-align:center;padding:1rem}.success-icon{font-size:2rem;display:block;margin-bottom:.5rem}.deploy-success p{margin:0 0 .75rem;font-size:1rem;font-weight:600;color:#155724}.live-url{display:block;padding:.75rem;background:#f0f0f0;border-radius:6px;color:#000;text-decoration:none;font-family:monospace;font-size:.85rem;margin-bottom:1rem;word-break:break-all}.live-url:hover{background:#e0e0e0}.btn-deploy-again{padding:.5rem 1rem;background:#fff;border:2px solid #000;border-radius:6px;color:#000;font-size:.85rem;cursor:pointer;transition:all .2s}.btn-deploy-again:hover{background:#000;color:#fff}.deploy-connect{text-align:center}.deploy-connect p{margin:0 0 1rem;font-size:.9rem;color:#666}.btn-connect-vercel{padding:.75rem 1.5rem;background:#000;color:#fff;border:none;border-radius:8px;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-connect-vercel:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.get-token-link{display:block;margin-top:.75rem;font-size:.8rem;color:#2d5a5a;text-decoration:none}.get-token-link:hover{text-decoration:underline}.deploy-divider{display:flex;align-items:center;margin:1.25rem 0}.deploy-divider:before,.deploy-divider:after{content:"";flex:1;height:1px;background:#e0e0e0}.deploy-divider span{padding:0 1rem;font-size:.8rem;color:#888;font-weight:600}.deploy-option-card.manual h4{margin:0;font-size:1rem;color:#333}.deploy-option-card.manual>p{margin:.25rem 0 1rem;font-size:.85rem;color:#666}.manual-steps{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.manual-step{display:flex;align-items:center;gap:.75rem}.step-num{width:24px;height:24px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#666}.btn-download{padding:.5rem 1rem;background:#2d5a5a;color:#fff;border:none;border-radius:6px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-download:hover{background:#1a3a3a}.manual-step span:not(.step-num){font-size:.85rem;color:#666}.platform-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem}.platform-btn{padding:.6rem 1rem;background:#fff;border:2px solid;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s}.platform-btn:hover{transform:translateY(-1px)}.platform-btn.vercel{border-color:#000;color:#000}.platform-btn.vercel:hover{background:#000;color:#fff}.platform-btn.netlify{border-color:#00ad9f;color:#00ad9f}.platform-btn.netlify:hover{background:#00ad9f;color:#fff}.platform-btn.surge{border-color:#ff6b6b;color:#ff6b6b}.platform-btn.surge:hover{background:#ff6b6b;color:#fff}.platform-btn.github{border-color:#333;color:#333}.platform-btn.github:hover{background:#333;color:#fff}.file-explorer{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000d}.file-tree{display:flex;flex-direction:column;gap:.25rem}.file-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border:none;border-radius:6px;cursor:pointer;font-size:.85rem;text-align:left;color:#333;transition:all .2s}.file-item:hover{background:#f0f0f0}.file-item.selected{background:#e0f2f1;color:#2d5a5a}.file-icon{font-size:1rem}.file-name{font-family:Monaco,Consolas,monospace;font-size:.8rem}.journey-summary{background:#fff;border-radius:10px;padding:1rem;box-shadow:0 2px 8px #0000000d}.mini-steps{display:flex;flex-direction:column;gap:.5rem}.mini-step{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#666}.mini-check{font-size:.75rem}.result-right-panel{flex:1;display:flex;flex-direction:column;overflow:hidden}.chat-container{display:flex;flex-direction:column;height:100%}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#f8f9fa;border-bottom:1px solid #e0e0e0;font-size:.9rem;font-weight:600;color:#333}.chat-hint{font-size:.75rem;font-weight:400;color:#888}.chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:1rem}.chat-welcome{text-align:center;padding:2rem;max-width:400px;margin:auto}.welcome-icon{font-size:3rem;margin-bottom:1rem}.chat-welcome h4{margin:0 0 .5rem;font-size:1.1rem;color:#333}.chat-welcome p{margin:0 0 1.5rem;color:#666;font-size:.9rem}.chat-suggestions{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.chat-suggestions button{padding:.5rem 1rem;background:#f0f0f0;border:1px solid #e0e0e0;border-radius:20px;cursor:pointer;font-size:.8rem;transition:all .2s}.chat-suggestions button:hover{background:#e0f2f1;border-color:#2d5a5a}.chat-message{display:flex;gap:.75rem;max-width:85%}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.message-avatar{width:36px;height:36px;background:#f0f0f0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.chat-message.user .message-avatar{background:#2d5a5a}.chat-message.assistant .message-avatar{background:#e8f5e9}.message-content{background:#f5f5f5;border-radius:12px;padding:.75rem 1rem}.chat-message.user .message-content{background:#2d5a5a;color:#fff}.message-text{font-size:.8rem;line-height:1.5;white-space:pre-wrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.message-time{font-size:.7rem;color:#999;margin-top:.25rem}.chat-message.user .message-time{color:#ffffffb3}.typing-indicator{display:flex;gap:.25rem}.typing-indicator span{width:8px;height:8px;background:#999;border-radius:50%;animation:typing 1.4s infinite}@keyframes typing{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-5px)}}.chat-input-form{display:flex;gap:.5rem;padding:1rem;background:#f8f9fa;border-top:1px solid #e0e0e0}.chat-input-form input{flex:1;padding:.75rem 1rem;border:2px solid #e0e0e0;border-radius:25px;font-size:.9rem;outline:none;transition:border-color .2s}.chat-input-form input:focus{border-color:#2d5a5a}.chat-input-form button{width:44px;height:44px;background:linear-gradient(135deg,#2d5a5a,#1a3a3a);color:#fff;border:none;border-radius:50%;cursor:pointer;font-size:1.2rem;transition:all .2s}.chat-input-form button:hover:not(:disabled){transform:scale(1.05)}.chat-input-form button:disabled{opacity:.5;cursor:not-allowed}.code-viewer{display:flex;flex-direction:column;height:100%;background:#1e1e1e}.code-header{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#252526;border-bottom:1px solid #333;color:#e0e0e0;font-size:.85rem;font-family:Monaco,Consolas,monospace}.copy-btn{padding:.4rem .75rem;background:#ffffff1a;border:none;color:#e0e0e0;border-radius:4px;cursor:pointer;font-size:.75rem;transition:background .2s}.copy-btn:hover{background:#fff3}.code-content{flex:1;overflow:auto;padding:1rem}.code-content pre{margin:0;font-family:Monaco,Consolas,Courier New,monospace;font-size:.85rem;line-height:1.6;color:#d4d4d4}.code-content code{display:block;white-space:pre-wrap;word-break:break-all}.code-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#666;text-align:center}.code-empty span{font-size:2rem;margin-bottom:1rem}.code-empty p{font-size:.9rem}.chat-input-container{background:#f4f4f5;border-radius:24px;border:1px solid #e4e4e7;overflow:hidden;margin-top:auto;box-shadow:0 2px 8px #0000000f}.source-selector{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .75rem;background:transparent;border-bottom:none}.source-label{font-size:.7rem;color:#71717a;font-weight:500;text-transform:uppercase;letter-spacing:.3px;margin-right:.4rem}.source-btn{display:flex;align-items:center;gap:.35rem;padding:.4rem .75rem;background:#f4f4f5;border:1px solid #e4e4e7;border-radius:18px;color:#52525b;font-size:.75rem;cursor:pointer;transition:all .15s ease;font-weight:500}.source-btn:hover:not(.disabled){background:#e4e4e7;border-color:#d4d4d8}.source-btn.active{background:#18181b;border-color:#18181b;color:#fff}.source-btn.disabled{opacity:.4;cursor:not-allowed}.source-icon{font-size:.9rem}.source-name{font-weight:500}.source-status{font-size:.6rem;margin-left:.2rem}.source-status.connected{color:#22c55e}.source-status.disconnected{color:#64748b}.define-chat-area{flex:1;overflow-y:auto;padding:1.5rem 1rem;min-height:250px;max-height:none;background:transparent;border-radius:0;margin-bottom:0;border:none}.welcome-box{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:2rem}.welcome-icon{font-size:3.5rem;margin-bottom:1rem}.welcome-box h3{font-size:1.3rem;color:#e2e8f0;margin-bottom:.5rem}.welcome-box p{color:#71717a;margin-bottom:1.5rem;font-size:.9rem}.quick-examples{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.example-btn{background:#6366f126;border:1px solid rgba(99,102,241,.3);color:#a5b4fc;padding:.5rem 1rem;border-radius:20px;font-size:.8rem;cursor:pointer;transition:all .2s}.example-btn:hover{background:#6366f14d;transform:translateY(-2px)}.chat-messages{display:flex;flex-direction:column;gap:.75rem}.chat-message{display:flex;gap:.75rem;padding:.75rem;border-radius:12px}.chat-message.user{background:#6366f11a;margin-left:2rem}.chat-message.assistant{background:#1e293bcc;margin-right:2rem}.message-avatar{width:32px;height:32px;border-radius:50%;background:#6366f133;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.9rem}.message-content{flex:1;min-width:0}.message-text{margin:0;white-space:pre-wrap;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:.78rem;line-height:1.5;color:#e2e8f0}.token-badge{display:inline-block;margin-top:.5rem;padding:2px 8px;background:#6366f133;border-radius:10px;font-size:.65rem;color:#a5b4fc}.typing-indicator{display:flex;gap:4px;padding:.5rem 0}.typing-indicator span{display:inline-block;width:8px;height:8px;background:#6366f1;border-radius:50%;animation:typingBounce 1s infinite}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.5}30%{transform:translateY(-5px);opacity:1}}.ai-status-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:linear-gradient(135deg,#1e293bf2,#0f172af2);border-radius:10px;margin-top:1rem;font-size:.78rem;border:1px solid rgba(99,102,241,.3)}.status-left{display:flex;align-items:center;gap:.5rem}.status-icon{font-size:.6rem}.status-name{font-weight:600;color:#e2e8f0}.status-model{color:#94a3b8;padding:2px 8px;background:#64748b33;border-radius:4px}.status-right{display:flex;align-items:center;gap:.5rem}.privacy-badge{color:#4ade80;font-size:.7rem}.settings-btn-inline{background:#6366f133;border:1px solid rgba(99,102,241,.3);border-radius:6px;padding:4px 8px;cursor:pointer;font-size:.8rem}.chat-input-container .define-input-area{margin:0;background:transparent;border-radius:0;padding:.65rem}.define-input-area .chat-input-form{display:flex;gap:.75rem;padding:0;background:transparent;border-top:none}.define-input-area .chat-input-form textarea{flex:1;background:transparent;border:none;border-radius:0;padding:.85rem 1rem;color:#18181b;font-size:.95rem;resize:none;outline:none;font-family:inherit;min-height:50px}.define-input-area .chat-input-form textarea:focus{outline:none}.define-input-area .chat-input-form textarea::-moz-placeholder{color:#a1a1aa}.define-input-area .chat-input-form textarea::placeholder{color:#a1a1aa}.define-input-area .chat-input-form button{background:#18181b;border:none;border-radius:50%;width:36px;height:36px;padding:0;color:#fff;font-size:1rem;cursor:pointer;transition:all .15s;display:flex;align-items:center;justify-content:center;margin-right:.5rem}.define-input-area .chat-input-form button:hover:not(:disabled){background:#27272a}.define-input-area .chat-input-form button:disabled{opacity:.3;cursor:not-allowed}.execution-log{position:fixed;bottom:0;left:0;right:0;background:#0a0f19fa;border-top:1px solid rgba(99,102,241,.3);overflow:hidden;transition:height .3s ease;font-family:monospace;font-size:11px;z-index:1000}.log-header{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:#6366f126;border-bottom:1px solid rgba(99,102,241,.2)}.log-title{color:#a5b4fc;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:12px}.log-size-buttons{display:flex;gap:4px}.log-size-buttons button{background:#6366f133;color:#a5b4fc;border:none;padding:2px 8px;border-radius:4px;font-size:10px;cursor:pointer}.log-size-buttons button.active{background:#6366f180}.clear-log{background:#ef444433;color:#fca5a5;border:none;padding:2px 8px;border-radius:4px;font-size:10px;cursor:pointer}.log-content{overflow-y:auto;padding:8px 0;height:calc(100% - 36px)}.log-entry{display:flex;padding:3px 16px;align-items:center}.log-entry.success{color:#4ade80}.log-entry.error{color:#f87171}.log-entry.system{color:#94a3b8}.log-entry.ai-call{color:#60a5fa}.log-entry.ai-response{color:#a78bfa}.log-time{color:#475569;margin-right:12px;min-width:70px}.log-message{font-weight:500;min-width:120px}.log-details{color:#64748b;margin-left:8px}.how-to-run{background:#10b9811a;border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:.75rem;margin-top:.75rem;font-size:.75rem;color:#a1a1aa}.how-to-run code{background:#ffffff1a;padding:2px 6px;border-radius:4px;font-family:monospace}.sandpack-wrapper{height:100%;min-height:300px}.sandpack-wrapper .sp-wrapper{height:100%!important}.project-item .item-meta{font-size:.65rem;color:#71717a;margin-left:auto}.solve-section{display:flex;flex-direction:column;height:100%}.execution-terminal{flex:1;display:flex;flex-direction:column;border-radius:12px;overflow:hidden;margin-bottom:1rem;min-height:300px;box-shadow:0 4px 20px #0000004d}.terminal-header{display:flex;align-items:center;padding:10px 14px;background:linear-gradient(180deg,#3d3d3d,#2d2d2d);border-bottom:1px solid #1a1a1a}.terminal-dots{display:flex;gap:6px;margin-right:12px}.terminal-dots .dot{width:10px;height:10px;border-radius:50%}.terminal-dots .dot.red{background:#ff5f56}.terminal-dots .dot.yellow{background:#ffbd2e}.terminal-dots .dot.green{background:#27ca40}.terminal-title{font-size:12px;color:#888;font-family:SF Mono,Monaco,Inconsolata,monospace;flex:1}.terminal-status{font-size:10px;padding:3px 8px;border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.terminal-status.live{background:#22c55e33;color:#22c55e;animation:pulse-live 2s infinite}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.6}}.terminal-body{flex:1;padding:16px;background:linear-gradient(180deg,#1a1a2e,#16162a);font-family:SF Mono,Monaco,Inconsolata,Fira Code,monospace;font-size:13px;overflow-y:auto;color:#a0a0a0}.terminal-waiting .terminal-body{display:flex;flex-direction:column}.terminal-line{display:flex;align-items:center;gap:8px;padding:6px 0}.terminal-line.dim{opacity:.6}.terminal-line.processing{color:#6366f1}.line-prefix{color:#22c55e;font-weight:600}.line-text{color:#e0e0e0}.cursor-blink{color:#6366f1;animation:cursor-blink 1s infinite}@keyframes cursor-blink{0%,50%{opacity:1}51%,to{opacity:0}}.terminal-divider{height:1px;background:linear-gradient(90deg,transparent,#333,transparent);margin:16px 0}.terminal-body.empty-state{display:flex;flex-direction:column;justify-content:flex-start;padding:16px!important;font-family:SF Mono,Monaco,Cascadia Code,monospace!important}.empty-visual,.empty-icon{display:none}.empty-text{display:flex;flex-direction:column;gap:8px}.empty-title{font-size:12px!important;font-weight:400!important;color:#4a4a4a;display:flex;align-items:center;gap:8px}.empty-title:before{content:"$";color:#22c55e;font-weight:600}.empty-desc{font-size:11px!important;color:#3a3a3a;padding-left:16px;border-left:2px solid #333;margin-left:4px}.terminal-active .terminal-body{padding:12px}.terminal-step{padding:10px 12px;margin-bottom:8px;background:#ffffff05;border-radius:8px;border-left:3px solid transparent;transition:all .2s ease}.terminal-step.running{border-left-color:#6366f1;background:#6366f11a}.terminal-step.done{border-left-color:#22c55e}.terminal-step.error{border-left-color:#ef4444;background:#ef44441a}.step-line{display:flex;align-items:center;gap:10px}.step-timestamp{font-size:10px;color:#52525b;font-family:monospace;min-width:65px}.step-status-icon{font-size:12px;width:16px;text-align:center}.step-status-icon.running{color:#6366f1;animation:spin 1s linear infinite}.step-status-icon.done{color:#22c55e}.step-status-icon.error{color:#ef4444}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.terminal-step .step-action{font-weight:600;color:#e0e0e0;font-size:12px}.step-detail-line{display:flex;align-items:flex-start;gap:8px;margin-top:6px;padding-left:75px}.detail-prefix{color:#6366f1;font-weight:600}.detail-text{color:#888;font-size:11px;line-height:1.4}.step-meta-line{display:flex;gap:12px;margin-top:6px;padding-left:75px;font-size:10px}.meta-duration,.meta-tokens{color:#52525b;background:#ffffff0d;padding:2px 6px;border-radius:4px}.step-spinner{width:14px;height:14px;border:2px solid rgba(99,102,241,.3);border-top-color:#6366f1;border-radius:50%;animation:stepSpin .8s linear infinite}@keyframes stepSpin{to{transform:rotate(360deg)}}.step-content{flex:1;min-width:0}.step-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.step-action{font-weight:600;color:#e2e8f0;font-size:.85rem}.step-time{font-size:.7rem;color:#64748b;font-family:monospace}.step-detail{font-size:.8rem;color:#94a3b8;line-height:1.4}.step-meta{font-size:.7rem;color:#64748b;margin-top:.25rem}.code-preview{background:#0f172acc;border-radius:12px;border:1px solid rgba(99,102,241,.2);overflow:hidden;flex:1;display:flex;flex-direction:column;min-height:200px}.preview-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#1e293bcc;border-bottom:1px solid rgba(99,102,241,.2)}.file-tabs{display:flex;gap:.25rem;flex-wrap:wrap}.file-tab{padding:.4rem .75rem;background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:6px;color:#94a3b8;font-size:.75rem;cursor:pointer;transition:all .2s}.file-tab:hover{background:#6366f133}.file-tab.active{background:#6366f14d;border-color:#6366f180;color:#e2e8f0}.preview-tab{background:#22c55e1a;border-color:#22c55e4d;color:#4ade80}.preview-tab.active{background:#22c55e33}.download-btn{padding:.4rem .75rem;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:6px;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer}.preview-content{flex:1;overflow:auto}.code-block{margin:0;padding:1rem;font-size:.8rem;line-height:1.5;color:#a5b4fc;overflow:auto;height:100%;background:transparent}.projects-section{display:flex;flex-direction:column;height:100%}.projects-list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem;padding:.5rem 0}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;color:#71717a}.projects-empty-icon{font-size:2.5rem;margin-bottom:.75rem;opacity:.5}.projects-empty-hint{font-size:.8rem;margin-top:.25rem;color:#52525b}.project-card{background:#1e293bcc;border:1px solid rgba(99,102,241,.2);border-radius:12px;padding:1rem;cursor:pointer;transition:all .2s}.project-card:hover{border-color:#6366f166;transform:translateY(-2px)}.project-card.active{border-color:#6366f199;background:#6366f11a}.project-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.project-status{font-size:.9rem}.project-title{font-weight:600;color:#e2e8f0;font-size:.9rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-meta{display:flex;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.meta-item{font-size:.7rem;color:#94a3b8;background:#64748b33;padding:.2rem .5rem;border-radius:4px}.project-footer{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:#64748b}.projects-summary{display:flex;justify-content:space-around;padding:1rem;margin-top:auto;background:#6366f11a;border-radius:12px;border:1px solid rgba(99,102,241,.2)}.summary-stat{text-align:center}.stat-value{display:block;font-size:1.2rem;font-weight:700;color:#e2e8f0}.stat-label{font-size:.7rem;color:#71717a;text-transform:uppercase;letter-spacing:.5px}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.online{background:#22c55e;box-shadow:0 0 6px #22c55e80}.status-dot.offline{background:#ef4444}.status-agent{font-weight:600;color:#e2e8f0}.status-privacy{color:#4ade80;font-size:.75rem}.status-cost{color:#fbbf24;font-size:.75rem}.define-chat-area{flex:1;background:transparent;border-radius:0;padding:1rem;margin-bottom:0;min-height:200px;max-height:none;overflow-y:auto;border:none}.define-messages{display:flex;flex-direction:column;gap:1.25rem;height:100%;min-height:100px;max-width:700px;margin:0 auto}.define-msg{padding:0;border-radius:0;font-size:.78rem;line-height:1.6;max-width:100%}.define-msg.user{background:transparent;color:#18181b;text-align:right;padding:.5rem 1rem;background:#f4f4f5;border-radius:20px;display:inline-block;margin-left:auto;max-width:-moz-fit-content;max-width:fit-content}.define-msg.assistant{background:transparent;color:#27272a;margin-right:0;border-radius:0;border-left:none;padding-left:0}.define-msg.processing{background:transparent;color:#71717a;border-left:none;font-style:italic}.msg-text{font-size:.78rem;line-height:1.6;word-break:break-word}.solve-section{display:flex;flex-direction:column;height:100%;padding:1rem 1.5rem!important}.solve-section .section-title,.solve-section .section-subtitle{flex-shrink:0}.solve-terminal{flex:1;display:flex;flex-direction:column;background:#1a1a2e;border-radius:12px;overflow:hidden;min-height:300px}.solve-terminal-header{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;background:#16162a;border-bottom:1px solid #2a2a4a}.solve-dots{font-size:.6rem;color:#888;letter-spacing:2px}.solve-title{font-family:Monaco,Consolas,monospace;font-size:.8rem;color:#888;flex:1;text-align:center}.solve-live{font-size:.7rem;color:#4ade80;animation:pulse 1.5s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.solve-terminal-body{flex:1;padding:1rem;font-family:Monaco,Consolas,monospace;font-size:.85rem;overflow-y:auto;color:#e0e0e0}.solve-empty{display:flex;align-items:center;gap:.5rem;color:#666;padding:.5rem}.solve-waiting{color:#666}.solve-steps{display:flex;flex-direction:column;gap:.5rem}.solve-step{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;padding:.5rem .75rem;background:#ffffff08;border-radius:6px;border-left:3px solid transparent}.solve-step.running{border-left-color:#fbbf24}.solve-step.processing{border-left-color:#6366f1;animation:pulse 1s infinite}.step-icon{width:20px;text-align:center}.step-time{font-size:.7rem;color:#666;min-width:70px}.step-text{color:#e0e0e0;flex:1;min-width:150px}.step-detail{font-size:.75rem;color:#888;width:100%;padding-left:26px;margin-top:.25rem}.step-duration{font-size:.7rem;color:#4ade80;margin-left:auto}.projects-section{display:flex;flex-direction:column;height:100%;padding:1rem 1.5rem!important}.projects-section .section-title,.projects-section .section-subtitle{flex-shrink:0}.projects-grid{flex:1;display:flex;flex-direction:column;gap:.75rem;overflow-y:auto;padding-right:.5rem}.projects-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:200px;color:#888;gap:.5rem}.projects-empty span{font-size:2rem}.proj-card{background:#fff;border:1px solid #e8e8e8;border-radius:10px;padding:1rem;cursor:pointer;transition:all .2s}.proj-card:hover{border-color:#2d5a5a;box-shadow:0 2px 8px #00000014}.proj-card.active{border-color:#2d5a5a;background:#f8fafa;box-shadow:0 2px 12px #2d5a5a26}.proj-status{float:right;font-size:1rem}.proj-title{font-weight:600;font-size:.95rem;color:#333;margin-bottom:.5rem;padding-right:2rem}.proj-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.proj-meta span{font-size:.75rem;color:#666;background:#f5f5f5;padding:.2rem .5rem;border-radius:4px}.proj-footer{display:flex;justify-content:space-between;font-size:.7rem;color:#999;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f0f0f0}.projects-summary{display:flex;justify-content:space-around;padding:1rem;margin-top:auto;background:#f8f9fa;border-radius:10px}.summary-stat{display:flex;flex-direction:column;align-items:center}.summary-stat .stat-value{font-size:1.25rem;font-weight:700;color:#2d5a5a}.summary-stat .stat-label{font-size:.7rem;color:#888;text-transform:uppercase}.projects-accordion{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;flex:1}.proj-accordion{background:#fff;border:1px solid #e5e5e5;border-radius:8px;overflow:hidden;transition:all .2s}.proj-accordion.expanded{border-color:#2d5a5a;box-shadow:0 2px 12px #2d5a5a1f}.proj-header{display:flex;align-items:center;gap:.5rem;padding:.75rem 1rem;cursor:pointer;background:#fafafa;border-bottom:1px solid transparent}.proj-accordion.expanded .proj-header{background:#f0f7f7;border-bottom-color:#e5e5e5}.proj-toggle{font-size:.7rem;color:#888;width:14px}.proj-status-icon{font-size:.9rem}.proj-name{flex:1;font-weight:600;font-size:.85rem;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-time{font-size:.7rem;color:#999}.proj-body{padding:1rem;display:flex;flex-direction:column;gap:1rem}.proj-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.proj-info-item{display:flex;flex-direction:column;align-items:center;padding:.5rem;background:#f8f9fa;border-radius:6px}.info-label{font-size:.65rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:.8rem;font-weight:600;color:#333}.proj-files-section{border:1px solid #e5e5e5;border-radius:8px;overflow:hidden}.proj-files-header{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#f5f5f5;border-bottom:1px solid #e5e5e5}.proj-file-tabs{display:flex;gap:.25rem;flex-wrap:wrap}.proj-file-tab{padding:.35rem .6rem;font-size:.7rem;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;transition:all .15s}.proj-file-tab:hover{border-color:#2d5a5a}.proj-file-tab.active{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.proj-file-tab.preview-tab{background:#e8f5e9;border-color:#4caf50;color:#2e7d32}.proj-file-tab.preview-tab.active{background:#4caf50;color:#fff}.proj-download-btn{padding:.4rem .8rem;font-size:.75rem;background:#2d5a5a;color:#fff;border:none;border-radius:4px;cursor:pointer;transition:background .15s}.proj-download-btn:hover{background:#1d4a4a}.proj-preview-area{max-height:300px;overflow:auto}.proj-code-block{margin:0;padding:1rem;background:#1e1e1e;color:#d4d4d4;font-family:Monaco,Consolas,monospace;font-size:.75rem;line-height:1.5;overflow-x:auto}.proj-code-block code{white-space:pre}.proj-steps-section{border:1px solid #e5e5e5;border-radius:8px;overflow:hidden}.proj-steps-title{padding:.5rem .75rem;background:#f5f5f5;font-size:.75rem;font-weight:600;color:#666;border-bottom:1px solid #e5e5e5}.proj-steps-list{padding:.5rem;background:#fafafa}.proj-step-item{display:flex;align-items:center;gap:.5rem;padding:.35rem .5rem;font-size:.75rem}.proj-step-icon{width:16px;text-align:center;color:#4ade80}.proj-step-text{flex:1;color:#555}.proj-step-time{font-size:.65rem;color:#999}.proj-action-bar{display:flex;justify-content:space-between;align-items:center;padding:.5rem;background:#f8f8f8;border-bottom:1px solid #e5e5e5}.proj-action-tabs{display:flex;gap:.5rem}.proj-action-btn{padding:.5rem 1rem;font-size:.8rem;font-weight:500;background:#fff;border:1px solid #ddd;border-radius:6px;cursor:pointer;transition:all .15s}.proj-action-btn:hover{background:#f0f0f0}.proj-action-btn.active{background:#2d5a5a;color:#fff;border-color:#2d5a5a}.proj-content-area{min-height:300px;max-height:400px;overflow:hidden}.proj-preview-container{height:350px;background:#1e1e1e}.preview-error{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem;text-align:center;color:#888}.preview-error-icon{font-size:2.5rem;margin-bottom:.75rem}.preview-error-title{font-size:1rem;font-weight:600;color:#ccc;margin-bottom:.5rem}.preview-error-msg{font-size:.75rem;line-height:1.5;color:#888;margin-bottom:1rem}.preview-error-hint{font-size:.7rem;color:#4fc3f7;padding:.5rem 1rem;background:#4fc3f71a;border-radius:4px}.proj-preview-container .sp-wrapper{height:100%!important}.proj-code-editor{display:flex;height:350px;background:#1e1e1e}.proj-file-tree{width:160px;background:#252526;border-right:1px solid #3c3c3c;overflow-y:auto}.proj-file-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;cursor:pointer;transition:background .15s;border-left:2px solid transparent}.proj-file-item:hover{background:#2a2d2e}.proj-file-item.active{background:#37373d;border-left-color:#4fc3f7}.proj-file-item .file-icon{font-size:.9rem}.proj-file-item .file-name{font-size:.75rem;color:#ccc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.proj-file-item.active .file-name{color:#fff}.proj-code-content{flex:1;display:flex;flex-direction:column;overflow:hidden}.proj-code-header{padding:.5rem 1rem;background:#3c3c3c;color:#ccc;font-size:.75rem;font-family:Monaco,Consolas,monospace;border-bottom:1px solid #4a4a4a}.proj-code-content .proj-code-block{flex:1;margin:0;overflow:auto;border-radius:0}.solve-terminal{flex:1;display:flex;flex-direction:column;background:#1a1a2e;border-radius:6px;overflow:hidden}.solve-terminal-header{display:flex;align-items:center;gap:.4rem;padding:.35rem .6rem;background:#16162a;border-bottom:1px solid #2a2a4a}.solve-dots{font-size:.4rem;color:#555;letter-spacing:1px}.solve-title{font-family:Monaco,Consolas,monospace;font-size:.65rem;color:#555;flex:1;text-align:center}.solve-live{font-size:.6rem;color:#4ade80;animation:pulse 1.5s infinite}.solve-terminal-body{flex:1;padding:.5rem;font-family:Monaco,Consolas,monospace;font-size:.7rem;overflow-y:auto;color:#bbb}.solve-empty{display:flex;align-items:center;gap:.4rem;color:#555;padding:.25rem}.solve-prompt{color:#4ade80;font-weight:700}.solve-waiting{color:#555;font-size:.7rem}.solve-steps{display:flex;flex-direction:column;gap:2px}.solve-step{display:flex;align-items:center;gap:.3rem;padding:.2rem .4rem;border-left:2px solid transparent;font-size:.68rem}.solve-step.done{border-left-color:#4ade80}.solve-step.running{border-left-color:#fbbf24;background:#fbbf240d}.solve-step.error{border-left-color:#ef4444}.solve-step.processing{border-left-color:#6366f1}.step-icon{width:12px;text-align:center;font-size:.6rem}.step-icon.done{color:#4ade80}.step-icon.running{color:#fbbf24}.step-icon.error{color:#ef4444}.step-time{font-size:.55rem;color:#444;min-width:48px}.step-text{color:#aaa;flex:1}.step-detail{font-size:.6rem;color:#666}.step-duration{font-size:.55rem;color:#4ade80}
