:root{--mint-50: #effaf6;--mint-100: #d7f2e9;--mint-300: #7fe1c9;--mint-500: #28c5a5;--mint-600: #17a98d;--teal-700: #0f7b6a;--teal-900: #172f2a;--lime-100: #dff2cf;--yellow-100: #fff1bd;--yellow-700: #8d6800;--canvas: #dfecea;--surface: #f7fbf9;--panel: rgba(255, 255, 255, .9);--line: #dbe8e3;--muted: #728681;--text: #213b36;--shadow: 0 22px 70px rgba(28, 63, 55, .09);--font: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "JetBrains Mono", "SFMono-Regular", Consolas, monospace}*{box-sizing:border-box}body{min-width:320px;margin:0;color:var(--text);font-family:var(--font);font-size:14px;background:radial-gradient(circle at 78% 0%,rgba(40,197,165,.2),transparent 32%),radial-gradient(circle at 12% 12%,rgba(223,242,207,.86),transparent 30%),linear-gradient(90deg,rgba(15,123,106,.08) 1px,transparent 1px),linear-gradient(rgba(15,123,106,.06) 1px,transparent 1px),var(--canvas);background-size:auto,auto,34px 34px,34px 34px,auto}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.64}a{color:inherit;text-decoration:none}h1,h2,p{margin:0}h1{font-size:28px;line-height:1;letter-spacing:0}h2{font-size:20px;line-height:1;letter-spacing:0}.app-shell{width:min(1440px,calc(100% - 32px));min-height:calc(100vh - 32px);margin:16px auto;overflow:hidden;border:1px solid rgba(255,255,255,.74);border-radius:30px;background:#f6faf8d6;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.auth-shell{display:grid;place-items:center;padding:22px}.auth-card{display:grid;width:min(420px,100%);gap:14px;justify-items:start;padding:26px}.auth-card .brand-mark{width:42px;height:42px}.auth-card h1{font-size:34px}.auth-copy{color:var(--muted);font-size:16px;line-height:1.5}.auth-login{margin-top:8px}.topbar,.topbar-actions,.brand,.panel-head,.preview-actions,.button-row,.status-pill,.badge,.btn,.icon-link{display:flex;align-items:center}.topbar{justify-content:space-between;gap:16px;min-height:82px;padding:18px 22px;border-bottom:1px solid rgba(219,232,227,.78)}.brand{gap:12px}.brand-mark{display:grid;width:34px;height:34px;place-items:center;border-radius:8px;color:#fff;font-weight:900;background:linear-gradient(145deg,var(--mint-500),var(--teal-700))}.eyebrow{color:var(--mint-600);font-size:11px;font-weight:900;letter-spacing:0;text-transform:uppercase}.topbar-actions{flex:1 1 auto;flex-wrap:wrap;justify-content:flex-end;gap:10px;min-width:0}.user-pill{max-width:220px}.topbar-text{min-width:0;overflow:hidden;text-overflow:ellipsis}.status-pill,.badge{gap:7px;max-width:100%;min-width:0;min-height:30px;padding:0 10px;border-radius:999px;color:var(--teal-700);font-size:12px;font-weight:800;background:var(--mint-100);white-space:nowrap}.topbar-actions .status-pill{overflow:hidden}.badge{overflow:hidden;text-overflow:ellipsis}.badge svg,.status-pill svg{flex:0 0 auto}.badge.success{color:#fff;background:var(--teal-700)}.workspace{display:grid;grid-template-columns:minmax(320px,420px) minmax(0,1fr);gap:14px;min-height:calc(100vh - 115px);padding:14px}.projects-page{display:grid;gap:14px;padding:14px}.projects-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px;border:1px solid rgba(219,232,227,.9);border-radius:14px;background:#ffffffc2}.projects-hero h2,.project-card h3,.empty-projects h3{margin:0}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.project-card{display:grid;gap:12px;padding:12px;overflow:hidden}.project-thumb{position:relative;width:100%;aspect-ratio:16 / 10;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:0;background:var(--surface);cursor:pointer}.project-thumb iframe{width:240%;height:240%;border:0;overflow:hidden;pointer-events:none;transform:scale(.4167);transform-origin:0 0}.project-card-body,.project-card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0}.project-card-body>div{min-width:0}.project-card h3{overflow:hidden;color:var(--text);font-size:15px;text-overflow:ellipsis;white-space:nowrap}.project-card p{color:var(--muted);font-size:11px;font-weight:800}.empty-projects{display:grid;gap:12px;place-items:center;min-height:260px;padding:28px;color:var(--muted);text-align:center}.panel{border:1px solid rgba(219,232,227,.9);border-radius:14px;background:var(--panel);box-shadow:0 10px 28px #1c3f3712;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.chat-panel,.preview-panel{min-width:0;padding:16px}.chat-panel{display:grid;grid-template-rows:auto auto auto minmax(150px,1fr) auto;gap:14px;overflow:hidden}.chat-panel>*,.project-form>*,.field>*,.button-row>*,.model-segments>*{width:100%;max-width:100%;min-width:0}.panel-head{justify-content:space-between;gap:14px;min-width:0}.panel-head>div{min-width:0}.panel-head h2{overflow-wrap:anywhere}.project-form{display:grid;gap:10px;min-width:0}.field{display:grid;gap:7px;min-width:0}.field span{color:var(--muted);font-size:12px;font-weight:800}.field input,.field textarea{width:100%;min-width:0;min-height:40px;border:1px solid var(--line);border-radius:8px;outline:0;padding:0 12px;color:var(--text);background:var(--surface)}.field textarea{resize:vertical;min-height:150px;padding-top:10px;line-height:1.45}.model-segments{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;min-width:0}.model-option{display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;min-width:0;max-width:100%;min-height:54px;overflow:hidden;border:1px solid var(--line);border-radius:8px;padding:7px 8px;color:var(--muted);background:#fff;text-align:left;transition:background .16s ease,border-color .16s ease,color .16s ease}.model-option svg{color:var(--teal-700)}.model-option span,.model-option small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.model-option span{font-size:12px;font-weight:900}.model-option small{grid-column:2;font-size:10px;font-weight:800}.model-option.active{color:var(--teal-700);border-color:var(--mint-300);background:var(--mint-50);box-shadow:0 0 0 3px #28c5a51c}.field input:focus,.field textarea:focus{border-color:var(--mint-500);box-shadow:0 0 0 3px #28c5a526}.btn{justify-content:center;gap:8px;min-width:0;min-height:42px;border:1px solid transparent;border-radius:8px;padding:0 14px;font-weight:900;white-space:nowrap;transition:transform .16s ease,background .16s ease,border-color .16s ease}.button-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%;min-width:0}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:var(--mint-500)}.btn-primary:hover{background:var(--mint-600)}.btn-secondary{color:var(--teal-700);border-color:var(--mint-100);background:var(--mint-50)}.messages{display:grid;align-content:start;gap:9px;min-height:0;overflow:auto;padding-right:3px}.agent-cycle{display:grid;gap:7px;max-width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.cycle-head,.cycle-step{display:flex;align-items:center}.cycle-head{justify-content:space-between;gap:10px;min-width:0;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.cycle-head strong{max-width:55%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--teal-700);font-family:var(--mono);font-size:11px}.cycle-step{display:grid;grid-template-columns:16px minmax(0,1fr);align-items:center;column-gap:8px;gap:8px;min-width:0;min-height:28px;color:var(--muted);font-size:12px;font-weight:800}.cycle-step svg{grid-row:1 / span 2;flex:0 0 auto;color:var(--mint-500)}.cycle-step span,.cycle-step small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cycle-step span{flex:0 1 auto;color:var(--text)}.cycle-step small{grid-column:2;max-width:100%;margin-left:0;font-family:var(--mono);font-size:10px;color:var(--muted)}.cycle-step.done svg{color:var(--teal-700)}.plan-card{display:grid;gap:10px;padding:12px;border:1px solid var(--mint-100);border-radius:8px;background:#fff}.plan-card h3{margin:0;color:var(--text);font-size:15px;line-height:1.2}.plan-card p{color:var(--muted);font-size:12px;font-weight:750;line-height:1.45}.plan-grid{display:grid;grid-template-columns:86px minmax(0,1fr);gap:6px 10px;padding-top:8px;border-top:1px solid var(--line)}.plan-grid span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.plan-grid strong{min-width:0;overflow-wrap:anywhere;color:var(--text);font-size:12px;line-height:1.35}.message{display:grid;grid-template-columns:28px minmax(0,1fr);gap:9px;padding:10px;border-radius:8px;background:#fff}.message.user{background:var(--lime-100)}.message span{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;color:var(--teal-700);background:var(--mint-100)}.message p{color:var(--muted);font-size:12px;font-weight:700;overflow-wrap:anywhere}.history{display:grid;gap:8px;width:100%;min-width:0;overflow:hidden;padding-top:12px;border-top:1px solid var(--line)}.history-title{display:flex;justify-content:space-between;gap:10px;min-width:0;color:var(--muted);font-size:12px;font-weight:900}.history-item{display:grid;grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:6px;width:100%;min-width:0;max-width:100%;min-height:36px;border:1px solid var(--line);border-radius:8px;padding:0 4px 0 10px;color:var(--muted);background:#fff;font-weight:800}.history-item.active{color:#fff;border-color:transparent;background:var(--mint-500)}.history-select{display:flex;align-items:center;justify-content:space-between;gap:10px;min-width:0;min-height:34px;border:0;padding:0;color:inherit;background:transparent;font-weight:inherit;text-align:left}.history-delete{display:grid;width:30px;height:30px;place-items:center;border:1px solid transparent;border-radius:8px;color:inherit;background:transparent}.history-delete:hover{color:var(--yellow-700);border-color:#8d68003d;background:var(--yellow-100)}.history-item span,.history-item small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px}.browser-frame{display:grid;grid-template-rows:38px minmax(0,1fr);min-height:520px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff}.browser-bar{display:flex;align-items:center;gap:7px;min-width:0;padding:0 12px;border-bottom:1px solid var(--line);color:var(--muted);font-family:var(--mono);font-size:11px;background:var(--surface)}.browser-bar i{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:var(--mint-300)}.browser-bar span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}iframe{width:100%;height:100%;border:0;background:#fff}.empty-preview{display:grid;place-items:center;align-content:center;gap:12px;padding:24px;color:var(--muted);font-weight:800;text-align:center}.empty-preview p{max-width:560px;margin:0 auto;text-wrap:balance}.icon-link{justify-content:center;width:38px;height:38px;border:1px solid var(--line);border-radius:8px;color:var(--teal-700);background:#fff}.checklist{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checklist div{display:grid;gap:4px;min-width:0;padding:12px;border-radius:8px;background:var(--mint-50)}.checklist span{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.checklist strong{min-width:0;overflow-wrap:anywhere;font-family:var(--mono);font-size:12px}.modal-backdrop{position:fixed;inset:0;display:grid;place-items:center;padding:18px;background:#172f2a5c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.modal{display:grid;gap:14px;width:min(520px,100%);padding:18px}.modal-bar{width:42px;height:5px;border-radius:999px;background:var(--mint-300)}.error{padding:10px 12px;border-radius:8px;color:var(--yellow-700);background:var(--yellow-100);font-size:12px;font-weight:800}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:980px){.app-shell{width:100%;min-height:100vh;margin:0;border-radius:0}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{justify-content:flex-start;width:100%}.workspace{grid-template-columns:1fr}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.chat-panel{grid-template-rows:auto auto auto auto}}@media(max-width:760px){.model-segments,.button-row{grid-template-columns:1fr}.badge{max-width:100%}}@media(max-width:640px){.topbar,.chat-panel,.preview-panel{padding:14px}.topbar{gap:12px}.brand{align-items:flex-start;width:100%}.brand h1{font-size:clamp(26px,9vw,38px);line-height:.95}.brand-mark{flex:0 0 auto;width:42px;height:42px}.topbar-actions{display:grid;grid-template-columns:repeat(6,minmax(42px,1fr));gap:8px}.topbar-actions .status-pill,.topbar-actions .btn,.topbar-actions .icon-link{width:100%;min-width:0;height:44px;min-height:44px;padding:0;border-radius:10px}.topbar-actions .status-pill,.topbar-actions .btn{font-size:0}.topbar-actions .topbar-text,.topbar-actions .action-label{display:none}.topbar-actions .status-pill svg,.topbar-actions .btn svg,.topbar-actions .icon-link svg{width:20px;height:20px}.button-row .btn{width:100%}.checklist,.project-grid{grid-template-columns:1fr}.panel-head{align-items:flex-start;flex-direction:column}}
