:root{--ink:#17152d;--muted:#716d82;--v:#6545f5;--p:#f0ecff;--line:#e7e3ef;--bg:#f8f8fc;--green:#20b967}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,textarea{font:inherit}button{cursor:pointer;border:0}.wrap{width:min(1400px,calc(100% - 80px));margin:auto}.logo{display:flex;align-items:center;gap:9px;background:none;font-size:23px;font-weight:850;color:inherit}.logo i{display:grid;place-items:center;width:37px;height:37px;border:2px solid var(--v);border-radius:12px;color:var(--v);font-style:normal}.top{height:88px;display:flex;align-items:center;justify-content:space-between}.top nav{display:flex;gap:45px}.top a{color:#575268;text-decoration:none}.top>div{display:flex;gap:8px}.btn{min-height:48px;padding:0 22px;border-radius:10px;font-weight:750}.primary{background:linear-gradient(135deg,#6646f5,#8658ff);color:#fff;box-shadow:0 9px 25px #6d4cf333}.secondary{background:#fff;border:1px solid #dcd7e9;color:var(--ink)}.ghost{background:none}.hero{min-height:740px;display:grid;grid-template-columns:42% 58%;gap:40px;align-items:center;padding:40px 0 85px}.hero label,.intro label,.wizard label,.install label{display:inline-block;color:var(--v);background:var(--p);font-size:12px;font-weight:800;letter-spacing:.12em;border-radius:99px;padding:9px 16px}.hero h1{font-size:clamp(54px,5vw,78px);line-height:.98;letter-spacing:-4px;margin:25px 0}.hero>div>p{font-size:20px;line-height:1.6;color:#5f5a70}.actions{display:flex;gap:13px;margin:32px 0}.hero small{color:var(--muted)}.heroMock{height:580px;position:relative;background:#fff;border:1px solid #ddd7ed;border-radius:18px;box-shadow:0 25px 80px #5038b422}.miniApp{display:grid;grid-template-columns:150px 1fr;height:100%;overflow:hidden}.miniApp>aside{padding:20px 12px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:6px}.miniApp .logo{font-size:15px;margin-bottom:20px}.miniApp .logo i{width:26px;height:26px}.miniApp aside span,.miniApp aside b{font-size:11px;padding:11px}.miniApp aside b{background:var(--p);color:var(--v);border-radius:7px}.miniApp>main{padding:18px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.metrics article{padding:14px;border:1px solid var(--line);border-radius:10px}.metrics span{font-size:9px;color:#999}.metrics b{display:block;font-size:23px;margin-top:7px}.graph{height:220px;border:1px solid var(--line);border-radius:10px;padding:16px;margin:12px 0}.graph i,.chart>i{display:block;height:150px;margin-top:15px;background:linear-gradient(166deg,transparent 47%,var(--v) 48%,var(--v) 50%,transparent 51%)}.chat{position:absolute;right:-28px;bottom:-38px;width:280px;border:1px solid #d9d4e8;background:#fff;border-radius:12px;box-shadow:0 18px 55px #32254d33;overflow:hidden;z-index:3}.chat header{padding:18px;background:linear-gradient(135deg,#6646f5,#8658ff);color:#fff;font-size:12px}.chat p{background:#f0eff4;padding:10px;border-radius:11px;margin:12px;max-width:75%;font-size:10px}.chat .mine{margin-left:auto;background:var(--v);color:#fff}.chat input{margin:10px;width:calc(100% - 20px);border:1px solid var(--line);padding:10px;border-radius:8px}.section{padding:105px 0}.soft{background:#faf9fd}.intro{text-align:center;margin-bottom:50px}.intro h2{font-size:48px;letter-spacing:-2px;margin:18px}.featureGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.featureGrid article,.steps article,.priceGrid article{background:#fff;border:1px solid var(--line);border-radius:15px}.featureGrid article{padding:29px}.featureGrid i{display:grid;place-items:center;width:45px;height:45px;border-radius:12px;background:var(--p);color:var(--v);font-style:normal}.featureGrid p,.steps p{color:var(--muted);line-height:1.6}.steps,.priceGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.steps article,.priceGrid article{padding:28px}.steps b{color:var(--v)}.steps h3{margin-top:45px}.priceGrid{grid-template-columns:repeat(3,1fr)}.priceGrid strong{display:block;font-size:38px;margin:25px 0}.priceGrid .btn{width:100%}
.auth{min-height:100vh;display:grid;grid-template-columns:42% 58%}.auth>aside{padding:50px 65px;background:linear-gradient(145deg,#1d1741,#5834d9);color:#fff;display:flex;flex-direction:column;justify-content:space-between}.auth>aside>div{max-width:440px}.auth aside h1{font-size:44px;line-height:1.1}.auth aside p{color:#d3cced;font-size:18px;line-height:1.6}.auth>main{display:grid;place-items:center;position:relative}.x{position:absolute;right:35px;top:25px;background:none;font-size:30px}.auth form{width:min(430px,calc(100% - 40px));display:flex;flex-direction:column;gap:15px}.auth form h1{font-size:38px;margin:0}.auth form>p{color:var(--muted)}.google{height:50px;background:#fff;border:1px solid var(--line);border-radius:9px}.auth hr{width:100%;border:0;border-top:1px solid var(--line)}.auth label,.form label,.controls label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650}.auth input,.form input,.form textarea,.controls input,.controls textarea{height:48px;border:1px solid #ddd9e7;border-radius:8px;padding:0 13px}.plain,.wizard{min-height:100vh;background:#fbfbfe}.plain>header,.wizard>header{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 5%}.plain>main{max-width:1100px;margin:auto;padding:60px 25px}.pageHead{display:flex;align-items:end;justify-content:space-between;margin-bottom:26px}.pageHead h1{font-size:30px;margin:0 0 6px}.pageHead p{margin:0;color:var(--muted)}.projectGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.projectGrid>button,.projectGrid>article{min-height:270px;background:#fff;border:1px dashed #cfc9dc;border-radius:15px;padding:25px}.projectGrid>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}.projectGrid>button i{font-size:32px;color:var(--v)}.projectGrid>article{border-style:solid;cursor:pointer}.projectGrid article>span{display:flex;justify-content:space-between}.projectGrid article>span i{display:grid;place-items:center;width:48px;height:48px;background:var(--v);color:#fff;border-radius:13px;font-style:normal}.projectGrid em{font-style:normal;color:var(--green);font-size:10px}.projectGrid article>div{display:flex;gap:45px;margin-top:35px}.projectGrid article>div b{font-size:20px}.projectGrid article small{display:block;color:var(--muted);font-size:10px}.wizard>main{max-width:720px;margin:auto;padding:90px 25px;text-align:center}.progress{color:var(--v);font-weight:800;margin-bottom:30px}.wizard h1{font-size:38px}.wizard main>p{font-size:17px;color:var(--muted);line-height:1.6}.url{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #dcd7e8;border-radius:12px;padding:8px;margin:38px 0 20px}.url input{flex:1;border:0;outline:0}.scan{padding:22px;text-align:left;border:1px solid var(--line);border-radius:12px;background:#fff;margin:30px 0}.scan b{display:flex;justify-content:space-between}.scan>i{display:block;height:7px;background:#eee;border-radius:9px;margin:16px 0}.scan>i em{display:block;width:68%;height:100%;background:var(--v);border-radius:9px}
.shell{min-height:100vh;display:grid;grid-template-columns:240px 1fr;background:var(--bg)}.shell>aside{height:100vh;position:sticky;top:0;background:#19162d;color:#aaa6bd;padding:23px 15px;display:flex;flex-direction:column}.shell>aside>.logo{color:#fff;padding:0 10px}.project-switcher{position:relative}.project-menu,.profile-menu{position:absolute;z-index:20;background:#fff;border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 8px 24px #17152d22}.project-menu{left:0;right:0;top:58px}.project-menu button,.profile-menu button{display:flex;flex-direction:column;gap:3px;width:100%;min-height:38px;padding:8px;border-radius:7px;background:#fff;text-align:left;color:var(--ink)}.project-menu button:hover,.project-menu button.selected,.profile-menu button:hover{background:var(--p);color:var(--v)}.project-menu small{color:var(--muted);font-size:10px}.project-menu .create-project{border-top:1px solid var(--line);margin-top:4px;color:var(--v)}.profile-menu{right:28px;top:52px;min-width:140px}.profile-menu button{display:block}.project{display:flex;align-items:center;gap:9px;padding:11px;margin:26px 0 18px;background:#262139;border-radius:10px}.project>i{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:var(--v);color:#fff;font-style:normal}.project span{display:flex;flex-direction:column;flex:1}.project b{font-size:11px;color:#fff}.project small{font-size:9px}.shell>aside nav{display:flex;flex-direction:column;gap:4px;flex:1}.shell>aside button{background:none;color:#aaa6bd;text-align:left;height:43px;border-radius:8px;padding:0 12px}.shell>aside button.active{background:var(--v);color:#fff}.shell>main>header{height:64px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:0 28px;gap:16px}.shell>main>header span{flex:1}.shell>main>header button{background:none}.shell>main>header b{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--p);color:var(--v)}.workspace{padding:32px 35px 60px;max-width:1500px;margin:auto}.notice{display:flex;align-items:center;gap:13px;padding:16px;background:var(--p);border:1px solid #ddd5ff;border-radius:11px;margin-bottom:14px}.notice>i{display:grid;place-items:center;width:40px;height:40px;background:#dfd7ff;color:var(--v);border-radius:10px;font-style:normal}.notice span{display:flex;flex-direction:column;flex:1}.notice small{color:var(--muted);margin-top:3px}.metricCards{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.metricCards article{padding:19px;color:var(--muted);font-size:11px}.metricCards b{display:block;color:var(--ink);font-size:27px;margin:14px 0 7px}.metricCards em{color:var(--green);font-style:normal}.two{display:grid;grid-template-columns:2fr 1fr;gap:13px;margin-top:13px}.chart,.quick,.recent{padding:20px}.chart>i{height:200px;background:repeating-linear-gradient(#fff,#fff 48px,#eee 49px),linear-gradient(168deg,transparent 47%,var(--v) 48%,var(--v) 50%,transparent 51%)}.quick{display:flex;flex-direction:column}.quick button{background:none;text-align:left;padding:15px 0;border-top:1px solid var(--line)}.recent{margin-top:13px}.table>span{display:grid;grid-template-columns:1fr 2fr .8fr;border-top:1px solid #f0edf4;padding:13px 5px;font-size:10px}.table i{font-style:normal}.summary{display:flex;align-items:center;gap:35px;padding:22px;background:linear-gradient(120deg,#251c4b,#6542dd);color:#fff;border-radius:13px}.summary span{flex:1}.summary strong{float:right}.tabs{padding:20px 0 13px;border-bottom:1px solid var(--line);color:var(--muted)}.tabs b{background:#eae6f3;padding:3px 7px;border-radius:99px}.sourceTable{padding:15px;margin-top:13px}.sourceTable>input{height:38px;border:1px solid var(--line);border-radius:8px;padding:0 12px}.sourceTable>div{display:grid;grid-template-columns:25px 35px 1fr .6fr .5fr 25px;align-items:center;border-top:1px solid #f0edf4;min-height:60px;font-size:10px}.sourceTable>div>i{color:var(--v);font-style:normal}.sourceTable>div span{display:flex;flex-direction:column}.sourceTable small{color:var(--muted)}.sourceTable em{color:var(--green);font-style:normal}.sourceTable button{background:none}.form{padding:25px;display:flex;flex-direction:column;gap:14px}.form h3{margin:10px 0 0}.form p{color:var(--muted);font-size:11px}.form textarea{height:110px;padding:12px}.tone{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.tone button{display:grid;grid-template-columns:30px 1fr;text-align:left;background:#fff;border:1px solid var(--line);padding:14px;border-radius:9px}.tone button.selected,.controls button.selected{border-color:var(--v);background:#faf9ff}.tone small{display:block;color:var(--muted)}.rule{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:13px 0}.rule span{display:flex;flex-direction:column}.rule small{color:var(--muted);font-size:9px}.toggle{width:38px;height:22px;border-radius:99px;background:#ccc;padding:3px}.toggle i{display:block;width:16px;height:16px;border-radius:50%;background:#fff}.toggle.on{background:var(--v)}.toggle.on i{transform:translateX(16px)}.widgetLayout{display:grid;grid-template-columns:400px 1fr;gap:14px}.controls{padding:22px}.controls label{margin:15px 0}.controls textarea{height:75px;padding:10px}.controls>button{width:47%;height:42px;background:#fff;border:1px solid var(--line);border-radius:8px}.browser{min-height:620px;background:#fff;border:20px solid #eeedf2;border-radius:14px;position:relative;padding:25px}.browser>header{position:absolute;left:0;right:0;top:0;background:#eee;padding:8px;color:#999}.browser>nav{margin-top:25px;display:flex;justify-content:space-between}.browser>h2{margin-top:100px}.testLayout{display:grid;grid-template-columns:1fr 280px;gap:13px}.testChat{height:650px;display:flex;flex-direction:column}.testChat>header{padding:17px;border-bottom:1px solid var(--line);display:flex;gap:10px}.testChat>header i{color:var(--v)}.testChat>header b{display:flex;flex-direction:column}.testChat>header small{color:var(--green);font-size:9px}.testChat>main{flex:1;padding:25px}.testChat main p{max-width:70%;background:#f1eff4;border-radius:12px;padding:13px;font-size:11px}.testChat main p.you{background:var(--v);color:#fff;margin-left:auto}.testChat>footer,.dialog>footer{display:flex;padding:12px;border-top:1px solid var(--line)}.testChat footer input,.dialog footer input{flex:1;border:1px solid var(--line);border-radius:8px;padding:0 12px}.testChat footer button,.dialog footer button{width:40px;height:40px;background:var(--v);color:#fff;border-radius:8px;margin-left:8px}.prompts{padding:20px}.prompts button{display:block;width:100%;text-align:left;background:none;padding:13px 0;border-top:1px solid var(--line)}.ready{padding:17px;background:#e7f8ef;color:var(--green);border-radius:10px}.install{padding:26px}.install label{margin-top:10px}.install pre{background:#201c35;color:#ddd6ef;padding:18px;border-radius:9px;overflow:auto}.dialogLayout{display:grid;grid-template-columns:300px 1fr;gap:12px;height:680px}.list{overflow:auto}.list>button{width:100%;display:flex;gap:9px;padding:14px;background:#fff;border-bottom:1px solid var(--line);text-align:left}.list>button.selected{background:var(--p);box-shadow:inset 0 0 0 1px var(--v)}.list button>i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#eae6f5;font-style:normal}.list span{display:flex;flex-direction:column;flex:1}.list small{color:var(--muted)}.list em{font-size:8px;color:#999;font-style:normal}.dialog{display:flex;flex-direction:column}.dialog>header{padding:17px;display:flex;justify-content:space-between;border-bottom:1px solid var(--line)}.dialog header b{display:flex;flex-direction:column}.dialog header small{color:var(--muted)}.dialog header em{color:var(--green);font-style:normal}.dialog>main{flex:1;padding:25px}.dialog main p{max-width:65%;padding:13px;border-radius:12px;background:#f0eef4;font-size:11px}.dialog main .userMsg{margin-left:auto;background:var(--v);color:#fff}.donut{padding:20px}.donut>i{display:grid;place-items:center;width:145px;height:145px;margin:20px auto;border-radius:50%;background:conic-gradient(var(--v) 0 74%,#a99be4 74% 90%,#ef9d5a 90%);font-style:normal}.donut>i:before{content:"";position:absolute;width:100px;height:100px;background:#fff;border-radius:50%}.donut>i b{z-index:1;font-size:25px}.topics,.gaps{padding:20px}.topics p{display:grid;grid-template-columns:140px 1fr 40px;gap:9px;align-items:center;font-size:10px}.topics p>i{height:6px;background:#eee;border-radius:9px}.topics em{display:block;height:100%;background:var(--v);border-radius:9px}.gaps p{display:flex;justify-content:space-between;padding:11px 0;border-top:1px solid var(--line);font-size:10px}.gaps button{background:none;color:var(--v)}.settings{display:grid;grid-template-columns:210px 1fr;gap:20px;max-width:920px}.settings>nav{display:flex;flex-direction:column;gap:7px}.settings nav>*{padding:11px}.settings nav b{background:var(--p);color:var(--v);border-radius:8px}.settings>main{display:flex;flex-direction:column;gap:13px}
@media(max-width:1000px){.hero{grid-template-columns:1fr;text-align:center}.heroMock{display:none}.actions{justify-content:center}.featureGrid{grid-template-columns:repeat(2,1fr)}.metricCards{grid-template-columns:repeat(2,1fr)}.widgetLayout{grid-template-columns:340px 1fr}}
@media(max-width:720px){.wrap{width:calc(100% - 30px)}.top nav,.top .ghost{display:none}.hero h1{font-size:46px;letter-spacing:-2px}.featureGrid,.steps,.priceGrid,.projectGrid,.metricCards,.two,.widgetLayout,.testLayout,.dialogLayout,.settings{grid-template-columns:1fr}.section{padding:70px 0}.intro h2{font-size:37px}.auth{grid-template-columns:1fr}.auth>aside{display:none}.shell{grid-template-columns:1fr}.shell>aside{display:none}.workspace{padding:23px 15px}.pageHead{align-items:flex-start;flex-direction:column;gap:15px}.notice{flex-wrap:wrap}.summary{align-items:stretch;flex-direction:column}.sourceTable>div{grid-template-columns:25px 30px 1fr .6fr}.sourceTable>div>small,.sourceTable>div>button{display:none}.tone{grid-template-columns:1fr}.dialogLayout{height:auto}.list{max-height:260px}.dialog{min-height:560px}}

/* Runtime safety for long assistant names and destructive card actions. */
.project-switcher{min-width:0}
.project{min-width:0}
.project>span{min-width:0;overflow:hidden}
.project b,.project small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.project-menu{width:min(360px,calc(100vw - 32px));max-height:min(420px,calc(100vh - 110px));overflow:auto;box-sizing:border-box}
.project-menu button{min-width:0;white-space:normal;overflow-wrap:anywhere}
.project-menu button strong{display:block;max-width:100%;line-height:1.25;overflow-wrap:anywhere}
.project-menu .create-project{display:flex;flex-direction:row;align-items:center;gap:6px;min-height:42px;white-space:nowrap}
.project-card-head{align-items:flex-start;gap:8px}
.project-card-head>em{margin-left:auto;white-space:nowrap}
.project-delete{flex:0 0 auto;border:1px solid #ead7d7;border-radius:7px;background:#fff6f6;color:#b42318;font-size:11px;padding:7px 9px;cursor:pointer}
.project-delete:hover{background:#ffe9e9;border-color:#d99}
.project-delete:focus-visible{outline:3px solid #f0a4a4;outline-offset:2px}
.runtime-toast{position:fixed;z-index:100;left:50%;bottom:24px;max-width:min(460px,calc(100% - 32px));padding:12px 16px;border-radius:9px;background:#201c35;color:#fff;font:600 13px system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;opacity:0;transform:translate(-50%,12px);transition:opacity .2s ease,transform .2s ease}.runtime-toast.show{opacity:1;transform:translate(-50%,0)}
.auth-switch{min-height:40px;background:none;color:var(--v);font-weight:750}.auth-error{min-height:18px;margin:0;color:#b42318!important;font-size:13px!important;line-height:1.4}.auth [hidden]{display:none!important}.empty-state{margin:0;padding:22px;color:var(--muted);font-size:13px;line-height:1.55;text-align:center}.btn:disabled,button:disabled{opacity:.58;cursor:not-allowed}.typing{color:var(--muted)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #b9a9ff;outline-offset:3px}.projectGrid>article:focus-visible{outline:3px solid #b9a9ff;outline-offset:3px}.sourceTable .empty-state,.list .empty-state,.dialog .empty-state{display:grid;place-items:center;min-height:180px}.sourceTable>div button{min-width:34px;min-height:34px;border-radius:8px}.controls input[type=color]{padding:4px}.testChat main{overflow:auto}.testChat main p{overflow-wrap:anywhere}.dialog main{overflow:auto}.dialog main p{overflow-wrap:anywhere}.shell>aside button,.btn,.projectGrid>article,.projectGrid>button,.tone button,.controls>button,.prompts button,.quick button{transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.btn:active:not(:disabled),.projectGrid>article:active,.projectGrid>button:active,.tone button:active,.controls>button:active,.prompts button:active,.quick button:active{transform:scale(.96)}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
.all-banner{position:sticky;z-index:999;top:0;width:100%;height:68px;padding:0 36px;background:#17152d;color:#fff;display:flex;align-items:center;gap:22px;box-shadow:0 5px 20px #17152d44}.all-banner b{font-size:20px}.all-banner span{color:#c9c3dc}.import-board{width:3040px;padding:60px 80px 80px;background:#ecebf2;display:grid;grid-template-columns:repeat(2,1440px);gap:100px 80px;align-items:start}.import-screen>h2{margin:0 0 18px;font-size:28px;color:#302b45}.import-frame{width:1440px;min-height:900px;background:#fff;overflow:hidden;box-shadow:0 12px 36px #2b25431a}.import-frame>.auth,.import-frame>.plain,.import-frame>.wizard,.import-frame>.shell{min-height:900px;height:900px}.import-frame>.shell>aside{height:900px;position:relative}.import-frame>.top,.import-frame>main{width:100%}.import-frame .wrap{max-width:1360px}
.position-controls{display:grid;gap:14px;margin:18px 0}.position-group{border:0;padding:0;margin:0}.position-group legend{padding:0;margin-bottom:7px;color:var(--muted);font-size:11px;font-weight:750}.position-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.position-grid button{min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:12px;font-weight:700}.position-grid button.selected{border-color:var(--v);background:#faf9ff;color:var(--v)}
.launcher-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 18px}.launcher-style-grid button{min-height:42px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--ink);font-size:12px;font-weight:700}.launcher-style-grid button.selected{border-color:var(--v);background:#faf9ff;color:var(--v)}
