:root{--app-viewport-height:100dvh;--app-viewport-left:0px;--app-viewport-top:0px;--app-viewport-width:100vw;color:#192027;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f5f7f8;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}html,body,#root{width:100%;height:100%;min-height:100%;overflow-x:hidden}html{height:100%;overflow:hidden}body,#root{overscroll-behavior:none;min-width:0;overflow:hidden}button,input,textarea{letter-spacing:0}:root{--bg:#f8fafc;--surface:#fff;--surface-soft:#f8fafc;--surface-blue:#eff6ff;--surface-cyan:#ecfeff;--line:#e2e8f0;--line-strong:#cbd5e1;--text:#0f172a;--muted:#64748b;--faint:#94a3b8;--blue:#2563eb;--blue-dark:#1d4ed8;--cyan:#0891b2;--green:#16a34a;--amber:#d97706;--red:#dc2626;--brand-gradient:linear-gradient(135deg, #2563eb 0%, #0ea5e9 100%);--brand-shadow:0 10px 24px #2563eb2e;--shadow:0 12px 32px #0f172a12;--soft-shadow:0 6px 18px #0f172a0d}*,:before,:after{box-sizing:border-box}button,select,textarea,input{font:inherit}button{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible{outline-offset:2px;outline:3px solid #2563eb2e}.chat-app{top:var(--app-viewport-top,0);left:var(--app-viewport-left,0);width:var(--app-viewport-width,100vw);max-width:var(--app-viewport-width,100vw);min-height:100dvh;height:var(--app-viewport-height,100dvh);background:var(--bg);color:var(--text);grid-template-columns:292px minmax(0,1fr);display:grid;position:fixed;overflow:hidden}.project-sidebar{border-right:1px solid var(--line);background:#f1f5f9;grid-template-rows:auto auto minmax(0,1fr) auto;gap:16px;min-width:0;height:100%;padding:18px 16px;display:grid;position:sticky;top:0;overflow:hidden auto}.mobile-home{display:none}.brand-row,.new-chat-button,.project-select,.points-mini,.chat-header,.composer-actions,.attach-button,.send-button,.voice-button,.attachment-card,.points-pill,.mobile-fab,.mobile-parameter-chips,.sheet-search,.composer-tools,.composer-submit-controls,.export-button,.profile-actions button,.auth-brand,.auth-tabs,.auth-code-row,.credit-balance,.recharge-modal footer button,.recharge-product-top,.payment-methods button,.recharge-order-status{align-items:center;display:flex}.auth-page{min-height:100dvh;color:var(--text);background:radial-gradient(circle at 18% 15%,#2563eb17,#0000 28%),linear-gradient(#fff 0%,#f8fbff 100%);place-items:center;padding:24px;display:grid}.auth-panel{border:1px solid var(--line);background:#fff;border-radius:8px;width:min(100%,430px);padding:28px;box-shadow:0 24px 70px #0f172a1a}.auth-brand{gap:10px}.auth-brand strong{font-size:19px;font-weight:900}.auth-copy{margin-top:26px}.auth-copy h1{margin:0;font-size:28px;line-height:1.2}.auth-copy p{color:var(--muted);margin:10px 0 0;line-height:1.7}.auth-tabs{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:6px;margin-top:24px;padding:4px}.auth-tabs button{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;font-weight:850}.auth-tabs button.selected{color:var(--blue);box-shadow:var(--soft-shadow);background:#fff}.auth-form{gap:13px;margin-top:18px;display:grid}.auth-form label{color:var(--muted);gap:7px;font-size:13px;font-weight:850;display:grid}.auth-form input{border:1px solid var(--line);min-height:44px;color:var(--text);background:#fff;border-radius:8px;padding:0 12px}.auth-code-row{gap:8px}.auth-code-row input{flex:1;min-width:0}.auth-code-row button{background:var(--surface-blue);min-width:112px;min-height:44px;color:var(--blue);cursor:pointer;border:1px solid #bfdbfe;border-radius:8px;font-weight:900}.auth-error,.export-error{color:var(--red);margin:0;font-size:13px}.auth-notice{color:var(--blue);margin:0;font-size:13px;line-height:1.6}.auth-submit{background:var(--brand-gradient);color:#fff;cursor:pointer;min-height:44px;box-shadow:var(--brand-shadow);border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;font-weight:900;display:inline-flex}.legal-consent{color:var(--muted);text-align:center;margin:0;font-size:12px;line-height:1.7}.legal-consent a{color:var(--blue);font-weight:850;text-decoration:none}.loading-panel{overflow:hidden}.loading-line{background:#dbeafe;border-radius:999px;height:4px;margin-top:24px;display:block;position:relative;overflow:hidden}.loading-line:after{border-radius:inherit;background:var(--brand-gradient);content:"";width:42%;animation:1.1s ease-in-out infinite loadingSlide;position:absolute;inset:0 auto 0 0}.brand-row{gap:10px;min-height:40px}.brand-row strong{letter-spacing:0;font-size:17px;font-weight:900}.logo-mark{background:#fff;border:1px solid #d5e5ff;border-radius:8px;place-items:center;width:36px;height:36px;display:inline-grid;box-shadow:0 6px 14px #2563eb14}.logo-mark svg{width:25px;height:25px;display:block}.new-chat-button,.send-button,.parameter-sheet footer button{background:var(--brand-gradient);color:#fff;cursor:pointer;box-shadow:var(--brand-shadow);border:0;border-radius:8px;justify-content:center;gap:8px;font-weight:900}.new-chat-button{min-height:44px}.mobile-fab{display:none}.project-list{align-content:start;gap:8px;min-height:0;display:grid}.project-list article{background:0 0;border:1px solid #0000;border-radius:8px;min-width:0;transition:border-color .16s,background .16s,transform .16s;position:relative;overflow:hidden}.project-list article.active{box-shadow:var(--soft-shadow);background:#fff;border-color:#bfdbfe}.project-list article.active:before{background:var(--blue);content:"";border-radius:0 999px 999px 0;width:4px;position:absolute;top:12px;bottom:12px;left:-1px}.project-list article:hover{background:#f8fbff;border-color:#c7d8ea}.project-select{width:100%;min-width:0;max-width:100%;min-height:54px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:row;align-items:center;gap:8px;padding:10px 42px 10px 30px;position:relative;overflow:hidden}.project-select strong,.chat-header h1,.attachment-card-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.project-select strong{flex:auto;min-width:0;font-size:14px;font-weight:800;line-height:1.35}.project-select span:not(.status-dot),.project-select em,.chat-header span,.assistant-line,.points-mini span,.mobile-parameter-chips button,.parameter-sheet header span{color:var(--muted)}.project-select em{align-items:center;gap:4px;font-size:12px;font-style:normal;display:inline-flex}.status-dot{background:var(--faint);border-radius:999px;width:8px;height:8px;position:absolute;top:23px;left:13px}.status-dot.completed{background:var(--green)}.status-dot.generating,.status-dot.queued{background:var(--blue);box-shadow:0 0 0 4px #2563eb1f}.status-dot.failed{background:var(--red)}.status-spinner{border:2px solid #dbeafe;border-top-color:var(--blue);border-radius:50%;width:13px;height:13px;animation:.8s linear infinite spin;position:absolute;top:20px;left:11px}.delete-button,.mobile-back-button,.profile-button,.parameter-sheet header button,.attachment-list button{cursor:pointer;place-items:center;display:inline-grid}.delete-button{width:28px;height:28px;color:var(--faint);background:0 0;border:0;border-radius:6px;position:absolute;top:10px;right:10px}.delete-button:hover{color:#c04444;box-shadow:var(--soft-shadow);background:#fff}.points-mini{border:1px solid var(--line);background:#fff;border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:10px;min-width:0;max-width:100%;padding:14px}.points-mini strong{min-width:0;color:var(--blue);text-overflow:ellipsis;font-size:22px;line-height:1;overflow:hidden}.points-mini button{min-height:30px;color:var(--blue);cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;padding:0 12px;font-weight:850}.chat-shell{grid-template-rows:auto minmax(0,1fr);width:100%;min-width:0;max-width:100%;height:100%;display:grid;overflow:hidden}.workspace-main{grid-template-columns:minmax(0,1fr);min-width:0;min-height:0;display:grid;overflow:hidden}.conversation-column{grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;display:grid;overflow:hidden}.chat-header{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;gap:14px;padding:14px 28px;position:relative}.chat-title{min-width:0;display:block}.chat-header h1{margin:0;font-size:22px;line-height:1.25}.mobile-back-button,.profile-button{border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--muted);border-radius:50%;flex:none}.mobile-back-button{border-radius:8px;display:none}.profile-menu{position:relative}.profile-button{background:var(--brand-gradient);color:#fff;border-color:#bfdbfe;font-weight:900}.profile-button span{color:inherit}.profile-popover{z-index:30;border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:42px minmax(0,1fr);gap:10px 12px;width:248px;padding:14px;display:grid;position:absolute;top:46px;right:0;box-shadow:0 16px 38px #0f172a24}.profile-card-avatar{background:var(--brand-gradient);color:#fff;border-radius:50%;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.profile-popover strong,.profile-popover span{display:block}.profile-popover strong{color:var(--text)}.profile-popover span{color:var(--muted);margin-top:2px;font-size:12px}.profile-popover dl{grid-column:1/-1;gap:8px;margin:4px 0 0;display:grid}.profile-popover dl div{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding-top:8px;display:flex}.profile-popover dt,.profile-popover dd{margin:0;font-size:13px}.profile-popover dt{color:var(--muted)}.profile-popover dd{color:var(--text);font-weight:850}.profile-actions{grid-column:1/-1;gap:8px;display:grid}.profile-actions button{border:1px solid var(--line);min-height:36px;color:var(--text);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;gap:7px;font-weight:850}.profile-actions button:first-child{color:var(--blue);background:#eff6ff;border-color:#bfdbfe}.profile-actions button.danger-action{color:var(--red);background:#fef2f2;border-color:#fecaca}.messages{overscroll-behavior:contain;align-content:start;gap:16px;min-width:0;padding:28px clamp(24px,4vw,52px);display:grid;overflow:hidden auto}.empty-chat-state{place-self:center;gap:20px;width:min(100%,560px);min-width:0;padding:clamp(18px,4vw,40px) 4px;display:grid}.empty-chat-state .logo-mark{width:44px;height:44px;box-shadow:none;border-color:#0000}.empty-chat-state .logo-mark svg{width:32px;height:32px}.empty-chat-state h2{color:var(--text);margin:0;font-size:clamp(24px,3.4vw,34px);font-weight:900;line-height:1.25}.empty-chat-state p{color:#475569;overflow-wrap:anywhere;max-width:510px;margin:0;font-size:17px;line-height:2}.empty-chat-state div{justify-items:start;gap:12px;margin-top:2px;display:grid}.empty-chat-state button{border:1px solid var(--line);color:#334155;min-height:44px;box-shadow:var(--soft-shadow);cursor:pointer;background:#fff;border-radius:8px;padding:0 16px;font-weight:850}.message{grid-template-columns:minmax(0,760px);align-items:start;gap:10px;width:100%;min-width:0;max-width:100%;display:grid}.message.user{justify-content:end}.user-message-stack{justify-self:end;justify-items:end;gap:8px;min-width:0;max-width:min(100%,620px);display:grid}.user-bubble{background:var(--brand-gradient);color:#fff;overflow-wrap:anywhere;white-space:pre-wrap;border-radius:8px;justify-self:end;width:fit-content;min-width:0;max-width:min(100%,560px);margin:0;padding:12px 16px;line-height:1.65;box-shadow:0 10px 24px #2563eb29}.assistant-response{min-width:0;max-width:100%;color:var(--text);justify-items:start;gap:16px;display:grid}.assistant-body{gap:10px;width:min(100%,680px);min-width:0;max-width:100%;display:grid}.assistant-heading{color:var(--text);margin:18px 0 4px;font-size:19px;font-weight:900;line-height:1.45}.assistant-line{color:#1f2937;overflow-wrap:anywhere;word-break:break-word;min-width:0;margin:0;font-size:16px;line-height:1.88}.assistant-line.bullet{grid-template-columns:14px minmax(0,1fr);align-items:start;gap:9px;display:grid}.assistant-line.bullet span{background:#4f8df7;border-radius:50%;width:8px;height:8px;margin-top:12px}.message-break{height:6px}.artifact-spinner{border:2px solid #bfdbfe;border-top-color:var(--blue);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}.typing-message .assistant-response{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;width:fit-content;min-width:76px;min-height:42px;padding:0 16px;display:inline-flex}.typing-dots{align-items:center;gap:5px;display:inline-flex}.typing-dots i{background:#8ab4f8;border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite typingPulse}.typing-dots i:nth-child(2){animation-delay:.14s}.typing-dots i:nth-child(3){animation-delay:.28s}.button-spinner{border:2px solid #ffffff73;border-top-color:#fff;border-radius:50%;width:17px;height:17px;animation:.8s linear infinite spin}.composer-card{border:1px solid var(--line-strong);min-width:0;max-width:calc(100% - clamp(48px,8vw,108px));box-shadow:var(--shadow);background:#fff;border-radius:8px;margin:0 clamp(24px,4vw,54px) 24px;padding:12px}.mobile-parameter-chips{display:none}.parameter-row{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:flex-end;gap:10px;padding-bottom:12px;display:flex}.parameter-row label{min-width:176px;color:var(--muted);gap:5px;font-size:12px;font-weight:800;display:grid;position:relative}.parameter-row select{appearance:none;border:1px solid var(--line);min-height:38px;color:var(--text);background:#fff;border-radius:8px;padding:0 34px 0 11px;font-weight:800}.parameter-row label svg{color:var(--faint);pointer-events:none;position:absolute;bottom:11px;right:10px}.attachment-list{flex-wrap:wrap;gap:10px;padding:10px 0 8px;display:flex}.message-attachment-list{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:min(100%,620px);display:flex}.attachment-card{border:1px solid var(--line);background:var(--surface-soft);width:min(178px,100%);min-height:76px;color:var(--muted);border-radius:8px;gap:9px;padding:11px 32px 11px 11px;font-size:13px;position:relative;box-shadow:0 6px 18px #0f172a0a}.message-attachment-list .attachment-card{background:#f1f5f9;width:min(360px,100%);min-height:62px}.attachment-card.unsupported,.attachment-card.failed{background:#fff7ed;border-color:#fed7aa}.attachment-card-icon{width:34px;height:34px;color:var(--blue);background:#eff6ff;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.attachment-card.failed .attachment-card-icon,.attachment-card.unsupported .attachment-card-icon{color:var(--amber);background:#ffedd5}.attachment-card-copy{gap:3px;min-width:0;display:grid}.attachment-card-type{color:var(--faint);letter-spacing:0;font-weight:850}.attachment-card-name{min-width:0;color:var(--text);font-weight:850;line-height:1.3}.attachment-card-status{color:var(--faint);align-items:center;gap:5px;font-size:11px;line-height:1.2;display:inline-flex}.mini-spinner{border:2px solid #dbeafe;border-top-color:var(--blue);border-radius:50%;flex:none;width:10px;height:10px;animation:.8s linear infinite spin}.attachment-card button{width:22px;height:22px;color:var(--faint);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;justify-content:center;position:absolute;top:8px;right:8px}.composer-card textarea{resize:vertical;width:100%;min-height:104px;color:var(--text);background:0 0;border:0;padding:15px 2px;line-height:1.65}.composer-card textarea:focus,.parameter-row select:focus,.sheet-search input:focus{outline:none}.composer-actions{flex-wrap:nowrap;justify-content:space-between;gap:12px}.composer-tools{flex-wrap:wrap;gap:8px;min-width:0}.composer-submit-controls{flex:none;gap:8px}.attach-button{border:1px solid var(--line);min-height:38px;color:var(--text);cursor:pointer;background:#fff;border-radius:8px;gap:7px;padding:0 12px;font-weight:760;position:relative;overflow:hidden}.file-input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;margin:0;position:absolute;inset:0}.attach-button.disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.export-button{min-height:38px;color:var(--blue);cursor:pointer;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;justify-content:center;gap:7px;padding:0 12px;font-weight:850}.send-button{min-height:40px;padding:0 15px}.voice-button{border:1px solid var(--line);width:40px;height:40px;color:var(--blue);cursor:pointer;background:#fff;border-radius:50%;flex:none;justify-content:center}.voice-button.listening{background:var(--surface-blue);border-color:#93c5fd;box-shadow:0 0 0 4px #2563eb1a}.voice-notice{color:var(--muted);margin:8px 0 0;font-size:12px;line-height:1.5}.sheet-backdrop{z-index:20;background:#0b152461;align-items:end;display:grid;position:fixed;inset:0}.parameter-sheet{background:#fff;border-radius:8px 8px 0 0;flex-direction:column;gap:12px;max-height:min(86vh,720px);padding:16px;display:flex;box-shadow:0 -20px 45px #0f172a2e}.parameter-sheet header,.parameter-sheet footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.parameter-sheet h2{margin:2px 0 0;font-size:20px}.parameter-sheet header button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);background:#fff;border-radius:8px}.sheet-search{border:1px solid var(--line);background:var(--surface-soft);min-height:42px;color:var(--muted);border-radius:8px;gap:8px;padding:0 12px}.sheet-search input{min-width:0;color:var(--text);background:0 0;border:0;flex:1}.popular-strip{gap:8px;padding-bottom:2px;display:flex;overflow-x:auto}.popular-strip button,.custom-industry-button,.industry-group button{border:1px solid var(--line);color:var(--text);white-space:nowrap;cursor:pointer;background:#fff;border-radius:8px;padding:8px 10px}.popular-strip button.selected,.industry-group button.selected,.option-grid button.selected{background:var(--surface-blue);color:var(--blue);border-color:#9cc4ff;font-weight:850}.custom-industry-button{text-align:left;width:100%;font-weight:850}.sheet-options{flex:1;min-height:0;overflow:auto}.industry-group{gap:8px;padding:4px 0 12px;display:grid}.industry-group h3{color:var(--muted);margin:0;font-size:13px}.industry-group div{flex-wrap:wrap;gap:8px;display:flex}.option-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.option-grid button{border:1px solid var(--line);background:var(--surface-soft);min-height:74px;color:var(--text);text-align:left;cursor:pointer;border-radius:8px;justify-items:start;gap:4px;padding:12px;display:grid}.option-grid svg{color:var(--blue)}.option-grid span{font-weight:850}.parameter-sheet footer{border-top:1px solid var(--line);justify-content:flex-end;padding-top:8px}.parameter-sheet footer button{min-width:112px;min-height:40px}.modal-backdrop{place-items:center;padding:18px}.recharge-modal{border:1px solid var(--line);background:#fff;border-radius:8px;gap:14px;width:min(100%,500px);padding:16px;display:grid;box-shadow:0 22px 60px #0f172a2e}.recharge-modal header,.recharge-modal footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.recharge-modal header span{color:var(--muted);font-size:12px;font-weight:850}.recharge-modal h2{margin:2px 0 0;font-size:21px}.recharge-modal header button{border:1px solid var(--line);width:34px;height:34px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;place-items:center;display:inline-grid}.credit-balance{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;gap:8px;padding:12px}.credit-balance span{color:var(--muted);font-weight:800}.credit-balance strong{color:var(--blue);margin-left:auto;font-size:22px}.recharge-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.recharge-options button{border:1px solid var(--line);min-height:138px;color:var(--text);text-align:left;cursor:pointer;background:#fff;border-radius:8px;align-content:start;gap:7px;padding:12px;display:grid}.recharge-options button.selected{background:var(--surface-blue);color:var(--blue);border-color:#93c5fd}.recharge-product-top{justify-content:space-between;gap:8px}.recharge-product-top strong{min-width:0;font-size:15px;line-height:1.3}.recharge-product-top em{color:var(--blue);background:#dbeafe;border-radius:999px;flex:none;padding:3px 7px;font-size:11px;font-style:normal;font-weight:900}.recharge-product-price{color:var(--text);font-size:24px;font-weight:900;line-height:1.1}.recharge-options span{color:var(--muted);font-size:12px}.recharge-options small{color:var(--muted);font-size:12px;line-height:1.5}.payment-methods{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.payment-methods button{border:1px solid var(--line);min-height:42px;color:var(--text);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;gap:8px;font-weight:900}.payment-methods button.selected{background:var(--surface-blue);color:var(--blue);border-color:#93c5fd}.recharge-order-status{background:var(--surface-blue);color:var(--blue-dark);border:1px solid #bfdbfe;border-radius:8px;gap:9px;padding:10px 12px}.recharge-order-status p,.recharge-error{margin:0;font-size:13px;line-height:1.6}.recharge-order-status svg{flex:none}.recharge-error{color:var(--red)}.recharge-modal footer button{background:var(--brand-gradient);color:#fff;cursor:pointer;width:100%;min-height:42px;box-shadow:var(--brand-shadow);border:0;border-radius:8px;justify-content:center;gap:8px;font-weight:900}.delete-account-modal p{color:var(--muted);margin:0;font-size:14px;line-height:1.8}.recharge-modal footer button.danger-submit{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);box-shadow:0 10px 24px #dc26262e}@keyframes spin{to{transform:rotate(360deg)}}@keyframes typingPulse{0%,80%,to{opacity:.42;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@keyframes loadingSlide{0%{transform:translate(-110%)}to{transform:translate(240%)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important}}@media (width>=861px){.chat-header{padding:14px clamp(28px,4vw,64px)}.chat-title{max-width:min(100%,980px)}.workspace-main{justify-items:center}.conversation-column{justify-self:center;width:min(100%,1120px)}.messages{padding:28px 36px 18px}.message{grid-template-columns:minmax(0,1fr)}.message.user{justify-content:stretch}.assistant-response,.assistant-body{max-width:min(100%,760px)}.user-message-stack{max-width:min(100%,660px)}.user-bubble{max-width:min(100%,640px)}.composer-card{width:calc(100% - 72px);max-width:1048px;margin:0 auto 24px}}@media (width<=980px){.chat-app{grid-template-columns:280px minmax(0,1fr)}.auth-page{padding:18px}.auth-panel{padding:22px}.auth-code-row{align-items:stretch}.auth-code-row button{min-width:104px;padding:0 10px;font-size:13px}.parameter-row label{min-width:150px}}@media (width<=860px){html,body,#root{width:100%;max-width:100%;overflow-x:hidden}.chat-app{width:var(--app-viewport-width,100vw);max-width:var(--app-viewport-width,100vw);height:var(--app-viewport-height,100dvh);min-height:var(--app-viewport-height,100dvh);background:#fff;display:block;overflow-x:hidden}.project-sidebar{display:none}.mobile-home{width:var(--app-viewport-width,100vw);max-width:var(--app-viewport-width,100vw);height:var(--app-viewport-height,100dvh);min-height:var(--app-viewport-height,100dvh);padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));background:linear-gradient(#fff 0%,#f8fbff 58%,#eef6ff 100%);overflow-x:hidden}.mobile-screen-projects .mobile-home{grid-template-rows:auto minmax(0,1fr);gap:14px;display:grid}.mobile-screen-projects .chat-shell,.mobile-screen-chat .mobile-home{display:none}.mobile-screen-chat .chat-shell{height:var(--app-viewport-height,100dvh);min-height:var(--app-viewport-height,100dvh);display:grid}.mobile-home-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.points-pill{border:1px solid var(--line);min-height:34px;color:var(--blue);background:#fff;border-radius:999px;gap:6px;padding:0 11px;font-weight:850}.mobile-project-list{min-height:0;padding-bottom:88px;overflow:auto}.mobile-fab{right:calc(18px + env(safe-area-inset-right));bottom:calc(18px + env(safe-area-inset-bottom));z-index:10;background:var(--brand-gradient);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:58px;height:58px;display:inline-grid;position:fixed;box-shadow:0 16px 34px #2563eb47}.mobile-project-list article{border-color:var(--line);background:#ffffffdb}.mobile-project-list article.active{border-color:#b9d5ff}.chat-shell{width:100%;max-width:var(--app-viewport-width,100vw);background:#fff;grid-template-rows:auto minmax(0,1fr);height:100%;overflow:hidden}.workspace-main{width:100%;max-width:var(--app-viewport-width,100vw);grid-template-columns:minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.conversation-column{width:100%;max-width:var(--app-viewport-width,100vw);grid-template-rows:minmax(0,1fr) auto;height:100%;min-height:0;overflow:hidden}.chat-header{padding:calc(10px + env(safe-area-inset-top)) 12px 10px;grid-template-columns:40px minmax(0,1fr) 40px;align-items:center;gap:8px;display:grid}.chat-title{text-align:center;min-width:0}.mobile-back-button{display:inline-grid}.chat-header h1{text-align:center;font-size:16px}.profile-menu,.profile-button{justify-self:end}.profile-popover{top:calc(58px + env(safe-area-inset-top));width:min(292px,100vw - 20px);position:fixed;right:10px}.messages{gap:10px;width:100%;max-width:100%;min-height:0;padding:10px 14px;overflow-x:hidden}.empty-chat-state{place-self:start stretch;gap:11px;padding:14px 18px 6px}.empty-chat-state .logo-mark{width:36px;height:36px}.empty-chat-state .logo-mark svg{width:26px;height:26px}.empty-chat-state h2{font-size:21px}.empty-chat-state p{max-width:100%;font-size:13.5px;line-height:1.62}.empty-chat-state div{gap:8px}.empty-chat-state button{text-align:left;max-width:100%;min-height:38px;padding:0 12px;font-size:14px;line-height:1.35}.message{grid-template-columns:minmax(0,1fr);gap:8px;width:100%}.message.user{justify-content:end}.user-bubble{max-width:min(82vw,320px);padding:10px 13px;font-size:15px;line-height:1.58}.user-message-stack{max-width:min(88vw,340px)}.assistant-response{gap:14px;width:100%;min-width:0}.assistant-body{gap:8px;width:100%}.assistant-heading{margin-top:14px;font-size:17px}.assistant-line{font-size:15px;line-height:1.86}.composer-card{width:100%;max-width:var(--app-viewport-width,100vw);min-width:0;padding:8px 12px calc(8px + env(safe-area-inset-bottom));border-bottom:0;border-left:0;border-right:0;border-radius:8px 8px 0 0;margin:0;overflow-x:hidden;box-shadow:0 -12px 30px #1e314814}.desktop-parameters{display:none}.mobile-parameter-chips{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding-bottom:6px;display:grid}.mobile-parameter-chips button{border:1px solid var(--line);background:var(--surface-soft);text-align:left;border-radius:8px;gap:2px;min-width:0;min-height:38px;padding:5px 8px;font-size:11px;display:grid}.mobile-parameter-chips strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;overflow:hidden}.attachment-list{-webkit-overflow-scrolling:touch;flex-wrap:wrap;max-height:126px;padding:8px 0 6px;overflow:hidden auto}.attachment-card{background:#f8fafc;align-items:flex-start;width:min(100%,172px);min-width:0;min-height:98px;padding:12px 28px 12px 12px}.message-attachment-list{max-width:100%}.message-attachment-list .attachment-card{align-items:center;width:min(100%,310px);min-width:0;min-height:58px}.composer-card textarea{resize:none;min-width:0;min-height:44px;max-height:88px;padding:8px 2px;font-size:16px;line-height:1.45}.composer-actions{grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:8px;width:100%;min-width:0;display:grid}.composer-tools{grid-column:1;gap:8px;min-width:0;display:flex}.attach-button{border-radius:50%;justify-content:center;width:40px;min-width:40px;height:40px;padding:0;font-size:13px}.attach-label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.attach-button svg{width:18px;height:18px}.composer-submit-controls{grid-column:3;gap:7px;min-width:0}.send-button{border-radius:50%;justify-content:center;width:40px;min-width:40px;height:40px;padding:0;font-size:0}.send-button svg:last-child{display:block}.send-button:not(:disabled){background:#020617}.parameter-sheet{width:100%;height:min(88dvh,720px);max-height:none;padding:14px 14px calc(14px + env(safe-area-inset-bottom));overflow:hidden}.recharge-modal{width:100%;max-height:min(86dvh, var(--app-viewport-height,100dvh) - 28px);-webkit-overflow-scrolling:touch;overflow:auto}.recharge-options{grid-template-columns:1fr}.recharge-options button{min-height:112px}.parameter-sheet header,.parameter-sheet footer,.sheet-search,.popular-strip,.custom-industry-button{flex:none}.sheet-options{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:auto;min-height:0;padding-bottom:8px;overflow:auto}.industry-group button,.custom-industry-button{white-space:normal;text-align:left}.option-grid{grid-template-columns:1fr}}
