.login-logo,.welcome-logo{aspect-ratio:1/1;flex-shrink:0;background:url('portal-logo.png?v=34') center/contain no-repeat!important;color:transparent!important;border-radius:0!important;box-shadow:0 1px 4px rgba(26,40,55,.08);overflow:hidden}.side-head{gap:10px}.side-head strong{display:flex;align-items:center;gap:10px;min-width:0}.side-head strong:before{content:'';aspect-ratio:1/1;flex-shrink:0;width:30px;height:30px;border-radius:0;background:url('portal-logo.png?v=34') center/contain no-repeat;box-shadow:0 1px 3px rgba(26,40,55,.08)}.topbar{padding-top:env(safe-area-inset-top)}.bubble{white-space:normal}.md{white-space:normal}.md h2,.md h3{margin:12px 0 8px;line-height:1.2}.md strong{font-weight:750}.md-bullet{display:block;margin:4px 0}.code-block{background:#0f0f10;border:1px solid #3a3a3a;border-radius:12px;padding:12px;margin:10px 0;overflow:auto;white-space:pre;font-size:13px;line-height:1.45}.inline-code{background:#111;border:1px solid #333;border-radius:6px;padding:1px 5px}.primary:disabled{opacity:.45;cursor:not-allowed}.chat{scrollbar-width:thin}.composer{max-width:min(820px,calc(100vw - 24px))}@media(display-mode:standalone){body{overscroll-behavior:none}.topbar{background:#1f1f1f}.composer-wrap{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}@supports(-webkit-touch-callout:none){input,textarea,button{font-size:16px}.composer textarea{font-size:16px}.login-card{margin-bottom:env(safe-area-inset-bottom)}}@media(max-width:780px){.sidebar{padding-top:calc(10px + env(safe-area-inset-top))}.side-head strong:before{width:32px;height:32px}.chat{padding:12px 16px 6px}.msg{max-width:100%;gap:10px}.assistant .bubble{max-width:calc(100vw - 72px)}.user .bubble{max-width:86vw}.image-card img{max-width:100%;border-radius:18px}.code-block{max-width:100%;font-size:12px}.composer-wrap{position:sticky;bottom:0}.project-drawer{overscroll-behavior:contain}.topbar{height:calc(54px + env(safe-area-inset-top));align-items:flex-end;padding-bottom:7px}}.send:disabled,.composer textarea:disabled{opacity:.55;cursor:not-allowed}

.files{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;align-items:start;max-height:180px;overflow:auto;padding-right:4px}.file-card{display:flex;align-items:center;gap:8px;min-width:0;background:#262626;border:1px solid #3a3a3a;border-radius:14px;padding:8px 8px 8px 10px}.file-card a{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:0 8px;align-items:center;color:#ececec;text-decoration:none;min-width:0;flex:1}.file-card .file-ico{grid-row:1/3}.file-card .fname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.file-card small{color:#9b9b9b}.file-remove{width:30px;height:30px;border-radius:10px;border:1px solid #4a4a4a;background:#1b1b1b;color:#ddd;font-size:20px;line-height:1;cursor:pointer}.file-remove:hover{background:#3a1f1f;border-color:#a33;color:#fff}.upload-queue{max-height:170px;overflow:auto;margin-top:10px}.queue-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:#ddd}.upload-row{border:1px solid #3a3a3a;background:#252525;border-radius:12px;padding:8px;margin:7px 0}.upload-meta{display:flex;align-items:center;gap:8px}.upload-meta div{min-width:0;flex:1}.upload-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-meta small,.upload-meta em{color:#aaa;font-style:normal}.bar{height:5px;background:#141414;border-radius:999px;overflow:hidden;margin-top:7px}.bar span{display:block;height:100%;background:#e7e7e7;width:0}.upload-row.done .bar span{background:#2bd48f}.upload-row.error .bar span{background:#ff5a5a}@media(max-width:780px){.files{display:flex;overflow:auto;max-height:none;padding-bottom:6px}.file-card{min-width:230px}.drawer-grid{gap:10px}.config-panel{min-width:0}.upload-queue{max-height:140px}}

/* v25 project files and chat stability */
.files{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;align-items:start;max-height:180px;overflow:auto;padding-right:4px}.file-card{display:flex;align-items:center;gap:8px;min-width:0;background:#262626;border:1px solid #3a3a3a;border-radius:14px;padding:8px 8px 8px 10px}.file-card a{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;gap:0 8px;align-items:center;color:#ececec;text-decoration:none;min-width:0;flex:1}.file-card .file-ico{grid-row:1/3}.file-card .fname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.file-card small{color:#9b9b9b}.file-remove{width:30px;height:30px;border-radius:10px;border:1px solid #4a4a4a;background:#1b1b1b;color:#ddd;font-size:20px;line-height:1;cursor:pointer}.file-remove:hover{background:#3a1f1f;border-color:#a33;color:#fff}.upload-queue{max-height:170px;overflow:auto;margin-top:10px}.queue-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;color:#ddd}.upload-row{border:1px solid #3a3a3a;background:#252525;border-radius:12px;padding:8px;margin:7px 0}.upload-meta{display:flex;align-items:center;gap:8px}.upload-meta div{min-width:0;flex:1}.upload-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.upload-meta small,.upload-meta em{color:#aaa;font-style:normal}.bar{height:5px;background:#141414;border-radius:999px;overflow:hidden;margin-top:7px}.bar span{display:block;height:100%;background:#e7e7e7;width:0}.upload-row.done .bar span{background:#2bd48f}.upload-row.error .bar span{background:#ff5a5a}@media(max-width:780px){.files{display:flex;overflow:auto;max-height:none;padding-bottom:6px}.file-card{min-width:230px}.drawer-grid{gap:10px}.config-panel{min-width:0}.upload-queue{max-height:140px}}
