html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}@-ms-viewport{width:device-width}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}mark{padding:.2em;background-color:#feffe6}:root{color-scheme:light;--app-bg-layout: #f4f6f8;--app-bg-container: #ffffff;--app-bg-subtle: #f8fafc;--app-bg-muted: #f3f5f8;--app-border: #edf0f3;--app-border-strong: #dfe3e8;--app-text: #172033;--app-text-secondary: #667085;--app-text-tertiary: #98a2b3;--app-primary: #2563eb;--app-primary-soft: #eaf1ff;--app-primary-border: #9db9ff;--app-danger: #cf1322;--app-danger-soft: #fff2f0;--app-danger-border: #ffccc7;--app-warning-soft: #fff7e6;--app-warning-border: #ffa940;--app-shadow-card: 0 1px 2px rgba(16, 24, 40, .04), 0 1px 4px rgba(16, 24, 40, .025);--app-shadow-header: 0 1px 0 rgba(16, 24, 40, .06)}:root[data-theme=dark]{color-scheme:dark;--app-bg-layout: #111315;--app-bg-container: #1a1d21;--app-bg-subtle: #20242a;--app-bg-muted: #171a1f;--app-border: #2a2e35;--app-border-strong: #3a3f48;--app-text: #f2f4f7;--app-text-secondary: #c0c6d0;--app-text-tertiary: #8b95a5;--app-primary: #8b5cf6;--app-primary-soft: #302746;--app-primary-border: #6f55a4;--app-danger: #ff7875;--app-danger-soft: #3a2426;--app-danger-border: #704044;--app-warning-soft: #3d2e1c;--app-warning-border: #a66a24;--app-shadow-card: 0 0 0 1px rgba(255, 255, 255, .015), 0 10px 24px rgba(0, 0, 0, .08);--app-shadow-header: 0 1px 0 rgba(255, 255, 255, .045)}html,body,#root{min-width:320px;min-height:100%;margin:0;background:var(--app-bg-layout)}body{transition:background-color .16s ease,color .16s ease}.app-shell,.app-main-layout,.app-content{min-width:0;background:var(--app-bg-layout)}.app-sidebar{position:sticky!important;top:0;height:100vh;overflow:hidden;border-inline-end:1px solid var(--app-border)}.app-sidebar-inner{display:flex;flex-direction:column;height:100%}.app-sidebar-brand{flex:none;display:flex;align-items:center;min-height:58px;padding:0 16px;border-bottom:1px solid var(--app-border)}.app-sidebar .ant-menu{flex:1;padding-block:10px;overflow-y:auto;border-inline-end:none!important}.app-sidebar .ant-menu-submenu-title{margin-top:7px;font-weight:600}.app-sidebar .ant-menu-item{font-size:13px}.app-sidebar-foot{flex:none;margin-top:auto;padding:12px;border-top:1px solid var(--app-border);background:var(--app-bg-container)}.app-sidebar-account-copy{flex:1;min-width:0;line-height:1.25}.app-sidebar-account-name{overflow:hidden;font-size:13px;font-weight:650;color:var(--app-text);text-overflow:ellipsis;white-space:nowrap}.app-sidebar-account-role{margin-top:3px;font-size:10.5px;color:var(--app-text-tertiary)}.app-sidebar-balance{display:block;overflow:hidden;width:100%;margin-top:4px;padding:0;border:0;background:transparent;color:var(--app-text-secondary);font:inherit;font-size:10.5px;text-align:left;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.app-sidebar-balance:hover{color:var(--app-primary)}.app-balance-popover{width:280px}.app-balance-account-name{overflow:hidden;max-width:175px;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-header{position:sticky;top:0;z-index:20;box-shadow:var(--app-shadow-header)}.app-header-inner{height:100%;min-width:0}.app-header-heading,.app-header-title-group{min-width:0}.app-header-heading{flex:1}.app-header-title-group{overflow:hidden}.app-header-title{flex:none;overflow:hidden;max-width:min(32vw,420px);font-size:18px!important;letter-spacing:-.35px;text-overflow:ellipsis;white-space:nowrap}.app-header-description{overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.app-header-actions{flex:none}.app-user-chip{padding:3px 8px 3px 4px;border:1px solid var(--app-border);border-radius:999px;background:var(--app-bg-subtle)}.app-content-inner{width:100%;max-width:1440px;margin:0 auto;padding:clamp(18px,1.5vw,30px)}.app-content-inner .ant-card{border-color:var(--app-border);box-shadow:var(--app-shadow-card)}.app-content-inner .ant-card-head{border-bottom-color:var(--app-border)}.app-content-inner .ant-card-head-title{font-weight:650;letter-spacing:-.1px}.app-content-inner .ant-statistic-content,.app-content-inner .ant-table-cell{font-variant-numeric:tabular-nums}.app-footer-meta{padding-bottom:6px}.stat-card .ant-card-body{padding:16px 18px}.stat-card-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;font-size:17px;background:var(--app-primary-soft);color:var(--app-primary)}.stat-card-value{font-size:24px;font-weight:680;line-height:1.15;font-variant-numeric:tabular-nums;color:var(--app-text)}.stat-card-label{font-size:12px;color:var(--app-text-secondary)}.project-card .ant-card-cover{overflow:hidden}.project-card-cover{height:152px;display:grid;place-items:center;background:linear-gradient(135deg,var(--app-bg-muted),var(--app-bg-subtle))}.project-card-body{min-height:96px}.project-card-title{font-size:15px;font-weight:650;color:var(--app-text)}.empty-cta{padding:42px 0}.image-lab-page{width:100%}.image-lab-control{position:sticky;top:82px}.image-task-card{height:100%;overflow:hidden}.image-task-preview{height:220px;overflow:hidden;border-radius:9px;background:var(--app-bg-muted)}.image-task-preview .ant-image,.image-task-preview .ant-image-img,.image-task-preview .ant-skeleton,.image-task-preview .ant-skeleton-image{width:100%!important;height:100%!important}.image-task-preview .ant-empty{margin-block:58px 0}.image-lab-empty{padding:110px 0}@media(max-width:991px){.image-lab-control{position:static}.image-task-preview{height:260px}}.chat-page{display:flex;height:calc(100vh - 64px);min-height:0;overflow:hidden}.chat-side{flex:0 0 264px;display:flex;flex-direction:column;min-height:0;border-inline-end:1px solid var(--app-border);background:var(--app-bg-container)}.chat-side-head{flex:none;padding:12px}.chat-side-list{flex:1;min-height:0;overflow-y:auto;padding:0 8px 8px}.chat-side-item{display:flex;align-items:center;gap:6px;padding:9px 8px 9px 11px;margin-bottom:2px;border-radius:9px;font-size:13px;color:var(--app-text);cursor:pointer;transition:background-color .12s ease}.chat-side-item:hover{background:var(--app-bg-muted)}.chat-side-item.is-active{background:var(--app-primary-soft);color:var(--app-primary);font-weight:600}.chat-side-item-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-side-item-more{flex:none;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:inherit;cursor:pointer;opacity:0;transition:opacity .12s ease,background-color .12s ease}.chat-side-item:hover .chat-side-item-more{opacity:.6}.chat-side-item-more:hover{opacity:1;background:var(--app-bg-container)}.chat-main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--app-bg-layout)}.chat-head{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;height:54px;padding:0 20px;border-bottom:1px solid var(--app-border);background:var(--app-bg-container)}.chat-head-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;color:var(--app-text)}.chat-thread-shell{position:relative;flex:1;min-height:0}.chat-thread{height:100%;flex:1;min-height:0;overflow-y:auto;scroll-behavior:smooth}.chat-thread-inner{max-width:780px;margin:0 auto;padding:28px 22px 12px}.chat-turn-nav{position:absolute;z-index:3;inset-inline-end:12px;top:50%;display:flex;flex-direction:column;align-items:flex-end;gap:7px;padding:10px 7px;border-radius:14px;background:color-mix(in srgb,var(--app-bg-container) 76%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transform:translateY(-50%);opacity:.62;transition:opacity .14s ease,background-color .14s ease}.chat-turn-nav:hover{opacity:1}.chat-turn-mark{width:var(--turn-mark-width, 12px);height:2px;padding:0;border:0;border-radius:999px;background:var(--app-text-tertiary);cursor:pointer;opacity:.72;transition:width .14s ease,height .14s ease,background-color .14s ease,opacity .14s ease}.chat-turn-mark:hover{width:24px;opacity:1;background:var(--app-text-secondary)}.chat-turn-mark.is-active{width:25px;height:3px;opacity:1;background:var(--app-text)}.msg-row{display:flex;gap:14px;margin-bottom:26px}.msg-row--user{justify-content:flex-end}.msg-avatar{flex:none;width:28px;height:28px;margin-top:2px;display:grid;place-items:center}.msg-ai{flex:1;min-width:0;font-size:15px;line-height:1.78;color:var(--app-text)}.msg-user{max-width:78%;padding:10px 15px;border-radius:18px;border:1px solid var(--app-border);background:var(--app-bg-subtle);font-size:14.5px;line-height:1.72;color:var(--app-text);white-space:pre-wrap;word-break:break-word}.msg-error{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px;padding:9px 12px;border-radius:9px;background:var(--app-danger-soft);border:1px solid var(--app-danger-border);color:var(--app-danger);font-size:12.5px;line-height:1.6;word-break:break-all}.msg-error--setup{border-color:color-mix(in srgb,#d89614 42%,var(--app-border));background:color-mix(in srgb,#d89614 10%,var(--app-bg-container));color:var(--app-text);word-break:normal}.msg-error--setup .ant-btn{flex:none}.msg-thinking{display:flex;align-items:center;gap:5px;height:28px}.msg-thinking span{width:6px;height:6px;border-radius:50%;background:var(--app-text-tertiary);animation:chat-blink 1.2s infinite ease-in-out}.msg-thinking span:nth-child(2){animation-delay:.18s}.msg-thinking span:nth-child(3){animation-delay:.36s}@keyframes chat-blink{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}@media(prefers-reduced-motion:reduce){.msg-thinking span{animation:none;opacity:.5}}.chat-welcome{display:flex;flex-direction:column;align-items:center;gap:14px;padding:9vh 16px 0;text-align:center}.chat-welcome h2{margin:10px 0 0;font-size:26px;font-weight:650;letter-spacing:-.4px;color:var(--app-text)}.chat-welcome p{margin:0;max-width:460px;font-size:13.5px;line-height:1.7;color:var(--app-text-secondary)}.chat-suggestions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;max-width:620px;margin-top:12px}.chat-suggestion{padding:9px 15px;border:1px solid var(--app-border-strong);border-radius:999px;background:var(--app-bg-container);color:var(--app-text);font-size:13px;cursor:pointer;transition:border-color .14s ease,color .14s ease,transform .14s ease}.chat-suggestion:hover{border-color:var(--app-primary);color:var(--app-primary);transform:translateY(-1px)}.chat-composer-wrap{flex:none;padding:8px 22px 16px;background:var(--app-bg-layout)}.chat-composer-inner{max-width:780px;margin:0 auto}.chat-composer-box{display:flex;align-items:flex-end;gap:8px;padding:8px 8px 8px 16px;border:1px solid var(--app-border-strong);border-radius:24px;background:var(--app-bg-container);box-shadow:0 2px 10px #1018280d;transition:border-color .14s ease,box-shadow .14s ease}.chat-composer-content{flex:1;min-width:0}.chat-composer-box:focus-within{border-color:var(--app-primary);box-shadow:0 0 0 3px var(--app-primary-soft)}.chat-composer-box .ant-input{padding:6px 0;font-size:14.5px;line-height:1.7;background:transparent;resize:none}.chat-composer-tools{display:flex;align-items:center;min-height:26px}.chat-model-switcher{max-width:min(360px,70vw);color:var(--app-text-secondary)}.chat-model-switcher .ant-select-selector{padding-inline:0 8px!important;font-size:12px!important}.chat-model-switcher .ant-select-selection-item{color:var(--app-text-secondary)}.chat-send-btn{flex:none}.chat-composer-hint{margin-top:8px;font-size:11.5px;line-height:1.6;text-align:center;color:var(--app-text-tertiary)}.provider-probe-preview{max-height:160px;margin:0;padding:9px 10px;overflow:auto;border-radius:7px;background:var(--app-bg-subtle);color:var(--app-text-secondary);font-size:12px;line-height:1.6;white-space:pre-wrap;word-break:break-all}.md-body>:first-child{margin-top:0}.md-body>:last-child{margin-bottom:0}.md-body p{margin:0 0 12px}.md-body h1,.md-body h2,.md-body h3,.md-body h4{margin:20px 0 10px;font-weight:650;line-height:1.4;color:var(--app-text)}.md-body h1{font-size:19px}.md-body h2{font-size:17px}.md-body h3{font-size:15.5px}.md-body ul,.md-body ol{margin:0 0 12px;padding-inline-start:22px}.md-body li{margin:4px 0}.md-body li>p{margin:0}.md-body a{color:var(--app-primary);text-decoration:none}.md-body a:hover{text-decoration:underline}.md-body strong{font-weight:650}.md-body code{padding:2px 5px;border-radius:5px;background:var(--app-bg-subtle);border:1px solid var(--app-border);font-family:ui-monospace,SF Mono,Consolas,Cascadia Mono,monospace;font-size:.88em}.md-body pre{margin:0 0 12px;padding:12px 14px;border-radius:11px;background:var(--app-bg-subtle);border:1px solid var(--app-border);overflow-x:auto}.md-body pre code{padding:0;border:0;background:none;font-size:12.5px;line-height:1.65}.md-body blockquote{margin:0 0 12px;padding:2px 0 2px 13px;border-inline-start:3px solid var(--app-border-strong);color:var(--app-text-secondary)}.md-body hr{margin:16px 0;border:0;border-top:1px solid var(--app-border)}.md-body table{width:100%;margin:0 0 12px;border-collapse:collapse;font-size:13px}.md-body th,.md-body td{padding:7px 10px;border:1px solid var(--app-border);text-align:left}.md-body th{background:var(--app-bg-subtle);font-weight:650}@media(max-width:1080px){.chat-side{flex:0 0 208px}}@media(max-width:820px){.chat-side{display:none}.chat-thread-inner,.chat-composer-inner{max-width:none}.chat-thread-inner{padding:18px 14px 8px}.chat-composer-wrap{padding:6px 14px 12px}.msg-user{max-width:88%}.chat-turn-nav{inset-inline-end:4px}}.auth-shell{min-height:100vh;display:flex;position:relative}.auth-brand-col{flex:0 0 clamp(360px,40vw,640px);display:flex;flex-direction:column;justify-content:center;padding:48px clamp(32px,4vw,72px);background:#0d0f12}.auth-form-col{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 24px}.auth-form-inner{width:100%;max-width:380px}.auth-headline{margin:0;font-size:30px;font-weight:700;line-height:1.46;letter-spacing:-.4px;color:#fff}.auth-headline-accent{color:#60a5fa}.auth-mobile-brand{display:none}@media(max-width:900px){.auth-brand-col{display:none}.auth-form-col{padding:24px 18px}.auth-mobile-brand{display:block}}.boot{display:flex;min-height:100vh}.boot-side{width:232px;flex:0 0 232px;background:var(--app-bg-container, var(--app-bg-layout));border-right:1px solid var(--app-border, rgba(140, 140, 140, .18));padding:18px 16px;box-sizing:border-box}.boot-main{flex:1;padding:18px 22px;box-sizing:border-box}.boot-bar{height:12px;border-radius:6px;margin-bottom:12px;background:var(--app-border, rgba(140, 140, 140, .18))}.boot-row{height:44px;border-radius:8px;margin-bottom:10px;background:var(--app-bg-container, transparent);border:1px solid var(--app-border, rgba(140, 140, 140, .18))}.boot-tip{color:var(--app-text-secondary, #8a94a6);font:13px/1.6 -apple-system,Segoe UI,Microsoft YaHei,sans-serif;margin-top:14px}@media(max-width:767px){.boot-side{display:none}}.brand-mark-logo{background:#c0392b;display:grid;place-items:center;overflow:hidden}.brand-mark-logo svg{width:58%;height:58%;display:block}.brand-mark-text{display:flex;flex-direction:column;gap:3px;min-width:0}.brand-mark-text b{font-size:13px;font-weight:650;letter-spacing:.02em;line-height:1;color:var(--app-text)}.brand-mark-text i{font:500 8.5px/1 ui-monospace,SF Mono,Consolas,Cascadia Mono,monospace;font-style:normal;letter-spacing:.16em;color:var(--app-text-tertiary)}.brand-mark--onBrand .brand-mark-text b{color:#fff}.brand-mark--onBrand .brand-mark-text i{color:#ffffff73}@media(max-width:1180px){.app-header-description,.app-user-chip .ant-tag{display:none}}@media(max-width:720px){.app-header-title{font-size:16px!important}.app-user-chip{display:none!important}.app-content-inner{padding:14px}.chat-composer-wrap{padding:6px 14px 12px}}@media(prefers-reduced-motion:reduce){body{transition:none}}
