@import url("https://fonts.googleapis.com/css2?family=Syne:wght@400;600;700;800&family=JetBrains+Mono:wght@400;500&family=DM+Sans:ital,wght@0,300;0,400;0,500;1,300&display=swap");*,:after,:before{box-sizing:border-box;margin:0;padding:0}:root{--bg:#08080f;--surface:#0f0f1a;--surface2:#14141f;--border:#1e1e2e;--border2:#2a2a3e;--purple:#7c3aed;--purple2:#6d28d9;--purple-soft:#a78bfa;--purple-glow:rgba(124,58,237,0.15);--purple-glow2:rgba(124,58,237,0.08);--text:#e8e8f0;--text-muted:#7070a0;--text-dim:#404060;--accent:#c4b5fd;--green:#34d399;--red:#f87171;--yellow:#fbbf24}body{font-family:DM Sans,sans-serif;font-size:14px;line-height:1.6;color:var(--text);background:var(--bg)}.app,body{min-height:100vh}.app{display:grid;grid-template-columns:280px 1fr;grid-template-rows:64px 1fr}.header{grid-column:1/-1;padding:0 28px;border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:100}.header,.header-logo{display:flex;align-items:center}.header-logo{gap:12px}.header-avatar{width:36px;height:36px;border-radius:10px;background:var(--purple);display:flex;align-items:center;justify-content:center;font-size:16px;color:white;box-shadow:0 0 20px var(--purple-glow)}.header-avatar,.header-title{font-family:Syne,sans-serif;font-weight:800}.header-title{font-size:18px;letter-spacing:-.5px;background:linear-gradient(135deg,#e8e8f0 0,var(--purple-soft) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.header-sub{font-size:11px;color:var(--text-muted);letter-spacing:.5px}.header-right{margin-left:auto;display:flex;align-items:center;gap:12px}.btn-new{padding:7px 16px;border-radius:8px;border:1px solid var(--border2);background:transparent;color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:13px;cursor:pointer;transition:all .15s}.btn-new:hover{border-color:var(--purple);color:var(--purple-soft)}.sidebar{background:var(--surface);border-right:1px solid var(--border);padding:24px 16px;display:flex;flex-direction:column;gap:6px;overflow-y:auto}.sidebar-label{font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-dim);font-family:JetBrains Mono,monospace;padding:0 8px;margin-bottom:4px;margin-top:8px}.sidebar-label:first-child{margin-top:0}.mode-btn{display:flex;align-items:center;gap:12px;padding:12px;border-radius:10px;border:1px solid transparent;background:transparent;cursor:pointer;transition:all .15s;text-align:left;width:100%;color:var(--text-muted)}.mode-btn:hover{background:var(--purple-glow2);color:var(--text);border-color:var(--border2)}.mode-btn.active{background:var(--purple-glow);border-color:var(--purple);color:var(--text);box-shadow:0 0 20px var(--purple-glow)}.mode-icon{width:36px;height:36px;border-radius:8px;background:var(--surface2);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;transition:all .15s}.mode-btn.active .mode-icon{background:var(--purple);box-shadow:0 0 12px var(--purple-glow)}.mode-info{flex:1 1;min-width:0}.mode-name{font-weight:500;font-size:13px;line-height:1.2}.mode-desc{font-size:11px;color:var(--text-dim);margin-top:2px}.mode-btn.active .mode-desc{color:var(--text-muted)}.main{overflow-y:auto;padding:32px 40px;display:flex;flex-direction:column;gap:28px;max-width:900px}.section{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;transition:border-color .2s}.section:hover{border-color:var(--border2)}.section.focused{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-glow2)}.section-header{padding:16px 20px;border-bottom:1px solid var(--border);gap:10px}.section-header,.section-num{display:flex;align-items:center}.section-num{width:22px;height:22px;border-radius:6px;background:var(--purple-glow);border:1px solid var(--purple);justify-content:center;font-family:JetBrains Mono,monospace;font-size:11px;color:var(--purple-soft);flex-shrink:0}.section-title{font-family:Syne,sans-serif;font-weight:700;font-size:14px;letter-spacing:-.2px}.section-hint{font-size:11px;color:var(--text-muted);margin-left:auto}.section-body{padding:20px}.pills{display:flex;flex-wrap:wrap;gap:8px}.pill{padding:7px 14px;border-radius:8px;border:1px solid var(--border2);background:var(--surface2);color:var(--text-muted);font-size:13px;cursor:pointer;transition:all .12s;font-family:DM Sans,sans-serif}.pill:hover{color:var(--purple-soft)}.pill.active,.pill:hover{border-color:var(--purple)}.pill.active{background:var(--purple-glow);color:var(--accent)}.field-textarea{width:100%;background:var(--surface2);border:1px solid var(--border2);border-radius:10px;padding:14px 16px;color:var(--text);font-family:DM Sans,sans-serif;font-size:13px;line-height:1.7;resize:none;min-height:100px;outline:none;transition:border-color .15s,box-shadow .15s}.field-textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px var(--purple-glow2)}.field-textarea::placeholder{color:var(--text-dim)}.field-input{width:100%;background:var(--surface2);border:1px solid var(--border2);border-radius:10px;padding:11px 16px;color:var(--text);font-family:DM Sans,sans-serif;font-size:13px;outline:none;transition:border-color .15s}.field-input:focus{border-color:var(--purple)}.field-input::placeholder{color:var(--text-dim)}.file-or-paste{display:grid;grid-template-columns:1fr auto 1fr;grid-gap:12px;gap:12px;align-items:start}.or-divider{display:flex;flex-direction:column;align-items:center;gap:6px;padding-top:10px}.or-line{width:1px;height:30px;background:var(--border2)}.or-text{font-size:10px;color:var(--text-dim);letter-spacing:1px}.upload-zone{border:1.5px dashed var(--border2);border-radius:10px;padding:20px 16px;text-align:center;cursor:pointer;color:var(--text-dim);font-size:12px;transition:all .15s;background:var(--surface2)}.upload-zone.drag-over,.upload-zone:hover{border-color:var(--purple);color:var(--purple-soft);background:var(--purple-glow2)}.upload-zone input{display:none}.upload-icon{font-size:22px;margin-bottom:6px}.upload-label{font-size:12px;line-height:1.4}.file-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.file-chip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:var(--purple-glow);border:1px solid var(--purple);color:var(--accent);border-radius:6px;font-size:11px;font-family:JetBrains Mono,monospace}.file-chip button{background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:14px;line-height:1;padding:0;margin-left:2px}.file-chip button:hover{color:var(--red)}.generate-bar{position:-webkit-sticky;position:sticky;bottom:0;background:linear-gradient(to top,var(--bg) 60%,transparent);padding:20px 0 28px;gap:16px}.btn-generate,.generate-bar{display:flex;align-items:center}.btn-generate{gap:10px;padding:14px 32px;border-radius:12px;border:none;background:var(--purple);color:white;font-family:Syne,sans-serif;font-weight:700;font-size:15px;cursor:pointer;transition:all .15s;box-shadow:0 0 30px var(--purple-glow)}.btn-generate:hover{background:var(--purple2);box-shadow:0 0 40px rgba(124,58,237,.4);transform:translateY(-1px)}.btn-generate:active{transform:translateY(0)}.btn-generate:disabled{opacity:.4;cursor:not-allowed;transform:none}.btn-generate .btn-icon{font-size:18px}.error-inline{flex:1 1;padding:10px 14px;background:rgba(248,113,113,.08);border:1px solid rgba(248,113,113,.3);border-radius:10px;color:var(--red);font-size:12px}.overlay{position:fixed;inset:0;background:rgba(8,8,15,.85);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:200;display:flex;align-items:center;justify-content:center}.progress-card{background:var(--surface);border:1px solid var(--border2);border-radius:20px;padding:40px 48px;width:520px;max-width:90vw;box-shadow:0 0 80px rgba(124,58,237,.2)}.progress-title{font-family:Syne,sans-serif;font-weight:800;font-size:20px;margin-bottom:6px;background:linear-gradient(135deg,var(--text) 0,var(--purple-soft) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.progress-subtitle{font-size:13px;color:var(--text-muted);margin-bottom:32px}.progress-agents{display:flex;flex-direction:column;gap:12px;margin-bottom:28px}.agent-row{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;border:1px solid var(--border);background:var(--surface2);transition:all .3s}.agent-row.running{border-color:var(--purple);background:var(--purple-glow2);box-shadow:0 0 20px var(--purple-glow)}.agent-row.done{border-color:rgba(52,211,153,.3);background:rgba(52,211,153,.05)}.agent-icon-wrap{width:36px;height:36px;border-radius:9px;background:var(--surface);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.agent-row.running .agent-icon-wrap{background:var(--purple)}.agent-row.done .agent-icon-wrap{background:rgba(52,211,153,.15)}.agent-info{flex:1 1}.agent-name{font-weight:600;font-size:13px}.agent-status{font-size:11px;color:var(--text-muted);margin-top:2px}.agent-row.running .agent-status{color:var(--purple-soft)}.agent-row.done .agent-status{color:var(--green)}.agent-badge{font-size:11px;font-family:JetBrains Mono,monospace;padding:3px 8px;border-radius:5px;background:var(--border);color:var(--text-dim)}.agent-row.running .agent-badge{background:var(--purple);color:white}.agent-row.done .agent-badge{background:rgba(52,211,153,.2);color:var(--green)}.results-view{display:flex;flex-direction:column;gap:0;flex:1 1}.results-header{display:flex;align-items:center;justify-content:space-between;padding:24px 40px;border-bottom:1px solid var(--border);background:var(--surface);position:-webkit-sticky;position:sticky;top:0;z-index:10}.results-title{font-family:Syne,sans-serif;font-weight:800;font-size:20px}.results-actions{display:flex;gap:8px}.btn-action{padding:8px 16px;border-radius:8px;border:1px solid var(--border2);background:transparent;color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:13px;cursor:pointer;transition:all .12s;display:flex;align-items:center;gap:6px}.btn-action:hover{border-color:var(--purple);color:var(--purple-soft)}.btn-action.primary{background:var(--purple);border-color:var(--purple);color:white}.btn-action.primary:hover{background:var(--purple2)}.results-tabs{display:flex;gap:0;padding:0 40px;border-bottom:1px solid var(--border);background:var(--surface)}.result-tab{padding:14px 20px;background:none;color:var(--text-muted);font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;cursor:pointer;border:none;border-bottom:2px solid transparent;transition:all .12s;display:flex;align-items:center;gap:7px}.result-tab:hover{color:var(--text)}.result-tab.active{color:var(--accent);border-bottom-color:var(--purple)}.tab-dot{width:6px;height:6px;border-radius:50%;background:var(--green)}.result-content{padding:40px;flex:1 1;overflow-y:auto}.result-text{font-size:14px;line-height:1.9;color:var(--text);white-space:pre-wrap;font-family:DM Sans,sans-serif;max-width:780px}.design-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:24px;gap:24px}.design-card{background:var(--surface2);border:1px solid var(--border);border-radius:14px;overflow:hidden}.design-card-header{padding:12px 16px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between}.design-card-title{font-weight:600;font-size:13px}.format-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:8px 12px;border-bottom:1px solid var(--border)}.fmt-btn{padding:4px 10px;border-radius:6px;border:1px solid var(--border2);background:transparent;color:var(--text-dim);font-size:11px;cursor:pointer;transition:all .1s}.fmt-btn.active{background:var(--purple-glow);border-color:var(--purple);color:var(--accent)}@keyframes spin{to{transform:rotate(1turn)}}.spin{display:inline-block;animation:spin .8s linear infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.pulse{animation:pulse 1.5s ease-in-out infinite}.field-label{font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.5px;text-transform:uppercase;margin-bottom:8px;font-family:JetBrains Mono,monospace}.clarif-box{background:var(--surface2);border:1px solid var(--border2);border-radius:10px;padding:16px;font-size:13px;color:var(--text);white-space:pre-wrap;line-height:1.7;margin-bottom:12px}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:60px 20px;color:var(--text-dim);font-size:13px;text-align:center}.empty-icon{font-size:40px;opacity:.4}.grid-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:8px;gap:8px}@media (max-width:768px){.app{grid-template-columns:1fr;grid-template-rows:64px auto 1fr}.sidebar{display:flex;flex-direction:row;overflow-x:auto;padding:12px;border-right:none;border-bottom:1px solid var(--border);grid-row:2}.main{padding:20px 16px}.file-or-paste{grid-template-columns:1fr}.or-divider{display:none}.design-grid{grid-template-columns:1fr}}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_246ccd{font-family:Geist,Geist Fallback;font-style:normal}