.parameters-drawer .ant-form-item{margin-bottom:16px}.parameters-drawer .ant-collapse-ghost>.ant-collapse-item>.ant-collapse-content>.ant-collapse-content-box{padding-top:12px;padding-bottom:12px}.parameters-drawer h4{margin-bottom:12px;font-weight:500}.parameters-drawer .ant-drawer-body{overflow-y:auto;scrollbar-width:none}.parameters-drawer .ant-drawer-body::-webkit-scrollbar{display:none}.quantization-selector{max-height:500px;overflow-y:auto;padding-right:8px}.recommended-banner{padding:12px 16px;background:#e6f7ff;border:1px solid #91d5ff;border-radius:8px;margin-bottom:16px}[data-theme=dark] .recommended-banner{background:#111d2c;border-color:#15395b}.quantization-selector::-webkit-scrollbar{width:8px}.quantization-selector::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.quantization-selector::-webkit-scrollbar-thumb{background:#888;border-radius:4px}.quantization-selector::-webkit-scrollbar-thumb:hover{background:#555}.quantization-category{margin-bottom:16px}.category-header{margin-bottom:8px}.quantization-item{width:100%;border:1px solid #d9d9d9;border-radius:6px;transition:all .3s;background:#fff}.quantization-item:hover{border-color:#40a9ff;box-shadow:0 2px 8px #0000001a}.quantization-item.current{border-color:#1890ff;border-width:2px}.quantization-item.downloading{border-color:#1890ff}[data-theme=dark] .quantization-selector::-webkit-scrollbar-track{background:#1f1f1f}[data-theme=dark] .quantization-selector::-webkit-scrollbar-thumb{background:#434343}[data-theme=dark] .quantization-selector::-webkit-scrollbar-thumb:hover{background:#595959}[data-theme=dark] .quantization-item{background:#141414;border-color:#434343;color:#e0e0e0}[data-theme=dark] .quantization-item:hover{border-color:#1890ff;background:#1a1a1a}[data-theme=dark] .quantization-item.current,[data-theme=dark] .quantization-item.downloading{border-color:#1890ff}.required-models-panel{margin:16px 0}.required-models-panel .ant-table{font-size:13px}.required-models-panel .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.asr-models-table{font-size:13px}.asr-models-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600}.model-card,.model-card .ant-card-body{height:100%;display:flex;flex-direction:column}.model-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;min-height:24px}.model-header h3{margin:0;flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:14px}.model-size-badge{font-size:12px;color:#999;white-space:nowrap}.model-header h3{margin:0;font-size:16px;font-weight:600;color:#000000d9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:70%}.model-source{font-size:12px;color:#00000073;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.model-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.model-meta .model-source{margin-bottom:0}.model-description{color:#000000a6;font-size:14px;margin-bottom:12px;line-height:1.5;height:42px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.model-card-footer{margin-top:auto}.model-quantization{margin-bottom:12px;min-height:32px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.model-size{font-size:12px;color:#00000073;margin-bottom:8px}.download-progress{margin-top:16px}[data-theme=dark] .model-header h3{color:#fffffff2!important}[data-theme=dark] .model-source{color:#ffffff73!important}[data-theme=dark] .model-description{color:#ffffffbf!important}[data-theme=dark] .model-size{color:#ffffffa6!important}.workflow-analysis-view{margin:16px 0}.workflow-analysis-view .ant-descriptions-item-label{font-weight:500;width:120px}.workflow-analysis-view .ant-descriptions-item-content{padding:8px}.comfyui-instance-card{background:var(--card-bg, #fafafa);border:1px solid var(--border-color, #f0f0f0);border-radius:8px;margin-bottom:12px}.comfyui-instance-card:hover{border-color:#1890ff}.tts-layout{height:100vh;display:flex;flex-direction:column}.tts-center{display:flex;justify-content:center;align-items:center;flex:1}.tts-header{background:inherit;padding:0 24px;border-bottom:1px solid var(--ant-color-border-secondary, rgba(128,128,128,.15));display:flex;justify-content:space-between;align-items:center}.tts-dot{width:8px;height:8px;border-radius:50%;display:inline-block;background:currentColor;opacity:.25}.tts-dot.on{background:#52c41a;opacity:1;animation:tts-pulse 1.5s ease-in-out infinite}@keyframes tts-pulse{0%,to{opacity:1}50%{opacity:.4}}.tts-body{flex:1;overflow:hidden;display:flex;gap:0;padding:0}.tts-col{display:flex;flex-direction:column;border-right:1px solid var(--ant-color-border-secondary, rgba(128,128,128,.15));overflow:hidden}.tts-col:last-child{border-right:none}.tts-col-left{width:260px;min-width:220px}.tts-col-mid{width:360px;min-width:300px;padding:16px;overflow-y:auto}.tts-col-right{flex:1;min-width:0}.tts-section-title{font-size:14px;font-weight:600;margin-bottom:12px;color:var(--ant-color-text, inherit);padding:0}.tts-col-mid .tts-section-title{padding:0}.tts-voice-list{flex:1;overflow-y:auto;min-height:0;padding:0 8px}.tts-empty{padding:48px 16px;text-align:center;color:var(--ant-color-text-quaternary, inherit);font-size:13px}.tts-voice-item{padding:10px 12px;cursor:pointer;border-radius:6px;transition:background .15s;display:flex;align-items:center;margin-bottom:2px}.tts-voice-item:hover{background:var(--ant-color-fill-quaternary, rgba(128,128,128,.06))}.tts-voice-item.active{background:#1890ff1f}.tts-voice-name{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.tts-voice-cat{font-size:11px;color:var(--ant-color-text-quaternary, inherit);margin:0 6px;flex-shrink:0}.tts-voice-bar{padding:12px;border-top:1px solid var(--ant-color-border-secondary, rgba(128,128,128,.15));flex-shrink:0}.tts-textarea{margin-bottom:16px}.tts-settings{margin-top:8px}.tts-label{display:block;font-size:13px;color:var(--ant-color-text-secondary, inherit);margin:12px 0 6px}.tts-label:first-of-type{margin-top:0}.tts-row{display:flex;align-items:center;gap:12px}.tts-val{font-size:13px;font-variant-numeric:tabular-nums;min-width:48px;text-align:right;color:var(--ant-color-text-secondary, inherit)}.tts-player{padding:14px 16px;border-bottom:1px solid var(--ant-color-border-secondary, rgba(128,128,128,.15));flex-shrink:0}.tts-player-info{font-size:13px;color:var(--ant-color-text-tertiary, inherit);margin-bottom:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tts-audio{width:100%;height:36px;border-radius:4px}.tts-history{flex:1;overflow-y:auto;min-height:0;padding:8px}.tts-history-item{padding:10px 12px;cursor:pointer;border-radius:6px;transition:background .15s;margin-bottom:4px}.tts-history-item:hover{background:var(--ant-color-fill-quaternary, rgba(128,128,128,.06))}.tts-history-item.active{background:#1890ff1f}.tts-history-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.tts-history-text{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;margin-right:8px;color:var(--ant-color-text, inherit)}.tts-history-meta{font-size:12px;color:var(--ant-color-text-quaternary, inherit)}.add-model-card{border:2px dashed rgba(0,0,0,.2);border-radius:8px;padding:40px 20px;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;min-height:200px}.add-model-card:hover{border-color:#1890ff;color:#1890ff}.add-model-content{text-align:center}.add-icon{font-size:32px;color:#00000040;margin-bottom:12px}.tts-content{flex:1;min-height:0;overflow:hidden}.tts-param-group{margin-bottom:8px}.tts-param-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.tts-param-label{font-size:12px;color:var(--ant-color-text-secondary, #666);white-space:nowrap;min-width:48px}.tts-param-value{font-size:12px;color:var(--ant-color-text-tertiary, #999);min-width:32px;text-align:right}.home-layout{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--app-bg);color:var(--app-text)}.home-header{background:inherit;padding:0 24px;border-bottom:1px solid var(--app-border-strong);flex-shrink:0;z-index:100}.home-header-inner{display:flex;align-items:center;width:100%;height:100%}.home-header-left{flex:1;display:flex;align-items:center}.home-header-center{display:flex;justify-content:center;align-items:center}.home-header-right{flex:1;display:flex;justify-content:flex-end;align-items:center}.home-content{flex:1;display:flex;flex-direction:column;overflow:hidden;width:100%}.home-toolbar-bar{flex-shrink:0}.home-scroll-area{flex:1;overflow-y:auto;width:100%;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s}.home-scroll-area:hover,.home-scroll-area:focus-within{scrollbar-color:var(--app-scrollbar) transparent}.home-scroll-area::-webkit-scrollbar{width:6px}.home-scroll-area::-webkit-scrollbar-track{background:transparent}.home-scroll-area::-webkit-scrollbar-thumb{background:transparent;border-radius:3px;transition:background .3s}.home-scroll-area:hover::-webkit-scrollbar-thumb{background:var(--app-scrollbar)}.home-content-inner{padding:16px 24px;max-width:1400px;margin:0 auto}.home-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.home-toolbar .ant-tabs{margin-bottom:0}.model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.add-model-card{border:2px dashed color-mix(in srgb,var(--app-text-tertiary) 55%,transparent);border-radius:8px;padding:40px 20px;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;min-height:200px;background:var(--app-surface)}.add-model-card:hover{border-color:#1890ff;background:var(--app-hover-bg)}.add-model-content{text-align:center;color:var(--app-text-secondary)}.add-icon{font-size:48px;color:var(--app-text-tertiary);margin-bottom:12px}.update-banner{display:flex;align-items:center;justify-content:space-between;padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;animation:bannerSlideDown .4s ease-out;flex-shrink:0}@keyframes bannerSlideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}.update-banner-content{display:flex;align-items:center;gap:12px}.update-banner-icon{font-size:20px;animation:bannerPulse 2s ease-in-out infinite}@keyframes bannerPulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.update-banner-text{font-size:14px}.update-banner-text strong{color:gold}.update-banner-btn.ant-btn-primary{background:#fff3;border:1px solid rgba(255,255,255,.5);border-radius:16px;font-weight:500;padding:0 16px}.update-banner-btn.ant-btn-primary:hover{background:#ffffff59;border-color:#fff}.update-banner-close{cursor:pointer;font-size:14px;opacity:.7;transition:opacity .2s;padding:4px}.update-banner-close:hover{opacity:1}.engine-update-banner{background:linear-gradient(135deg,#667eea,#764ba2)}[data-theme=dark] .home-header{border-bottom:1px solid rgba(255,255,255,.1)}[data-theme=dark] .add-model-card{border:2px dashed rgba(255,255,255,.3)!important}[data-theme=dark] .add-model-content{color:#ffffffd9!important}[data-theme=dark] .add-icon{color:#ffffffa6!important}.llm-chat-layout{height:100vh;display:flex;flex-direction:column}.llm-chat-header{background:inherit;padding:0 24px;border-bottom:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center}.llm-chat-content{flex:1;overflow-y:auto;padding:24px}.messages-container{max-width:900px;margin:0 auto}.message{margin-bottom:24px;display:flex;gap:12px}.message-role{font-weight:600;min-width:60px;color:#1890ff}.message.user .message-role{color:#52c41a}.message-content{flex:1;line-height:1.6;white-space:pre-wrap}.llm-chat-footer{background:inherit;border-top:1px solid rgba(255,255,255,.1);padding:16px 24px}.asr-use-page{padding:24px;max-width:1400px;margin:0 auto}.asr-use-header{display:flex;align-items:center;gap:16px;margin-bottom:16px}.asr-use-header h2{margin:0}.asr-use-content{display:flex;gap:24px}.asr-use-config{width:380px;flex-shrink:0;display:flex;flex-direction:column;gap:12px}.asr-use-result{flex:1;min-width:0}.asr-upload-zone{margin-bottom:0}.asr-file-info{margin-top:8px;padding:8px;background:var(--ant-color-bg-container, #fafafa);border-radius:4px}.asr-param{margin-bottom:10px}.asr-param label{display:block;margin-bottom:4px;font-size:13px;color:var(--ant-color-text-secondary, #666)}.asr-transcribing{padding:16px 0;text-align:center}.asr-streaming-text{margin-top:12px;padding:12px;background:var(--ant-color-bg-container, #f5f5f5);border-radius:6px;font-size:16px;line-height:1.8;white-space:pre-wrap;word-break:break-word;text-align:left;min-height:60px}.asr-cursor{display:inline-block;animation:blink 1s step-end infinite;color:var(--ant-color-primary, #1677ff);font-weight:700}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.asr-result-text{margin:0;padding:12px;background:var(--ant-color-bg-container, #f5f5f5);border-radius:6px;font-size:15px;line-height:1.8;white-space:pre-wrap;word-break:break-word;max-height:500px;overflow-y:auto}.asr-waiting{padding:32px 0;text-align:center;color:var(--ant-color-text-secondary, #999)}@media (max-width: 768px){.asr-use-content{flex-direction:column}.asr-use-config{width:100%}}.ocr-use-page{padding:24px}.ocr-use-header{display:flex;align-items:center;gap:16px;margin-bottom:24px}.ocr-model-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:16px}@media (max-width: 960px){.ocr-model-grid{grid-template-columns:1fr}}.gs-layout{height:100vh;display:flex;flex-direction:column;overflow:hidden;background:var(--app-bg);color:var(--app-text)}.gs-header{background:var(--app-surface);color:var(--app-text);padding:0 24px;display:flex;align-items:center;border-bottom:1px solid var(--app-border);flex-shrink:0;z-index:100}.gs-body{flex:1;overflow:hidden}.gs-sider{background:var(--app-surface)!important;border-right:1px solid var(--app-border);overflow-y:auto!important}.gs-content{display:flex;flex-direction:column;overflow:hidden;padding:0!important;background:var(--app-bg)}.gs-appearance-card .ant-card-body{padding:20px 24px}.gs-section-head{flex-shrink:0;background:var(--app-surface);color:var(--app-text);padding:12px 24px;min-height:56px;display:flex;align-items:center;justify-content:space-between;border:1px solid var(--app-border);border-radius:8px 8px 0 0;margin:24px 24px 0}.gs-section-title{font-size:16px;font-weight:600}.gs-section-body{flex:1;overflow-y:auto;scrollbar-width:thin;scrollbar-color:transparent transparent;transition:scrollbar-color .3s}.gs-section-body:hover{scrollbar-color:var(--app-scrollbar) transparent}.gs-section-card{margin:0 24px 24px!important;border-top-left-radius:0!important;border-top-right-radius:0!important;border-top:none!important}[data-theme=dark] .gs-header,[data-theme=dark] .gs-sider,[data-theme=dark] .gs-section-head{color:var(--app-text)}.gs-section-card .ant-tabs{flex:1;display:flex;flex-direction:column;min-height:0}.gs-section-card .ant-tabs-content-holder{flex:1;min-height:0}.gs-section-card .ant-tabs-content{height:100%}.gs-section-card .ant-tabs-tabpane-active{height:100%;display:flex;flex-direction:column}.log-tab-content{flex:1;min-height:0;display:flex;flex-direction:column}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--app-bg);color:var(--app-text);transition:background-color .2s ease,color .2s ease}:root{--app-bg: #f5f7fa;--app-surface: #ffffff;--app-surface-secondary: #fafafa;--app-text: rgba(0, 0, 0, .88);--app-text-secondary: rgba(0, 0, 0, .65);--app-text-tertiary: rgba(0, 0, 0, .45);--app-border: #f0f0f0;--app-border-strong: rgba(0, 0, 0, .1);--app-scrollbar: rgba(0, 0, 0, .25);--app-hover-bg: rgba(24, 144, 255, .05)}[data-theme=dark]{--app-bg: #0f1115;--app-surface: #141414;--app-surface-secondary: #1f1f1f;--app-text: rgba(255, 255, 255, .92);--app-text-secondary: rgba(255, 255, 255, .72);--app-text-tertiary: rgba(255, 255, 255, .45);--app-border: rgba(255, 255, 255, .12);--app-border-strong: rgba(255, 255, 255, .18);--app-scrollbar: rgba(255, 255, 255, .28);--app-hover-bg: rgba(24, 144, 255, .16)}*{box-sizing:border-box}
