@midscene/android-playground 1.0.2-beta-20251219034434.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +5 -5
- package/static/index.html +1 -1
- package/static/static/css/{index.3784ddf6.css → index.61d18db5.css} +2 -2
- package/static/static/css/{index.3784ddf6.css.map → index.61d18db5.css.map} +1 -1
- package/static/static/js/{861.1a36955c.js → 633.e47255c9.js} +6 -6
- package/static/static/js/{861.1a36955c.js.map → 633.e47255c9.js.map} +1 -1
- package/static/static/js/{index.f5d4796a.js → index.d842c302.js} +5 -5
- package/static/static/js/index.d842c302.js.map +1 -0
- package/static/static/js/index.f5d4796a.js.map +0 -1
- /package/static/static/js/{861.1a36955c.js.LICENSE.txt → 633.e47255c9.js.LICENSE.txt} +0 -0
- /package/static/static/js/{index.f5d4796a.js.LICENSE.txt → index.d842c302.js.LICENSE.txt} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"static/css/index.3784ddf6.css","sources":["../../../home/runner/work/midscene/midscene/apps/android-playground/src/App.less","../../../src/App.less","../../../../../packages/visualizer/dist/es/component/screenshot-viewer/index.css","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/adb-device/index.less","../../../src/components/adb-device/index.less","../../../../../packages/visualizer/dist/es/component/logo/index.css","../../../../../packages/visualizer/dist/es/component/nav-actions/style.css","../../../../../packages/visualizer/dist/es/component/blackboard/index.css","../../../../../packages/visualizer/dist/es/component/shiny-text/index.css","../../../../../packages/visualizer/dist/es/component/env-config-reminder/index.css","../../../../../packages/visualizer/dist/es/component/player/index.css","../../../../../packages/visualizer/dist/es/component/playground-result/index.css","../../../../../packages/visualizer/dist/es/component/universal-playground/index.css","../../../../../packages/visualizer/dist/es/component/prompt-input/index.css","../../../../../packages/visualizer/dist/es/component/history-selector/index.css","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/playground-panel/index.less","../../../src/components/playground-panel/index.less","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/scrcpy-player/index.less","../../../src/components/scrcpy-player/index.less"],"sourcesContent":["body {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\n font-size: 14px;\n}\n.app-container {\n width: 100%;\n height: 100vh;\n display: flex;\n flex-direction: column;\n background-color: #f5f5f5;\n}\n.app-content {\n height: 100vh;\n overflow: hidden;\n}\n.app-grid-layout {\n height: 100%;\n display: flex;\n}\n.app-grid-layout .ant-row {\n flex: 1;\n height: 100%;\n display: flex;\n flex-wrap: nowrap;\n width: 100%;\n}\n.app-panel {\n height: 100%;\n background-color: #fff;\n border-radius: 0;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n transition: box-shadow 0.3s;\n overflow: hidden;\n}\n.app-panel:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.09);\n}\n.app-panel.left-panel {\n overflow: hidden;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.app-panel.right-panel {\n border-radius: 0;\n flex: 1;\n overflow: hidden;\n box-shadow: -4px 0px 20px 0px #0000000a;\n}\n.panel-content {\n height: 100%;\n overflow: auto;\n display: flex;\n flex-direction: column;\n}\n.panel-content.left-panel-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n}\n.panel-content.right-panel-content {\n border-radius: 0;\n padding: 12px 24px 24px 24px;\n}\n.panel-content h2 {\n color: #000;\n font-size: 18px;\n margin-top: 16px;\n margin-bottom: 12px;\n}\n.panel-content canvas {\n max-width: 100%;\n margin-top: 16px;\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n}\n.command-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n}\n.command-form .form-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n gap: 24px;\n}\n.command-form .command-input-wrapper {\n margin-top: 8px;\n}\n.result-container {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n min-height: 0;\n position: relative;\n height: 100%;\n}\n.resize-handle {\n width: 2px;\n background-color: #f0f0f0;\n transition: background-color 0.2s;\n}\n.resize-handle:hover {\n background-color: #1677ff;\n}\n.panel-resize-handle {\n background-color: #f0f0f0;\n transition: background-color 0.2s;\n position: relative;\n}\n.panel-resize-handle.horizontal {\n width: 1px;\n cursor: col-resize;\n}\n.panel-resize-handle.vertical {\n height: 1px;\n cursor: row-resize;\n}\n.panel-resize-handle:hover {\n background-color: #1677ff;\n}\n.panel-resize-handle:active {\n background-color: #1677ff;\n}\n.panel-resize-handle[data-resize-handle-active] {\n background-color: #1677ff;\n}\n","body {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Noto Sans, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;\n font-size: 14px;\n}\n\n.app-container {\n background-color: #f5f5f5;\n flex-direction: column;\n width: 100%;\n height: 100vh;\n display: flex;\n}\n\n.app-content {\n height: 100vh;\n overflow: hidden;\n}\n\n.app-grid-layout {\n height: 100%;\n display: flex;\n}\n\n.app-grid-layout .ant-row {\n flex-wrap: nowrap;\n flex: 1;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.app-panel {\n background-color: #fff;\n border-radius: 0;\n height: 100%;\n transition: box-shadow .3s;\n overflow: hidden;\n box-shadow: 0 1px 2px #0000000d;\n}\n\n.app-panel:hover {\n box-shadow: 0 2px 8px #00000017;\n}\n\n.app-panel.left-panel {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.app-panel.right-panel {\n border-radius: 0;\n flex: 1;\n overflow: hidden;\n box-shadow: -4px 0 20px #0000000a;\n}\n\n.panel-content {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: auto;\n}\n\n.panel-content.left-panel-content {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.panel-content.right-panel-content {\n border-radius: 0;\n padding: 12px 24px 24px;\n}\n\n.panel-content h2 {\n color: #000;\n margin-top: 16px;\n margin-bottom: 12px;\n font-size: 18px;\n}\n\n.panel-content canvas {\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n max-width: 100%;\n margin-top: 16px;\n}\n\n.command-form {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.command-form .form-content {\n flex-direction: column;\n gap: 24px;\n height: 100%;\n display: flex;\n}\n\n.command-form .command-input-wrapper {\n margin-top: 8px;\n}\n\n.result-container {\n flex-direction: column;\n flex: 1;\n height: 100%;\n min-height: 0;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.resize-handle {\n background-color: #f0f0f0;\n width: 2px;\n transition: background-color .2s;\n}\n\n.resize-handle:hover {\n background-color: #1677ff;\n}\n\n.panel-resize-handle {\n background-color: #f0f0f0;\n transition: background-color .2s;\n position: relative;\n}\n\n.panel-resize-handle.horizontal {\n cursor: col-resize;\n width: 1px;\n}\n\n.panel-resize-handle.vertical {\n cursor: row-resize;\n height: 1px;\n}\n\n.panel-resize-handle:hover, .panel-resize-handle:active, .panel-resize-handle[data-resize-handle-active] {\n background-color: #1677ff;\n}\n",".screenshot-viewer {\n flex-direction: column;\n height: 100%;\n display: flex;\n}\n\n.screenshot-viewer.offline, .screenshot-viewer.loading, .screenshot-viewer.error {\n text-align: center;\n color: #666;\n justify-content: center;\n align-items: center;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder h3, .screenshot-viewer.loading .screenshot-placeholder h3, .screenshot-viewer.error .screenshot-placeholder h3 {\n color: #1890ff;\n text-transform: capitalize;\n margin-bottom: 12px;\n font-size: 18px;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder p, .screenshot-viewer.loading .screenshot-placeholder p, .screenshot-viewer.error .screenshot-placeholder p {\n color: #666;\n margin: 0;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder p.error-message, .screenshot-viewer.loading .screenshot-placeholder p.error-message, .screenshot-viewer.error .screenshot-placeholder p.error-message {\n color: #ff4d4f;\n}\n\n.screenshot-viewer .screenshot-header {\n justify-content: space-between;\n align-items: center;\n height: 56px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title {\n flex-direction: column;\n gap: 4px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title h3 {\n color: #000;\n text-transform: capitalize;\n align-items: center;\n gap: 8px;\n margin: 0;\n font-size: 14px;\n font-weight: 600;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title .screenshot-subtitle {\n color: #999;\n margin: 0;\n font-size: 12px;\n}\n\n.screenshot-viewer .screenshot-container {\n background: #f2f4f7;\n border-radius: 16px;\n flex-direction: column;\n flex: 1;\n padding: 0 15px;\n display: flex;\n overflow: hidden;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay {\n z-index: 10;\n justify-content: space-between;\n align-items: flex-start;\n padding: 12px 5px 8px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay {\n color: rgba(0, 0, 0, .85);\n text-transform: capitalize;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n font-weight: 500;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay .info-icon {\n opacity: .8;\n cursor: pointer;\n font-size: 12px;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay .info-icon:hover {\n opacity: 1;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls {\n opacity: 1;\n box-sizing: border-box;\n border-radius: 4px;\n align-items: center;\n gap: 10px;\n height: 18px;\n padding: 4px 8px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .last-update-time {\n color: #666;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-size: 12px;\n overflow: hidden;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .operation-indicator {\n align-items: center;\n gap: 4px;\n font-size: 12px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn {\n box-shadow: none;\n background: none;\n border: none;\n justify-content: center;\n align-items: center;\n width: 16px;\n min-width: 16px;\n height: 16px;\n padding: 0;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn:hover {\n background-color: rgba(0, 0, 0, .06);\n border-radius: 2px;\n transition: all .2s;\n transform: scale(1.1);\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn .anticon {\n color: #666;\n font-size: 12px;\n transition: color .2s;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content {\n flex: 1;\n justify-content: center;\n align-items: center;\n min-height: 0;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content .screenshot-image {\n object-fit: contain;\n border-radius: 12px;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content .screenshot-placeholder {\n text-align: center;\n color: #999;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline, [data-theme=\"dark\"] .screenshot-viewer.loading, [data-theme=\"dark\"] .screenshot-viewer.error {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder h3, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder h3, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder h3 {\n color: #1890ff;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder p, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder p, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder p {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder p.error-message, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder p.error-message, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder p.error-message {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-header .screenshot-title h3 {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-header .screenshot-title .screenshot-subtitle {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container {\n background: #141414;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay, [data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .last-update-time {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn:hover {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn .anticon {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-content .screenshot-placeholder {\n color: rgba(255, 255, 255, .45);\n}\n\n",".device-header {\n display: flex;\n align-items: center;\n margin-bottom: 16px;\n}\n.device-header .device-title-container {\n display: flex;\n align-items: center;\n}\n.device-header .device-title {\n margin: 0;\n font-size: 18px;\n color: #000;\n margin-right: 12px;\n display: flex;\n align-items: center;\n height: 32px;\n}\n.device-info-display {\n display: flex;\n align-items: center;\n padding: 4px 12px 4px 8px;\n background: #f0f0f0;\n border-radius: 20px;\n height: 32px;\n}\n.device-info-display .device-icon-container {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #3b82f6;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n}\n.device-info-display .device-icon-container .device-icon {\n font-size: 14px;\n color: white;\n}\n.device-info-display .device-icon-container .status-indicator {\n position: absolute;\n right: -5px;\n bottom: -5px;\n display: flex;\n align-items: center;\n}\n.device-info-display .device-name {\n font-weight: bold;\n font-size: 16px;\n color: #333;\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin-left: 8px;\n}\n.device-info-display .device-name.no-device {\n color: #999;\n font-weight: normal;\n font-style: italic;\n}\n.device-dropdown {\n width: 430px;\n background: #fff;\n border-radius: 8px;\n overflow: hidden;\n box-shadow: 0px 10px 20px 0px #00000005;\n border: 1px solid #EAEDF1;\n}\n.device-dropdown .dropdown-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 16px 12px;\n}\n.device-dropdown .dropdown-header .dropdown-title {\n font-weight: bold;\n font-size: 16px;\n color: #333;\n}\n.device-dropdown .device-list-item {\n padding: 5px 17px 9px 6px;\n cursor: pointer;\n}\n.device-dropdown .device-list-item.selected {\n background: #2B83FF14;\n}\n.device-dropdown .device-list-item.offline {\n cursor: not-allowed;\n opacity: 0.5;\n}\n.device-dropdown .device-list-item .device-item-content {\n display: flex;\n align-items: center;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container {\n width: 34px;\n height: 34px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container .device-item-icon {\n font-size: 22px;\n color: #666;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info {\n flex: 1;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-name {\n font-weight: bold;\n font-size: 15px;\n color: #333;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status {\n display: flex;\n align-items: center;\n margin-top: 4px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge {\n display: flex;\n align-items: center;\n margin-right: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge .status-text {\n color: #666;\n font-size: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .device-id-container {\n color: #999;\n font-size: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .current-device-indicator {\n margin-left: auto;\n color: #1890ff;\n font-weight: bold;\n font-size: 13px;\n}\n.device-dropdown .device-list-empty {\n padding: 20px;\n text-align: center;\n color: #999;\n}\n.status-dot {\n margin-right: 4px;\n font-size: 12px;\n}\n.status-divider {\n margin: 0 4px;\n}\n",".device-header {\n align-items: center;\n margin-bottom: 16px;\n display: flex;\n}\n\n.device-header .device-title-container {\n align-items: center;\n display: flex;\n}\n\n.device-header .device-title {\n color: #000;\n align-items: center;\n height: 32px;\n margin: 0 12px 0 0;\n font-size: 18px;\n display: flex;\n}\n\n.device-info-display {\n background: #f0f0f0;\n border-radius: 20px;\n align-items: center;\n height: 32px;\n padding: 4px 12px 4px 8px;\n display: flex;\n}\n\n.device-info-display .device-icon-container {\n background: #3b82f6;\n border-radius: 50%;\n justify-content: center;\n align-items: center;\n width: 24px;\n height: 24px;\n display: flex;\n position: relative;\n}\n\n.device-info-display .device-icon-container .device-icon {\n color: #fff;\n font-size: 14px;\n}\n\n.device-info-display .device-icon-container .status-indicator {\n align-items: center;\n display: flex;\n position: absolute;\n bottom: -5px;\n right: -5px;\n}\n\n.device-info-display .device-name {\n color: #333;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 200px;\n margin-left: 8px;\n font-size: 16px;\n font-weight: bold;\n overflow: hidden;\n}\n\n.device-info-display .device-name.no-device {\n color: #999;\n font-style: italic;\n font-weight: normal;\n}\n\n.device-dropdown {\n background: #fff;\n border: 1px solid #eaedf1;\n border-radius: 8px;\n width: 430px;\n overflow: hidden;\n box-shadow: 0 10px 20px #00000005;\n}\n\n.device-dropdown .dropdown-header {\n justify-content: space-between;\n align-items: center;\n padding: 16px 16px 12px;\n display: flex;\n}\n\n.device-dropdown .dropdown-header .dropdown-title {\n color: #333;\n font-size: 16px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-item {\n cursor: pointer;\n padding: 5px 17px 9px 6px;\n}\n\n.device-dropdown .device-list-item.selected {\n background: #2b83ff14;\n}\n\n.device-dropdown .device-list-item.offline {\n cursor: not-allowed;\n opacity: .5;\n}\n\n.device-dropdown .device-list-item .device-item-content {\n align-items: center;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container {\n justify-content: center;\n align-items: center;\n width: 34px;\n height: 34px;\n margin-right: 12px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container .device-item-icon {\n color: #666;\n font-size: 22px;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info {\n flex: 1;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-name {\n color: #333;\n font-size: 15px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status {\n align-items: center;\n margin-top: 4px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge {\n align-items: center;\n margin-right: 12px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge .status-text {\n color: #666;\n font-size: 12px;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .device-id-container {\n color: #999;\n font-size: 12px;\n}\n\n.device-dropdown .device-list-item .device-item-content .current-device-indicator {\n color: #1890ff;\n margin-left: auto;\n font-size: 13px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-empty {\n text-align: center;\n color: #999;\n padding: 20px;\n}\n\n.status-dot {\n margin-right: 4px;\n font-size: 12px;\n}\n\n.status-divider {\n margin: 0 4px;\n}\n",".logo img {\n vertical-align: baseline;\n height: 30px;\n vertical-align: -webkit-baseline-middle;\n line-height: 30px;\n}\n\n.logo-with-star-wrapper {\n flex-direction: row;\n justify-content: space-between;\n display: flex;\n}\n\n",".nav-actions {\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.nav-actions .nav-icon {\n color: rgba(0, 0, 0, .65);\n cursor: pointer;\n font-size: 16px;\n transition: color .3s;\n}\n\n.nav-actions .nav-icon:hover {\n color: #2b83ff;\n}\n\n.nav-actions a {\n align-items: center;\n text-decoration: none;\n display: flex;\n}\n\n.nav-actions a:hover .nav-icon {\n color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .nav-actions .nav-icon {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .nav-actions .nav-icon:hover {\n color: #2b83ff;\n}\n\n",".blackboard .footer {\n color: #aaa;\n}\n\n.blackboard ul {\n padding-left: 0;\n}\n\n.blackboard li {\n list-style: none;\n}\n\n.blackboard .bottom-tip {\n height: 30px;\n}\n\n.blackboard .bottom-tip-item {\n color: #aaa;\n text-overflow: ellipsis;\n word-wrap: break-word;\n max-width: 500px;\n}\n\n.blackboard-filter {\n margin: 10px 0;\n}\n\n.blackboard-main-content canvas {\n box-sizing: border-box;\n border: 1px solid #888;\n width: 100%;\n}\n\n[data-theme=\"dark\"] .blackboard .footer, [data-theme=\"dark\"] .blackboard .bottom-tip-item {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .blackboard-main-content canvas {\n border-color: rgba(255, 255, 255, .12);\n}\n\n",".shiny-text {\n color: rgba(0, 0, 0, 0);\n letter-spacing: .5px;\n text-shadow: 0 1px 2px rgba(0, 0, 0, .05);\n background-image: linear-gradient(45deg, #2b83ff, #6a11cb, #2575fc, #4481eb);\n background-size: 300%;\n -webkit-background-clip: text;\n background-clip: text;\n font-weight: 600;\n animation: 8s infinite textGradient;\n display: inline-block;\n position: relative;\n overflow: hidden;\n}\n\n.shiny-text.theme-blue {\n background-image: linear-gradient(45deg, #2b83ff, #6a11cb, #2575fc, #4481eb);\n}\n\n.shiny-text.theme-purple {\n background-image: linear-gradient(45deg, #667eea, #764ba2, #b06ab3, #9d50bb);\n}\n\n.shiny-text.theme-green {\n background-image: linear-gradient(45deg, #11998e, #38ef7d, #2dd4bf, #10b981);\n}\n\n.shiny-text.theme-rainbow {\n background-image: linear-gradient(45deg, #ff0080, #ff8c00, #40e0d0, #9d50bb, #ff0080);\n background-size: 400%;\n}\n\n.shiny-text:after {\n content: \"\";\n width: 120%;\n height: 120%;\n animation: shine var(--animation-duration, 5s) cubic-bezier(.25, .1, .25, 1) infinite;\n z-index: 1;\n pointer-events: none;\n background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .1) 10%, rgba(255, 255, 255, .6) 50%, rgba(255, 255, 255, .1) 90%, rgba(255, 255, 255, 0) 100%);\n position: absolute;\n top: -10%;\n left: -150%;\n transform: skewX(-20deg)translateY(0);\n}\n\n.shiny-text.disabled {\n color: #000;\n background: none;\n font-weight: normal;\n animation: none;\n}\n\n.shiny-text.disabled:after {\n animation: none;\n display: none;\n}\n\n[data-theme=\"dark\"] .shiny-text {\n color: rgba(0, 0, 0, 0);\n -webkit-text-fill-color: transparent;\n text-shadow: none;\n background-image: linear-gradient(45deg, #a78bfa, #c084fc, #e879f9, #c084fc);\n background-size: 300%;\n -webkit-background-clip: text;\n background-clip: text;\n animation: 8s infinite textGradient;\n}\n\n[data-theme=\"dark\"] .shiny-text:after {\n background: linear-gradient(90deg, rgba(197, 184, 255, 0) 0%, rgba(197, 184, 255, .05) 10%, rgba(197, 184, 255, .15) 50%, rgba(197, 184, 255, .05) 90%, rgba(197, 184, 255, 0) 100%);\n}\n\n@keyframes shine {\n 0% {\n opacity: .7;\n left: -150%;\n }\n\n 20% {\n opacity: 1;\n }\n\n 80% {\n opacity: 1;\n }\n\n 100% {\n opacity: .7;\n left: 250%;\n }\n}\n\n@keyframes textGradient {\n 0% {\n background-position: 0%;\n }\n\n 50% {\n background-position: 100%;\n }\n\n 100% {\n background-position: 0%;\n }\n}\n\n",".env-config-reminder {\n background: #fff2e8;\n border-radius: 12px;\n align-items: center;\n gap: 12px;\n margin-bottom: 12px;\n padding: 12px 16px;\n display: flex;\n}\n\n.env-config-reminder .reminder-icon {\n color: #fa541c;\n width: 16px;\n height: 16px;\n}\n\n.env-config-reminder .reminder-text {\n color: #000;\n flex: 1;\n font-size: 14px;\n}\n\n[data-theme=\"dark\"] .env-config-reminder {\n background: rgba(82, 38, 7, .3);\n}\n\n[data-theme=\"dark\"] .env-config-reminder .reminder-text {\n color: #f8fafd;\n}\n\n",".player-container {\n box-sizing: border-box;\n background: #f2f4f7;\n border: 1px solid #f2f4f7;\n border-radius: 8px;\n flex-direction: column;\n width: 100%;\n max-width: 100%;\n height: 100%;\n min-height: 300px;\n max-height: 100%;\n margin: 0 auto;\n padding: 12px;\n line-height: 100%;\n display: flex;\n position: relative;\n overflow: visible;\n}\n\n.player-container[data-fit-mode=\"height\"] {\n background: #fff;\n}\n\n.player-container[data-fit-mode=\"height\"] .canvas-container {\n background-color: #f2f4f7;\n}\n\n.player-container .canvas-container {\n width: 100%;\n min-height: 200px;\n aspect-ratio: var(--canvas-aspect-ratio, 16 / 9);\n background-color: #fff;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n flex: none;\n justify-content: center;\n align-items: center;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.player-container .canvas-container canvas {\n box-sizing: border-box;\n object-fit: contain;\n border: none;\n width: 100%;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n margin: 0 auto;\n display: block;\n}\n\n.player-container .canvas-container[data-fit-mode=\"height\"] {\n aspect-ratio: unset;\n flex: auto;\n height: auto;\n min-height: 0;\n}\n\n.player-container .canvas-container[data-fit-mode=\"height\"] canvas {\n width: auto;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n}\n\n.player-container .canvas-container[data-fit-mode=\"width\"] {\n aspect-ratio: var(--canvas-aspect-ratio, 16 / 9);\n}\n\n.player-container .canvas-container[data-fit-mode=\"width\"] canvas {\n width: 100%;\n height: auto;\n}\n\n.player-container .player-timeline-wrapper {\n flex: none;\n width: 100%;\n height: 4px;\n margin-bottom: 2px;\n position: relative;\n}\n\n.player-container .player-timeline {\n background: #666;\n flex-shrink: 0;\n width: 100%;\n height: 4px;\n position: relative;\n}\n\n.player-container .player-timeline .player-timeline-progress {\n background: #2b83ff;\n height: 4px;\n transition-timing-function: linear;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.player-container .player-tools-wrapper {\n box-sizing: border-box;\n flex: none;\n width: 100%;\n height: 72px;\n padding: 15px 16px;\n position: relative;\n}\n\n.player-container .player-tools {\n color: #000;\n box-sizing: border-box;\n flex-direction: row;\n flex-shrink: 0;\n justify-content: space-between;\n width: 100%;\n max-width: 100%;\n height: 42px;\n font-size: 14px;\n display: flex;\n overflow: hidden;\n}\n\n.player-container .player-tools .ant-spin {\n color: #333;\n}\n\n.player-container .player-tools .player-control {\n flex-direction: row;\n flex-grow: 1;\n align-items: center;\n display: flex;\n overflow: hidden;\n}\n\n.player-container .player-tools .status-icon {\n border-radius: 8px;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 32px;\n height: 32px;\n margin-left: 10px;\n transition: all .2s;\n display: flex;\n}\n\n.player-container .player-tools .status-icon:hover {\n cursor: pointer;\n background: #f0f0f0;\n}\n\n.player-container .player-tools .status-text {\n flex-direction: column;\n flex-grow: 1;\n flex-shrink: 1;\n justify-content: space-between;\n width: 0;\n min-width: 0;\n height: 100%;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.player-container .player-tools .title {\n font-weight: 600;\n}\n\n.player-container .player-tools .title, .player-container .player-tools .subtitle {\n text-overflow: ellipsis;\n white-space: nowrap;\n width: 100%;\n overflow: hidden;\n}\n\n.player-container .player-tools .player-tools-item {\n flex-direction: column;\n justify-content: center;\n height: 100%;\n display: flex;\n}\n\n[data-theme=\"dark\"] .player-container {\n background: #141414;\n border-color: #292929;\n}\n\n[data-theme=\"dark\"] .player-container[data-fit-mode=\"height\"] {\n background: #292929;\n border-color: #292929;\n}\n\n[data-theme=\"dark\"] .player-container[data-fit-mode=\"height\"] .canvas-container {\n background-color: #141414;\n}\n\n[data-theme=\"dark\"] .player-container .canvas-container {\n background-color: #1f1f1f;\n}\n\n[data-theme=\"dark\"] .player-container .player-tools, [data-theme=\"dark\"] .player-container .player-tools .ant-spin, [data-theme=\"dark\"] .player-container .player-tools .status-icon svg {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .player-container .player-tools .status-icon:hover {\n background: rgba(255, 255, 255, .08);\n}\n\n",".result-wrapper {\n justify-content: center;\n height: 100%;\n margin: 4px 0;\n display: flex;\n}\n\n.result-wrapper .loading-container {\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.result-wrapper .loading-container .loading-progress-text {\n color: #888;\n margin-top: 8px;\n font-size: 12px;\n}\n\n.result-wrapper pre {\n white-space: pre-wrap;\n text-wrap: unset;\n word-wrap: break-word;\n overflow-wrap: break-word;\n background: #f2f4f7;\n border-radius: 8px;\n margin: 0;\n padding: 14px;\n overflow: scroll;\n}\n\n[data-theme=\"dark\"] .result-wrapper .loading-container .loading-progress-text {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .result-wrapper pre {\n color: #f8fafd;\n background: rgba(255, 255, 255, .08);\n border: 1px solid rgba(255, 255, 255, .12);\n}\n\n",".playground-container {\n background: #fff;\n flex-direction: column;\n width: 100%;\n height: 100vh;\n display: flex;\n position: relative;\n}\n\n.playground-container .command-form {\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.playground-container .context-preview-section {\n border-bottom: 1px solid #f0f0f0;\n flex-shrink: 0;\n padding: 16px;\n}\n\n.playground-container .middle-dialog-area {\n flex-direction: column;\n flex: 1;\n min-height: 0;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.playground-container .middle-dialog-area .clear-button-container {\n z-index: 10;\n position: absolute;\n top: 16px;\n right: 0;\n}\n\n.playground-container .middle-dialog-area .clear-button-container .clear-button {\n opacity: .7;\n transition: opacity .2s;\n}\n\n.playground-container .middle-dialog-area .clear-button-container .clear-button:hover {\n opacity: 1;\n}\n\n.playground-container .middle-dialog-area .info-list-container {\n scrollbar-width: none;\n flex: 1;\n padding-top: 16px;\n padding-bottom: 16px;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item {\n border-bottom: none;\n padding: 0;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card {\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, .1);\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card:hover {\n box-shadow: 0 2px 6px rgba(0, 0, 0, .15);\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card .ant-card-body {\n padding: 12px;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-empty-text {\n color: #999;\n font-style: italic;\n}\n\n.playground-container .middle-dialog-area .info-list-container::-webkit-scrollbar {\n display: none;\n}\n\n.playground-container .middle-dialog-area .info-list-container .list-item {\n background: none;\n border: none;\n padding: 0;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button {\n z-index: 10;\n background: #fff;\n border: 1px solid rgba(0, 0, 0, .08);\n position: absolute;\n bottom: 10px;\n right: 0;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button:hover {\n background: #1890ff;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button:hover .anticon {\n color: #fff;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button .anticon {\n color: #333;\n font-size: 16px;\n}\n\n.playground-container .user-message-container {\n justify-content: flex-end;\n width: 100%;\n margin: 20px 0 30px;\n display: flex;\n}\n\n.playground-container .user-message-container .user-message-bubble {\n color: rgba(0, 0, 0, .85);\n text-align: left;\n background: #f2f4f7;\n border-radius: 12px;\n max-width: 80%;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 400;\n display: inline-block;\n}\n\n.playground-container .progress-action-item {\n color: #000;\n background: #f2f4f7;\n border-radius: 8px;\n justify-content: space-between;\n height: 36px;\n margin: 4px 0;\n padding: 0 12px;\n font-size: 14px;\n line-height: 36px;\n display: flex;\n}\n\n.playground-container .progress-action-item .progress-status-icon {\n margin-left: 4px;\n}\n\n.playground-container .progress-action-item .progress-status-icon.loading {\n color: #1890ff;\n}\n\n.playground-container .progress-action-item .progress-status-icon.completed {\n color: #52c41a;\n}\n\n.playground-container .progress-action-item .progress-status-icon.error {\n color: #ff4d4f;\n font-weight: bold;\n}\n\n.playground-container .progress-description {\n padding: 8px 0;\n font-size: 14px;\n line-height: 22px;\n display: inline-block;\n}\n\n.playground-container .system-message-container {\n flex-direction: column;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-header {\n align-items: center;\n gap: 8px;\n margin: 12px 0;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-header .system-message-title {\n font-size: 12px;\n font-weight: 400;\n line-height: 100%;\n}\n\n.playground-container .system-message-container .system-message-content {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n}\n\n.playground-container .system-message-container .system-message-content .system-message-text {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n line-height: 25px;\n}\n\n.playground-container .system-message-container .system-message-content .error-message {\n color: #e51723;\n word-break: break-word;\n background-color: #fff;\n border: none;\n border-radius: 0;\n align-items: flex-start;\n margin-bottom: 16px;\n padding: 0;\n font-size: 14px;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-content .error-message .divider {\n background-color: #e6e8eb;\n flex-shrink: 0;\n align-self: stretch;\n width: 1px;\n min-height: 20px;\n margin: 0 8px 0 0;\n}\n\n.playground-container .system-message-container .system-message-content .loading-progress-text {\n color: #666;\n background: #f6f8fa;\n border-left: 3px solid #1890ff;\n border-radius: 4px;\n margin-top: 8px;\n padding: 8px 12px;\n font-size: 13px;\n}\n\n.playground-container .new-conversation-separator {\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n padding: 20px 0;\n display: flex;\n position: relative;\n}\n\n.playground-container .new-conversation-separator .separator-line {\n background-color: #e8e8e8;\n height: 1px;\n position: absolute;\n top: 50%;\n left: 0;\n right: 0;\n}\n\n.playground-container .new-conversation-separator .separator-text-container {\n z-index: 1;\n background-color: #fff;\n padding: 0 16px;\n position: relative;\n}\n\n.playground-container .new-conversation-separator .separator-text-container .separator-text {\n color: #999;\n background-color: #fff;\n font-size: 12px;\n}\n\n.playground-container .bottom-input-section {\n background-color: #fff;\n flex-shrink: 0;\n padding: 16px 0 0;\n}\n\n.playground-container .version-info-section {\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n height: 38px;\n display: flex;\n}\n\n.playground-container .version-text {\n color: #999;\n text-align: center;\n font-size: 12px;\n}\n\n.playground-container .hidden-result-ref {\n display: none;\n}\n\n.playground-container .playground-description {\n margin-bottom: 32px;\n}\n\n.playground-container .playground-description .description-zh {\n color: #333;\n margin: 0 0 8px;\n font-size: 16px;\n line-height: 1.5;\n}\n\n.playground-container .playground-description .description-en {\n color: #666;\n margin: 0;\n font-size: 14px;\n line-height: 1.5;\n}\n\n.playground-container .config-section {\n margin-bottom: 24px;\n}\n\n.playground-container .config-section .config-title {\n color: #333;\n margin: 0 0 16px;\n font-size: 18px;\n font-weight: 600;\n}\n\n.playground-container .config-section .config-item {\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n display: flex;\n}\n\n.playground-container .config-section .config-item .config-check {\n color: #52c41a;\n font-size: 16px;\n}\n\n.playground-container .config-section .config-item .config-label {\n color: #333;\n font-size: 14px;\n}\n\n.playground-container .config-section .config-link {\n color: #1890ff;\n font-size: 14px;\n text-decoration: none;\n}\n\n.playground-container .config-section .config-link:hover {\n text-decoration: underline;\n}\n\n[data-theme=\"dark\"] .universal-playground .error-hint {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator.error {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator.success {\n color: #52c41a;\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-label {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .alert-message {\n color: #f8fafd;\n background-color: rgba(82, 38, 7, .3);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-icon-wrapper {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-content {\n background-color: rgba(0, 0, 0, 0);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-content .operation-title {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .playground-footer {\n background-color: rgba(255, 255, 255, .04);\n}\n\n[data-theme=\"dark\"] .universal-playground .playground-footer .status-text {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .results-info {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-title, [data-theme=\"dark\"] .universal-playground .result-section .result-details, [data-theme=\"dark\"] .universal-playground .result-section .result-value {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-value.success {\n color: #52c41a;\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-value.error {\n color: #ff4d4f;\n}\n\n",".prompt-input-wrapper {\n box-sizing: border-box;\n width: 100%;\n padding: 0 4px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper {\n align-items: center;\n gap: 8px;\n display: flex;\n position: relative;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group {\n scrollbar-width: thin;\n flex: 1;\n align-items: center;\n gap: 8px;\n min-width: 0;\n height: 100%;\n margin-right: 60px;\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar {\n height: 6px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-thumb:hover {\n background: #a8a8a8;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-form-item {\n flex-shrink: 0;\n margin: 0 !important;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-form-item .ant-radio-group {\n flex-wrap: nowrap;\n gap: 8px;\n display: flex;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper {\n height: 24px;\n box-shadow: none;\n white-space: nowrap;\n background-color: #f7f7f7;\n border: none;\n border-radius: 11px;\n flex-shrink: 0;\n margin-right: 0;\n padding: 0 8px;\n font-size: 12px;\n line-height: 24px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper:before {\n display: none;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper:focus-within {\n outline: none;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff;\n background-color: #2b83ff;\n border-color: #2b83ff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked:hover {\n color: #fff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-dropdown-trigger {\n flex-shrink: 0;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button {\n height: 24px;\n box-shadow: none;\n white-space: nowrap;\n background-color: #f7f7f7;\n border: none;\n border-radius: 11px;\n flex-shrink: 0;\n align-items: center;\n gap: 2px;\n max-width: 160px;\n padding: 0 8px;\n font-size: 12px;\n display: inline-flex;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button .ant-btn-content {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button:hover {\n background-color: #e6e6e6;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown {\n color: #fff;\n background-color: #2b83ff;\n font-weight: 500;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown:hover {\n background-color: #2b83ff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .action-icons {\n z-index: 10;\n pointer-events: none;\n background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(255, 255, 255, .5) 20%, rgba(255, 255, 255, .8) 40%, rgba(255, 255, 255, .95) 60%, #fff 70%);\n flex-shrink: 0;\n justify-content: flex-end;\n align-items: center;\n gap: 8px;\n width: 80px;\n padding-left: 20px;\n display: flex;\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .action-icons > * {\n pointer-events: auto;\n}\n\n.prompt-input-wrapper .main-side-console-input {\n z-index: 1;\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n border-radius: 12px;\n margin-top: 10px;\n padding-bottom: 56px;\n position: relative;\n}\n\n@keyframes hue-shift {\n 0% {\n -webkit-filter: hue-rotate();\n filter: hue-rotate();\n }\n\n 100% {\n -webkit-filter: hue-rotate(360deg);\n filter: hue-rotate(360deg);\n }\n}\n\n.prompt-input-wrapper .main-side-console-input:focus-within {\n z-index: 10;\n box-shadow: 0 0 0 3px rgba(43, 131, 255, .16);\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea {\n resize: none;\n white-space: pre-wrap;\n scrollbar-width: thin;\n background: none;\n border: none;\n border-radius: 0;\n outline: none;\n min-height: 120px;\n padding: 12px 16px;\n line-height: 21px;\n transition: background-color .2s;\n position: relative;\n overflow-y: auto;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:focus {\n box-shadow: none;\n border: none;\n outline: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:focus-visible {\n box-shadow: none;\n border: none;\n outline: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:after {\n display: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea::-webkit-scrollbar {\n width: 6px;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, .2);\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .main-side-console-input.loading {\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n}\n\n.prompt-input-wrapper .main-side-console-input.loading:before {\n content: \"\";\n -webkit-mask-composite: xor;\n pointer-events: none;\n z-index: -1;\n background: linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%);\n border-radius: 12px;\n padding: 1px;\n animation: 5s linear infinite hue-shift;\n position: absolute;\n top: -1px;\n bottom: -1px;\n left: -1px;\n right: -1px;\n -webkit-mask-image: linear-gradient(#fff 0, #fff 0), linear-gradient(#fff 0, #fff 0);\n -webkit-mask-position: 0 0, 0 0;\n -webkit-mask-size: auto, auto;\n -webkit-mask-repeat: repeat, repeat;\n -webkit-mask-clip: content-box, border-box;\n -webkit-mask-origin: content-box, border-box;\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n -webkit-mask-source-type: auto, auto;\n mask-mode: match-source, match-source;\n}\n\n.prompt-input-wrapper .main-side-console-input.disabled .form-controller-wrapper {\n background-color: rgba(0, 0, 0, 0);\n}\n\n.prompt-input-wrapper .ant-form-item-with-help + .form-controller-wrapper {\n bottom: 14px;\n}\n\n.prompt-input-wrapper .ant-input {\n padding-bottom: 40px;\n}\n\n.prompt-input-wrapper .form-controller-wrapper {\n box-sizing: border-box;\n z-index: 1000;\n pointer-events: none;\n background-color: rgba(0, 0, 0, 0);\n flex-direction: row;\n justify-content: flex-end;\n align-items: flex-end;\n gap: 8px;\n width: calc(100% - 32px);\n height: 56px;\n padding: 12px 0;\n line-height: 32px;\n transition: background-color .2s;\n display: flex;\n position: absolute;\n bottom: 0;\n left: 16px;\n}\n\n.prompt-input-wrapper .form-controller-wrapper > * {\n pointer-events: auto;\n}\n\n.prompt-input-wrapper .form-controller-wrapper.with-strategy {\n justify-content: space-between;\n}\n\n.prompt-input-wrapper .planning-strategy-selector {\n color: #2b83ff;\n cursor: pointer;\n align-items: center;\n font-size: 13px;\n transition: opacity .2s;\n display: inline-flex;\n}\n\n.prompt-input-wrapper .planning-strategy-selector:hover {\n opacity: .8;\n}\n\n.prompt-input-wrapper .ant-dropdown-menu-item-selected {\n color: #2b83ff !important;\n background-color: #e6f4ff !important;\n}\n\n.prompt-input-wrapper .settings-wrapper {\n color: #777;\n flex-flow: wrap;\n gap: 2px;\n display: flex;\n}\n\n.prompt-input-wrapper .settings-wrapper.settings-wrapper-hover {\n color: #3b3b3b;\n}\n\n.prompt-input-wrapper .structured-params-container {\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n border-radius: 12px;\n padding: 16px 16px 56px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item {\n flex-direction: column;\n display: flex;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label {\n text-align: left;\n flex-basis: auto;\n padding-bottom: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label {\n color: rgba(0, 0, 0, .85);\n height: auto;\n font-size: 12px;\n font-weight: 500;\n line-height: 1.5;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:after {\n color: #ff4d4f;\n font-family: SimSun, sans-serif;\n font-size: 12px;\n line-height: 1;\n display: inline-block;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:-webkit-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:-moz-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:-webkit-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:-moz-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-control {\n flex: 1;\n margin-top: 0;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-row {\n flex-direction: column;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-control-input {\n min-height: auto;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input, .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number, .prompt-input-wrapper .structured-params-container .structured-params .ant-select {\n border: 1px solid #e1e5e9;\n border-radius: 6px;\n width: 100%;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input:hover, .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number:hover, .prompt-input-wrapper .structured-params-container .structured-params .ant-select:hover {\n border-color: #40a9ff;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params textarea.ant-input {\n padding-bottom: 5px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input-number .ant-input-number-input {\n box-shadow: none;\n border: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input-number:hover .ant-input-number-input {\n box-shadow: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select {\n min-width: 120px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select .ant-select-selector {\n box-shadow: none;\n border: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select:hover .ant-select-selector, .prompt-input-wrapper .structured-params-container .structured-params .ant-select.ant-select-focused .ant-select-selector {\n box-shadow: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group {\n width: 100%;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper {\n border: 1px solid #e1e5e9;\n border-radius: 6px;\n height: 32px;\n margin-right: 4px;\n font-size: 12px;\n line-height: 30px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff;\n background-color: #2b83ff;\n border-color: #2b83ff;\n}\n\n.selector-trigger {\n cursor: pointer;\n width: 24px;\n height: 24px;\n transition: all .2s;\n}\n\n.selector-trigger .action-icon {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n transition: all .2s;\n}\n\n.selector-trigger .action-icon:hover {\n color: #2b83ff;\n}\n\n.more-apis-dropdown .ant-dropdown-menu {\n scrollbar-width: thin;\n max-height: 400px;\n overflow-y: auto;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar {\n width: 6px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: #a8a8a8;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button:hover {\n background-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown {\n color: #fff !important;\n background-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .action-icons {\n background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(31, 31, 31, .5) 20%, rgba(31, 31, 31, .8) 40%, rgba(31, 31, 31, .95) 60%, #1f1f1f 70%) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input {\n background: #1f1f1f !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input:focus-within {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n border: 1px solid rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea {\n color: #f8fafd !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input.loading {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n border: 1px solid rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-input, [data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content textarea.ant-input {\n color: #f8fafd !important;\n background: rgba(255, 255, 255, .04) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-btn {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-btn.ant-btn-primary {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .form-controller-wrapper {\n background-color: rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .planning-strategy-selector {\n color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .planning-strategy-selector:hover {\n opacity: .8;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-dropdown-menu-item-selected {\n color: #2b83ff !important;\n background-color: rgba(43, 131, 255, .15) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-form-item-label > label {\n color: #f8fafd !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-input, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-select, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .04) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input .tip-button {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .prompt-input .tip-button.active {\n color: #fff;\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper {\n background-color: rgba(255, 255, 255, .04);\n}\n\n[data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper:hover, [data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper.focused {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .prompt-input .btn-wrapper .btn-item {\n color: #fff;\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .btn-wrapper .btn-item:hover {\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .dropdown-content {\n background-color: #1f1f1f;\n border-color: rgba(255, 255, 255, .12);\n}\n\n[data-theme=\"dark\"] .prompt-input .param-label {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .prompt-input .error-message {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .prompt-input .send-button-text {\n color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-track {\n background: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, .2);\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: rgba(255, 255, 255, .3);\n}\n\n",".history-selector-wrapper {\n position: relative;\n}\n\n.history-modal-overlay {\n z-index: 9999;\n background: #fff;\n border: 1px solid rgba(0, 0, 0, .08);\n border-radius: 12px;\n width: 320px;\n height: 400px;\n position: fixed;\n top: auto;\n bottom: 20px;\n right: 20px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, .12);\n}\n\n.history-modal-container {\n border-radius: 12px;\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.history-modal-container .history-modal-header {\n justify-content: space-between;\n align-items: center;\n height: 48px;\n padding: 0 25px;\n line-height: 48px;\n display: flex;\n}\n\n.history-modal-container .history-modal-header .close-button {\n justify-content: center;\n align-items: center;\n margin-right: -4px;\n padding: 4px;\n display: flex;\n}\n\n.history-modal-container .history-modal-header .close-button .anticon {\n color: #999;\n font-size: 18px;\n}\n\n.history-modal-container .history-modal-header .close-button:hover .anticon {\n color: #666;\n}\n\n.history-modal-container .history-search-section {\n background: #fff;\n padding: 16px 20px;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper {\n color: rgba(0, 0, 0, .25);\n align-items: center;\n gap: 12px;\n display: flex;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input {\n background: #f1f2f3;\n border: none;\n border-radius: 16px;\n flex: 1;\n height: 36px;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input .ant-input {\n box-shadow: none;\n background: none;\n border: none;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input:hover {\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input:focus-within {\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .clear-button {\n color: #1890ff;\n height: auto;\n padding: 0;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .clear-button:hover {\n color: #40a9ff;\n}\n\n.history-modal-container .history-content {\n flex: 1;\n padding: 0 25px 25px;\n overflow-y: auto;\n}\n\n.history-modal-container .history-content .history-group {\n margin-bottom: 10px;\n}\n\n.history-modal-container .history-content .history-group .history-group-title {\n color: rgba(0, 0, 0, .45);\n height: 40px;\n font-size: 12px;\n font-weight: 400;\n line-height: 40px;\n}\n\n.history-modal-container .history-content .history-group .history-item {\n cursor: pointer;\n color: rgba(0, 0, 0, .85);\n white-space: nowrap;\n text-overflow: ellipsis;\n height: 40px;\n font-size: 14px;\n line-height: 40px;\n overflow: hidden;\n}\n\n.history-modal-container .history-content .history-group .history-item:hover {\n background: #f2f4f7;\n margin: 0 -8px;\n padding: 0 8px;\n}\n\n.history-modal-container .history-content .no-results {\n text-align: center;\n color: #999;\n padding: 40px 20px;\n}\n\n[data-theme=\"dark\"] .history-selector .history-timestamp, [data-theme=\"dark\"] .history-selector .history-path {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .history-selector .history-description {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .history-selector .history-no-items {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item:hover {\n background: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item .history-clear-icon {\n border-color: rgba(255, 255, 255, .12);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item .history-clear-icon:hover {\n border-color: #40a9ff;\n}\n\n[data-theme=\"dark\"] .history-selector .history-load-more {\n color: #1890ff;\n}\n\n[data-theme=\"dark\"] .history-selector .history-load-more:hover {\n color: #40a9ff;\n}\n\n",".playground-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.playground-panel .playground-panel-header {\n flex-shrink: 0;\n height: 60px;\n padding: 0 24px 0 24px;\n border-bottom: rgba(0, 0, 0, 0.06) solid 1px;\n display: flex;\n align-items: center;\n}\n.playground-panel .playground-panel-header .header-row {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n width: 100%;\n}\n.playground-panel .playground-panel-header h2 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #1890ff;\n}\n.playground-panel .playground-panel-playground {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n padding: 0 24px 0 24px;\n}\n.playground-panel .playground-panel-playground .playground-container {\n flex: 1;\n background: white;\n border: 1px solid #0000001f;\n border-radius: 8px;\n overflow: hidden;\n border: none;\n}\n",".playground-panel {\n flex-direction: column;\n height: 100%;\n display: flex;\n}\n\n.playground-panel .playground-panel-header {\n border-bottom: 1px solid #0000000f;\n flex-shrink: 0;\n align-items: center;\n height: 60px;\n padding: 0 24px;\n display: flex;\n}\n\n.playground-panel .playground-panel-header .header-row {\n justify-content: space-between;\n align-items: center;\n gap: 10px;\n width: 100%;\n display: flex;\n}\n\n.playground-panel .playground-panel-header h2 {\n color: #1890ff;\n margin: 0 0 16px;\n font-size: 18px;\n font-weight: 600;\n}\n\n.playground-panel .playground-panel-playground {\n flex-direction: column;\n flex: 1;\n min-height: 0;\n padding: 0 24px;\n display: flex;\n}\n\n.playground-panel .playground-panel-playground .playground-container {\n background: #fff;\n border: none;\n border-radius: 8px;\n flex: 1;\n overflow: hidden;\n}\n",".scrcpy-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card {\n background: transparent;\n border: none;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card .ant-card-head {\n display: none;\n}\n.scrcpy-container .ant-card .ant-card-body {\n padding: 0;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row {\n flex: 1;\n margin: 0 !important;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col {\n padding: 0 !important;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col:first-child {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .header-bar {\n display: grid;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n padding: 8px 16px;\n background: rgba(255, 255, 255, 0.9);\n backdrop-filter: blur(10px);\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n border: 1px solid #f5f5f5;\n}\n.scrcpy-container .header-bar .header-left {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n.scrcpy-container .header-bar .header-left .ant-typography {\n color: #333;\n font-size: 14px;\n margin: 0;\n}\n.scrcpy-container .header-bar .header-left .anticon {\n color: #999;\n font-size: 14px;\n cursor: pointer;\n}\n.scrcpy-container .header-bar .header-left .anticon:hover {\n color: #666;\n}\n.scrcpy-container .header-bar .screen-info {\n text-align: center;\n}\n.scrcpy-container .header-bar .screen-info .ant-typography {\n color: #666;\n font-size: 14px;\n margin: 0;\n}\n.scrcpy-container .header-bar .header-right {\n justify-self: end;\n display: flex;\n gap: 8px;\n align-items: center;\n}\n.scrcpy-container .header-bar .header-right .ant-btn {\n width: 16px;\n height: 16px;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.scrcpy-container .header-bar .header-right .ant-btn .link-icon {\n font-size: 16px;\n line-height: 1;\n}\n.scrcpy-container .video-section {\n position: relative;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .video-section .video-container {\n width: 100%;\n flex: 1;\n background-color: #f5f5f5;\n display: flex;\n justify-content: center;\n align-items: center;\n border-bottom-left-radius: 12px;\n border-bottom-right-radius: 12px;\n overflow: hidden;\n position: relative;\n}\n.scrcpy-container .video-section .video-container .canvas-wrapper {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.scrcpy-container .video-section .video-container canvas {\n border: none !important;\n box-shadow: none !important;\n}\n.scrcpy-container .video-section .video-container .empty-state {\n position: relative;\n z-index: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n padding: 24px;\n text-align: center;\n}\n.scrcpy-container .video-section .video-container .empty-state .empty-state-icon {\n font-size: 48px;\n line-height: 1;\n}\n.scrcpy-container .video-section .video-container .empty-state .empty-state-text {\n color: #666;\n font-size: 16px;\n margin-bottom: 8px;\n}\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner {\n margin-top: 16px;\n}\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner .ant-spin {\n color: #1677ff;\n}\n.scrcpy-container .video-section .video-container .empty-state .ant-btn {\n min-width: 120px;\n height: 40px;\n font-size: 16px;\n border-radius: 20px;\n}\n.scrcpy-container .video-section .screen-info {\n position: absolute;\n bottom: 8px;\n left: 8px;\n background: rgba(0, 0, 0, 0.5);\n padding: 4px 8px;\n border-radius: 4px;\n}\n.scrcpy-container .video-section .screen-info .ant-typography {\n color: white;\n margin: 0;\n}\n",".scrcpy-container {\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.scrcpy-container .ant-card {\n background: none;\n border: none;\n flex-direction: column;\n flex: 1;\n display: flex;\n}\n\n.scrcpy-container .ant-card .ant-card-head {\n display: none;\n}\n\n.scrcpy-container .ant-card .ant-card-body {\n flex-direction: column;\n flex: 1;\n padding: 0;\n display: flex;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row {\n flex: 1;\n margin: 0 !important;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col {\n padding: 0 !important;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col:first-child {\n flex-direction: column;\n flex: 1;\n display: flex;\n}\n\n.scrcpy-container .header-bar {\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n background: #ffffffe6;\n border: 1px solid #f5f5f5;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n padding: 8px 16px;\n display: grid;\n}\n\n.scrcpy-container .header-bar .header-left {\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-left .ant-typography {\n color: #333;\n margin: 0;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-left .anticon {\n color: #999;\n cursor: pointer;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-left .anticon:hover {\n color: #666;\n}\n\n.scrcpy-container .header-bar .screen-info {\n text-align: center;\n}\n\n.scrcpy-container .header-bar .screen-info .ant-typography {\n color: #666;\n margin: 0;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-right {\n justify-self: end;\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-right .ant-btn {\n border: none;\n justify-content: center;\n align-items: center;\n width: 16px;\n height: 16px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-right .ant-btn .link-icon {\n font-size: 16px;\n line-height: 1;\n}\n\n.scrcpy-container .video-section {\n flex-direction: column;\n flex: 1;\n display: flex;\n position: relative;\n}\n\n.scrcpy-container .video-section .video-container {\n background-color: #f5f5f5;\n border-bottom-right-radius: 12px;\n border-bottom-left-radius: 12px;\n flex: 1;\n justify-content: center;\n align-items: center;\n width: 100%;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.scrcpy-container .video-section .video-container .canvas-wrapper {\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.scrcpy-container .video-section .video-container canvas {\n box-shadow: none !important;\n border: none !important;\n}\n\n.scrcpy-container .video-section .video-container .empty-state {\n z-index: 1;\n text-align: center;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n padding: 24px;\n display: flex;\n position: relative;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .empty-state-icon {\n font-size: 48px;\n line-height: 1;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .empty-state-text {\n color: #666;\n margin-bottom: 8px;\n font-size: 16px;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner {\n margin-top: 16px;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner .ant-spin {\n color: #1677ff;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .ant-btn {\n border-radius: 20px;\n min-width: 120px;\n height: 40px;\n font-size: 16px;\n}\n\n.scrcpy-container .video-section .screen-info {\n background: #00000080;\n border-radius: 4px;\n padding: 4px 8px;\n position: absolute;\n bottom: 8px;\n left: 8px;\n}\n\n.scrcpy-container .video-section .screen-info .ant-typography {\n color: #fff;\n margin: 0;\n}\n"],"names":[],"mappings":"AADA,mKCQA,mGAQA,0CAKA,0CAKA,sFAQA,sIASA,gDAIA,qFAOA,+FAOA,4EAOA,iGAOA,0EAKA,+EAOA,gGAOA,6EAOA,oFAOA,oDAIA,uHAUA,kFAMA,8CAIA,gGAMA,4DAKA,2DAKA,gICpJA,kEAOA,sJAOA,0OAOA,iLAKA,qNAIA,gHAOA,mGAMA,gLAWA,gHAMA,wJAUA,+JAQA,mMAUA,sIAMA,6GAIA,yMAWA,wLAQA,8JAOA,6OAaA,sLAOA,mJAMA,wIAQA,gKAQA,kHAKA,mJAIA,oOAIA,iOAIA,2QAIA,2FAIA,+GAIA,8EAIA,wOAIA,8IAIA,oIAIA,uHCnNA,kECOA,uEAKA,qHASA,gIASA,iLAWA,mFAKA,uIAQA,sKAWA,yFAMA,yIASA,uHAOA,4FAMA,2EAKA,iEAIA,yEAKA,wFAKA,oLASA,gIAKA,iFAIA,sIAMA,6IAMA,8JAMA,mJAKA,6IAKA,gJAOA,8EAMA,4CAKA,6BChLA,sGAQA,sFCRA,qDAOA,0FAOA,2CAIA,oEAMA,6CAIA,uDAIA,6DChCA,+BAKA,8BAIA,+BAIA,oCAIA,oGAOA,iCAIA,uFAMA,qGAIA,yECtCA,qUAgBA,+FAIA,iGAIA,gGAIA,+HAKA,uUAcA,8EAOA,uDAKA,iRAWA,4IAIA,+FAoBA,0GC9FA,yIAWA,yEAMA,qEAMA,4DAIA,oEC3BA,+RAoBA,wDAIA,mFAIA,6RAeA,kLAYA,gHAOA,uHAOA,sGAIA,uFAKA,+GAQA,yGAQA,4JASA,mIASA,kNAcA,qDAIA,+HAQA,+LAYA,qFAKA,0MAaA,uDAIA,sJAOA,yHAOA,4EAKA,kGAKA,qGAIA,+EAIA,+LAIA,0FChNA,6EAQA,uIASA,mGAMA,kLAYA,4FAIA,oGCvCA,mHAUA,8FAOA,0GAMA,mIASA,gHAOA,kHAKA,gGAIA,qJAQA,qHAKA,4KAMA,uIAIA,8HAIA,2HAKA,+FAIA,+GAMA,+JASA,4FAIA,6FAIA,sGAKA,kHAOA,6NAYA,+MAaA,kFAIA,wFAIA,0FAIA,sGAKA,+GAOA,mFAKA,6HAOA,6IAMA,uGAKA,6IAMA,6PAaA,qMASA,4NAUA,wJASA,+IASA,6IAOA,4IAMA,iGAMA,6HAQA,gFAMA,sDAIA,iEAIA,uHAOA,iHAOA,yDAIA,8GAOA,8GAOA,8FAKA,2FAKA,qGAMA,mFAIA,oEAIA,wEAIA,8EAIA,gFAIA,uEAIA,gGAKA,2GAIA,kGAIA,4GAIA,sFAIA,sFAIA,sEAIA,kOAIA,4FAIA,0FC7YA,qEAOA,0GAOA,qMAYA,gGAIA,gIAKA,gIAKA,oHAIA,kHAKA,wIAMA,8QAcA,gHAIA,sHAIA,sLAMA,8IAIA,sGAIA,qSAgBA,+JAMA,mHAIA,+JAMA,0IAIA,gWAiBA,oFAIA,mTAUA,0EAUA,sGAKA,qTAgBA,gIAMA,wIAMA,oGAIA,8GAIA,mJAKA,wOAKA,60BA4BA,wGAIA,oFAIA,qDAIA,4VAoBA,qEAIA,2FAIA,4JASA,mEAIA,kHAKA,uFAOA,6EAIA,8QAOA,wHAKA,6JAMA,2LAQA,oNAgBA,+VAIA,4VAIA,ihCAIA,kgCAYA,gIAKA,8HAIA,kIAIA,iTAMA,kSAIA,4GAIA,4IAKA,sIAIA,kGAIA,mIAKA,uPAIA,kGAIA,yNASA,2MAMA,2EAOA,iFAMA,mDAIA,6FAMA,oEAIA,qGAKA,qGAKA,yFAIA,2KAKA,sOAMA,mKAKA,iJAIA,qLAKA,2LAIA,+HAKA,yRAKA,2HAIA,oRAKA,gRAMA,oLAMA,6LAMA,kGAIA,4FAIA,qFAIA,sIAKA,+OAIA,2IAIA,khBAMA,2PAMA,uEAIA,uFAKA,oFAIA,2JAIA,2FAKA,sFAIA,kGAKA,2DAIA,6DAIA,gEAIA,uGAIA,mGAIA,6GCroBA,4CAKA,0MAcA,sHASA,yJASA,kJAQA,gGAKA,uFAIA,mFAKA,gIAOA,0JAQA,2IAMA,kOAKA,yHAMA,yGAIA,qFAMA,4EAIA,0JAQA,4MAWA,4HAMA,qGAMA,yHAIA,uEAIA,sEAIA,6EAIA,6FAIA,iGAIA,qEAIA,2ECpKA,iECOA,sJASA,yIAQA,2GAOA,qHAQA,0ICvCA,4ECQA,iGAQA,wDAIA,+FAOA,8EAKA,iFAIA,mHAMA,uRAaA,mFAMA,8FAMA,6FAMA,qEAIA,6DAIA,8FAMA,qGAOA,+IASA,6FAKA,6FAOA,qPAaA,+KAWA,yGAKA,yLAWA,8GAKA,6HAMA,gGAIA,wGAIA,sIAOA,2IASA"}
|
|
1
|
+
{"version":3,"file":"static/css/index.61d18db5.css","sources":["../../../home/runner/work/midscene/midscene/apps/android-playground/src/App.less","../../../src/App.less","../../../../../packages/visualizer/dist/es/component/screenshot-viewer/index.css","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/adb-device/index.less","../../../src/components/adb-device/index.less","../../../../../packages/visualizer/dist/es/component/logo/index.css","../../../../../packages/visualizer/dist/es/component/nav-actions/style.css","../../../../../packages/visualizer/dist/es/component/blackboard/index.css","../../../../../packages/visualizer/dist/es/component/shiny-text/index.css","../../../../../packages/visualizer/dist/es/component/env-config-reminder/index.css","../../../../../packages/visualizer/dist/es/component/player/index.css","../../../../../packages/visualizer/dist/es/component/playground-result/index.css","../../../../../packages/visualizer/dist/es/component/universal-playground/index.css","../../../../../packages/visualizer/dist/es/component/prompt-input/index.css","../../../../../packages/visualizer/dist/es/component/history-selector/index.css","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/playground-panel/index.less","../../../src/components/playground-panel/index.less","../../../home/runner/work/midscene/midscene/apps/android-playground/src/components/scrcpy-player/index.less","../../../src/components/scrcpy-player/index.less"],"sourcesContent":["body {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Noto Sans', Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji';\n font-size: 14px;\n}\n.app-container {\n width: 100%;\n height: 100vh;\n display: flex;\n flex-direction: column;\n background-color: #f5f5f5;\n}\n.app-content {\n height: 100vh;\n overflow: hidden;\n}\n.app-grid-layout {\n height: 100%;\n display: flex;\n}\n.app-grid-layout .ant-row {\n flex: 1;\n height: 100%;\n display: flex;\n flex-wrap: nowrap;\n width: 100%;\n}\n.app-panel {\n height: 100%;\n background-color: #fff;\n border-radius: 0;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);\n transition: box-shadow 0.3s;\n overflow: hidden;\n}\n.app-panel:hover {\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.09);\n}\n.app-panel.left-panel {\n overflow: hidden;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.app-panel.right-panel {\n border-radius: 0;\n flex: 1;\n overflow: hidden;\n box-shadow: -4px 0px 20px 0px #0000000a;\n}\n.panel-content {\n height: 100%;\n overflow: auto;\n display: flex;\n flex-direction: column;\n}\n.panel-content.left-panel-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n}\n.panel-content.right-panel-content {\n border-radius: 0;\n padding: 12px 24px 24px 24px;\n}\n.panel-content h2 {\n color: #000;\n font-size: 18px;\n margin-top: 16px;\n margin-bottom: 12px;\n}\n.panel-content canvas {\n max-width: 100%;\n margin-top: 16px;\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n}\n.command-form {\n display: flex;\n flex-direction: column;\n height: 100%;\n overflow: hidden;\n}\n.command-form .form-content {\n display: flex;\n flex-direction: column;\n height: 100%;\n gap: 24px;\n}\n.command-form .command-input-wrapper {\n margin-top: 8px;\n}\n.result-container {\n flex: 1;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n min-height: 0;\n position: relative;\n height: 100%;\n}\n.resize-handle {\n width: 2px;\n background-color: #f0f0f0;\n transition: background-color 0.2s;\n}\n.resize-handle:hover {\n background-color: #1677ff;\n}\n.panel-resize-handle {\n background-color: #f0f0f0;\n transition: background-color 0.2s;\n position: relative;\n}\n.panel-resize-handle.horizontal {\n width: 1px;\n cursor: col-resize;\n}\n.panel-resize-handle.vertical {\n height: 1px;\n cursor: row-resize;\n}\n.panel-resize-handle:hover {\n background-color: #1677ff;\n}\n.panel-resize-handle:active {\n background-color: #1677ff;\n}\n.panel-resize-handle[data-resize-handle-active] {\n background-color: #1677ff;\n}\n","body {\n margin: 0;\n padding: 0;\n font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Noto Sans, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;\n font-size: 14px;\n}\n\n.app-container {\n background-color: #f5f5f5;\n flex-direction: column;\n width: 100%;\n height: 100vh;\n display: flex;\n}\n\n.app-content {\n height: 100vh;\n overflow: hidden;\n}\n\n.app-grid-layout {\n height: 100%;\n display: flex;\n}\n\n.app-grid-layout .ant-row {\n flex-wrap: nowrap;\n flex: 1;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.app-panel {\n background-color: #fff;\n border-radius: 0;\n height: 100%;\n transition: box-shadow .3s;\n overflow: hidden;\n box-shadow: 0 1px 2px #0000000d;\n}\n\n.app-panel:hover {\n box-shadow: 0 2px 8px #00000017;\n}\n\n.app-panel.left-panel {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.app-panel.right-panel {\n border-radius: 0;\n flex: 1;\n overflow: hidden;\n box-shadow: -4px 0 20px #0000000a;\n}\n\n.panel-content {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: auto;\n}\n\n.panel-content.left-panel-content {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.panel-content.right-panel-content {\n border-radius: 0;\n padding: 12px 24px 24px;\n}\n\n.panel-content h2 {\n color: #000;\n margin-top: 16px;\n margin-bottom: 12px;\n font-size: 18px;\n}\n\n.panel-content canvas {\n border: 1px solid #f0f0f0;\n border-radius: 4px;\n max-width: 100%;\n margin-top: 16px;\n}\n\n.command-form {\n flex-direction: column;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.command-form .form-content {\n flex-direction: column;\n gap: 24px;\n height: 100%;\n display: flex;\n}\n\n.command-form .command-input-wrapper {\n margin-top: 8px;\n}\n\n.result-container {\n flex-direction: column;\n flex: 1;\n height: 100%;\n min-height: 0;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.resize-handle {\n background-color: #f0f0f0;\n width: 2px;\n transition: background-color .2s;\n}\n\n.resize-handle:hover {\n background-color: #1677ff;\n}\n\n.panel-resize-handle {\n background-color: #f0f0f0;\n transition: background-color .2s;\n position: relative;\n}\n\n.panel-resize-handle.horizontal {\n cursor: col-resize;\n width: 1px;\n}\n\n.panel-resize-handle.vertical {\n cursor: row-resize;\n height: 1px;\n}\n\n.panel-resize-handle:hover, .panel-resize-handle:active, .panel-resize-handle[data-resize-handle-active] {\n background-color: #1677ff;\n}\n",".screenshot-viewer {\n flex-direction: column;\n height: 100%;\n display: flex;\n}\n\n.screenshot-viewer.offline, .screenshot-viewer.loading, .screenshot-viewer.error {\n text-align: center;\n color: #666;\n justify-content: center;\n align-items: center;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder h3, .screenshot-viewer.loading .screenshot-placeholder h3, .screenshot-viewer.error .screenshot-placeholder h3 {\n color: #1890ff;\n text-transform: capitalize;\n margin-bottom: 12px;\n font-size: 18px;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder p, .screenshot-viewer.loading .screenshot-placeholder p, .screenshot-viewer.error .screenshot-placeholder p {\n color: #666;\n margin: 0;\n}\n\n.screenshot-viewer.offline .screenshot-placeholder p.error-message, .screenshot-viewer.loading .screenshot-placeholder p.error-message, .screenshot-viewer.error .screenshot-placeholder p.error-message {\n color: #ff4d4f;\n}\n\n.screenshot-viewer .screenshot-header {\n justify-content: space-between;\n align-items: center;\n height: 56px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title {\n flex-direction: column;\n gap: 4px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title h3 {\n color: #000;\n text-transform: capitalize;\n align-items: center;\n gap: 8px;\n margin: 0;\n font-size: 14px;\n font-weight: 600;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-header .screenshot-title .screenshot-subtitle {\n color: #999;\n margin: 0;\n font-size: 12px;\n}\n\n.screenshot-viewer .screenshot-container {\n background: #f2f4f7;\n border-radius: 16px;\n flex-direction: column;\n flex: 1;\n padding: 0 15px;\n display: flex;\n overflow: hidden;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay {\n z-index: 10;\n justify-content: space-between;\n align-items: flex-start;\n padding: 12px 5px 8px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay {\n color: rgba(0, 0, 0, .85);\n text-transform: capitalize;\n align-items: center;\n gap: 8px;\n font-size: 12px;\n font-weight: 500;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay .info-icon {\n opacity: .8;\n cursor: pointer;\n font-size: 12px;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay .info-icon:hover {\n opacity: 1;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls {\n opacity: 1;\n box-sizing: border-box;\n border-radius: 4px;\n align-items: center;\n gap: 10px;\n height: 18px;\n padding: 4px 8px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .last-update-time {\n color: #666;\n white-space: nowrap;\n text-overflow: ellipsis;\n font-size: 12px;\n overflow: hidden;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .operation-indicator {\n align-items: center;\n gap: 4px;\n font-size: 12px;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn {\n box-shadow: none;\n background: none;\n border: none;\n justify-content: center;\n align-items: center;\n width: 16px;\n min-width: 16px;\n height: 16px;\n padding: 0;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn:hover {\n background-color: rgba(0, 0, 0, .06);\n border-radius: 2px;\n transition: all .2s;\n transform: scale(1.1);\n}\n\n.screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn .anticon {\n color: #666;\n font-size: 12px;\n transition: color .2s;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content {\n flex: 1;\n justify-content: center;\n align-items: center;\n min-height: 0;\n display: flex;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content .screenshot-image {\n object-fit: contain;\n border-radius: 12px;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n}\n\n.screenshot-viewer .screenshot-container .screenshot-content .screenshot-placeholder {\n text-align: center;\n color: #999;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline, [data-theme=\"dark\"] .screenshot-viewer.loading, [data-theme=\"dark\"] .screenshot-viewer.error {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder h3, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder h3, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder h3 {\n color: #1890ff;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder p, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder p, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder p {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer.offline .screenshot-placeholder p.error-message, [data-theme=\"dark\"] .screenshot-viewer.loading .screenshot-placeholder p.error-message, [data-theme=\"dark\"] .screenshot-viewer.error .screenshot-placeholder p.error-message {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-header .screenshot-title h3 {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-header .screenshot-title .screenshot-subtitle {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container {\n background: #141414;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .device-name-overlay, [data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .last-update-time {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn:hover {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-overlay .screenshot-controls .ant-btn .anticon {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .screenshot-viewer .screenshot-container .screenshot-content .screenshot-placeholder {\n color: rgba(255, 255, 255, .45);\n}\n\n",".device-header {\n display: flex;\n align-items: center;\n margin-bottom: 16px;\n}\n.device-header .device-title-container {\n display: flex;\n align-items: center;\n}\n.device-header .device-title {\n margin: 0;\n font-size: 18px;\n color: #000;\n margin-right: 12px;\n display: flex;\n align-items: center;\n height: 32px;\n}\n.device-info-display {\n display: flex;\n align-items: center;\n padding: 4px 12px 4px 8px;\n background: #f0f0f0;\n border-radius: 20px;\n height: 32px;\n}\n.device-info-display .device-icon-container {\n width: 24px;\n height: 24px;\n border-radius: 50%;\n background: #3b82f6;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n}\n.device-info-display .device-icon-container .device-icon {\n font-size: 14px;\n color: white;\n}\n.device-info-display .device-icon-container .status-indicator {\n position: absolute;\n right: -5px;\n bottom: -5px;\n display: flex;\n align-items: center;\n}\n.device-info-display .device-name {\n font-weight: bold;\n font-size: 16px;\n color: #333;\n max-width: 200px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n margin-left: 8px;\n}\n.device-info-display .device-name.no-device {\n color: #999;\n font-weight: normal;\n font-style: italic;\n}\n.device-dropdown {\n width: 430px;\n background: #fff;\n border-radius: 8px;\n overflow: hidden;\n box-shadow: 0px 10px 20px 0px #00000005;\n border: 1px solid #EAEDF1;\n}\n.device-dropdown .dropdown-header {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 16px 16px 12px;\n}\n.device-dropdown .dropdown-header .dropdown-title {\n font-weight: bold;\n font-size: 16px;\n color: #333;\n}\n.device-dropdown .device-list-item {\n padding: 5px 17px 9px 6px;\n cursor: pointer;\n}\n.device-dropdown .device-list-item.selected {\n background: #2B83FF14;\n}\n.device-dropdown .device-list-item.offline {\n cursor: not-allowed;\n opacity: 0.5;\n}\n.device-dropdown .device-list-item .device-item-content {\n display: flex;\n align-items: center;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container {\n width: 34px;\n height: 34px;\n display: flex;\n align-items: center;\n justify-content: center;\n margin-right: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container .device-item-icon {\n font-size: 22px;\n color: #666;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info {\n flex: 1;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-name {\n font-weight: bold;\n font-size: 15px;\n color: #333;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status {\n display: flex;\n align-items: center;\n margin-top: 4px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge {\n display: flex;\n align-items: center;\n margin-right: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge .status-text {\n color: #666;\n font-size: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .device-id-container {\n color: #999;\n font-size: 12px;\n}\n.device-dropdown .device-list-item .device-item-content .current-device-indicator {\n margin-left: auto;\n color: #1890ff;\n font-weight: bold;\n font-size: 13px;\n}\n.device-dropdown .device-list-empty {\n padding: 20px;\n text-align: center;\n color: #999;\n}\n.status-dot {\n margin-right: 4px;\n font-size: 12px;\n}\n.status-divider {\n margin: 0 4px;\n}\n",".device-header {\n align-items: center;\n margin-bottom: 16px;\n display: flex;\n}\n\n.device-header .device-title-container {\n align-items: center;\n display: flex;\n}\n\n.device-header .device-title {\n color: #000;\n align-items: center;\n height: 32px;\n margin: 0 12px 0 0;\n font-size: 18px;\n display: flex;\n}\n\n.device-info-display {\n background: #f0f0f0;\n border-radius: 20px;\n align-items: center;\n height: 32px;\n padding: 4px 12px 4px 8px;\n display: flex;\n}\n\n.device-info-display .device-icon-container {\n background: #3b82f6;\n border-radius: 50%;\n justify-content: center;\n align-items: center;\n width: 24px;\n height: 24px;\n display: flex;\n position: relative;\n}\n\n.device-info-display .device-icon-container .device-icon {\n color: #fff;\n font-size: 14px;\n}\n\n.device-info-display .device-icon-container .status-indicator {\n align-items: center;\n display: flex;\n position: absolute;\n bottom: -5px;\n right: -5px;\n}\n\n.device-info-display .device-name {\n color: #333;\n text-overflow: ellipsis;\n white-space: nowrap;\n max-width: 200px;\n margin-left: 8px;\n font-size: 16px;\n font-weight: bold;\n overflow: hidden;\n}\n\n.device-info-display .device-name.no-device {\n color: #999;\n font-style: italic;\n font-weight: normal;\n}\n\n.device-dropdown {\n background: #fff;\n border: 1px solid #eaedf1;\n border-radius: 8px;\n width: 430px;\n overflow: hidden;\n box-shadow: 0 10px 20px #00000005;\n}\n\n.device-dropdown .dropdown-header {\n justify-content: space-between;\n align-items: center;\n padding: 16px 16px 12px;\n display: flex;\n}\n\n.device-dropdown .dropdown-header .dropdown-title {\n color: #333;\n font-size: 16px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-item {\n cursor: pointer;\n padding: 5px 17px 9px 6px;\n}\n\n.device-dropdown .device-list-item.selected {\n background: #2b83ff14;\n}\n\n.device-dropdown .device-list-item.offline {\n cursor: not-allowed;\n opacity: .5;\n}\n\n.device-dropdown .device-list-item .device-item-content {\n align-items: center;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container {\n justify-content: center;\n align-items: center;\n width: 34px;\n height: 34px;\n margin-right: 12px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-icon-container .device-item-icon {\n color: #666;\n font-size: 22px;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info {\n flex: 1;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-name {\n color: #333;\n font-size: 15px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status {\n align-items: center;\n margin-top: 4px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge {\n align-items: center;\n margin-right: 12px;\n display: flex;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .status-badge .status-text {\n color: #666;\n font-size: 12px;\n}\n\n.device-dropdown .device-list-item .device-item-content .device-item-info .device-item-status .device-id-container {\n color: #999;\n font-size: 12px;\n}\n\n.device-dropdown .device-list-item .device-item-content .current-device-indicator {\n color: #1890ff;\n margin-left: auto;\n font-size: 13px;\n font-weight: bold;\n}\n\n.device-dropdown .device-list-empty {\n text-align: center;\n color: #999;\n padding: 20px;\n}\n\n.status-dot {\n margin-right: 4px;\n font-size: 12px;\n}\n\n.status-divider {\n margin: 0 4px;\n}\n",".logo img {\n vertical-align: baseline;\n height: 30px;\n vertical-align: -webkit-baseline-middle;\n line-height: 30px;\n}\n\n.logo-with-star-wrapper {\n flex-direction: row;\n justify-content: space-between;\n display: flex;\n}\n\n",".nav-actions {\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.nav-actions .nav-icon {\n color: rgba(0, 0, 0, .65);\n cursor: pointer;\n font-size: 16px;\n transition: color .3s;\n}\n\n.nav-actions .nav-icon:hover {\n color: #2b83ff;\n}\n\n.nav-actions a {\n align-items: center;\n text-decoration: none;\n display: flex;\n}\n\n.nav-actions a:hover .nav-icon {\n color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .nav-actions .nav-icon {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .nav-actions .nav-icon:hover {\n color: #2b83ff;\n}\n\n",".blackboard .footer {\n color: #aaa;\n}\n\n.blackboard ul {\n padding-left: 0;\n}\n\n.blackboard li {\n list-style: none;\n}\n\n.blackboard .bottom-tip {\n height: 30px;\n}\n\n.blackboard .bottom-tip-item {\n color: #aaa;\n text-overflow: ellipsis;\n word-wrap: break-word;\n max-width: 500px;\n}\n\n.blackboard-filter {\n margin: 10px 0;\n}\n\n.blackboard-main-content canvas {\n box-sizing: border-box;\n border: 1px solid #888;\n width: 100%;\n}\n\n[data-theme=\"dark\"] .blackboard .footer, [data-theme=\"dark\"] .blackboard .bottom-tip-item {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .blackboard-main-content canvas {\n border-color: rgba(255, 255, 255, .12);\n}\n\n",".shiny-text {\n color: rgba(0, 0, 0, 0);\n letter-spacing: .5px;\n text-shadow: 0 1px 2px rgba(0, 0, 0, .05);\n background-image: linear-gradient(45deg, #2b83ff, #6a11cb, #2575fc, #4481eb);\n background-size: 300%;\n -webkit-background-clip: text;\n background-clip: text;\n font-weight: 600;\n animation: 8s infinite textGradient;\n display: inline-block;\n position: relative;\n overflow: hidden;\n}\n\n.shiny-text.theme-blue {\n background-image: linear-gradient(45deg, #2b83ff, #6a11cb, #2575fc, #4481eb);\n}\n\n.shiny-text.theme-purple {\n background-image: linear-gradient(45deg, #667eea, #764ba2, #b06ab3, #9d50bb);\n}\n\n.shiny-text.theme-green {\n background-image: linear-gradient(45deg, #11998e, #38ef7d, #2dd4bf, #10b981);\n}\n\n.shiny-text.theme-rainbow {\n background-image: linear-gradient(45deg, #ff0080, #ff8c00, #40e0d0, #9d50bb, #ff0080);\n background-size: 400%;\n}\n\n.shiny-text:after {\n content: \"\";\n width: 120%;\n height: 120%;\n animation: shine var(--animation-duration, 5s) cubic-bezier(.25, .1, .25, 1) infinite;\n z-index: 1;\n pointer-events: none;\n background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .1) 10%, rgba(255, 255, 255, .6) 50%, rgba(255, 255, 255, .1) 90%, rgba(255, 255, 255, 0) 100%);\n position: absolute;\n top: -10%;\n left: -150%;\n transform: skewX(-20deg)translateY(0);\n}\n\n.shiny-text.disabled {\n color: #000;\n background: none;\n font-weight: normal;\n animation: none;\n}\n\n.shiny-text.disabled:after {\n animation: none;\n display: none;\n}\n\n[data-theme=\"dark\"] .shiny-text {\n color: rgba(0, 0, 0, 0);\n -webkit-text-fill-color: transparent;\n text-shadow: none;\n background-image: linear-gradient(45deg, #a78bfa, #c084fc, #e879f9, #c084fc);\n background-size: 300%;\n -webkit-background-clip: text;\n background-clip: text;\n animation: 8s infinite textGradient;\n}\n\n[data-theme=\"dark\"] .shiny-text:after {\n background: linear-gradient(90deg, rgba(197, 184, 255, 0) 0%, rgba(197, 184, 255, .05) 10%, rgba(197, 184, 255, .15) 50%, rgba(197, 184, 255, .05) 90%, rgba(197, 184, 255, 0) 100%);\n}\n\n@keyframes shine {\n 0% {\n opacity: .7;\n left: -150%;\n }\n\n 20% {\n opacity: 1;\n }\n\n 80% {\n opacity: 1;\n }\n\n 100% {\n opacity: .7;\n left: 250%;\n }\n}\n\n@keyframes textGradient {\n 0% {\n background-position: 0%;\n }\n\n 50% {\n background-position: 100%;\n }\n\n 100% {\n background-position: 0%;\n }\n}\n\n",".env-config-reminder {\n background: #fff2e8;\n border-radius: 12px;\n align-items: center;\n gap: 12px;\n margin-bottom: 12px;\n padding: 12px 16px;\n display: flex;\n}\n\n.env-config-reminder .reminder-icon {\n color: #fa541c;\n width: 16px;\n height: 16px;\n}\n\n.env-config-reminder .reminder-text {\n color: #000;\n flex: 1;\n font-size: 14px;\n}\n\n[data-theme=\"dark\"] .env-config-reminder {\n background: rgba(82, 38, 7, .3);\n}\n\n[data-theme=\"dark\"] .env-config-reminder .reminder-text {\n color: #f8fafd;\n}\n\n",".player-container {\n box-sizing: border-box;\n background: #f2f4f7;\n border: 1px solid #f2f4f7;\n border-radius: 8px;\n flex-direction: column;\n width: 100%;\n max-width: 100%;\n height: 100%;\n min-height: 300px;\n max-height: 100%;\n margin: 0 auto;\n padding: 12px;\n line-height: 100%;\n display: flex;\n position: relative;\n overflow: visible;\n}\n\n.player-container[data-fit-mode=\"height\"] {\n background: #fff;\n}\n\n.player-container[data-fit-mode=\"height\"] .canvas-container {\n background-color: #f2f4f7;\n}\n\n.player-container .canvas-container {\n width: 100%;\n min-height: 200px;\n aspect-ratio: var(--canvas-aspect-ratio, 16 / 9);\n background-color: #fff;\n border-top-left-radius: 4px;\n border-top-right-radius: 4px;\n flex: none;\n justify-content: center;\n align-items: center;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.player-container .canvas-container canvas {\n box-sizing: border-box;\n object-fit: contain;\n border: none;\n width: 100%;\n max-width: 100%;\n height: auto;\n max-height: 100%;\n margin: 0 auto;\n display: block;\n}\n\n.player-container .canvas-container[data-fit-mode=\"height\"] {\n aspect-ratio: unset;\n flex: auto;\n height: auto;\n min-height: 0;\n}\n\n.player-container .canvas-container[data-fit-mode=\"height\"] canvas {\n width: auto;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n}\n\n.player-container .canvas-container[data-fit-mode=\"width\"] {\n aspect-ratio: var(--canvas-aspect-ratio, 16 / 9);\n}\n\n.player-container .canvas-container[data-fit-mode=\"width\"] canvas {\n width: 100%;\n height: auto;\n}\n\n.player-container .player-timeline-wrapper {\n flex: none;\n width: 100%;\n height: 4px;\n margin-bottom: 2px;\n position: relative;\n}\n\n.player-container .player-timeline {\n background: #666;\n flex-shrink: 0;\n width: 100%;\n height: 4px;\n position: relative;\n}\n\n.player-container .player-timeline .player-timeline-progress {\n background: #2b83ff;\n height: 4px;\n transition-timing-function: linear;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.player-container .player-tools-wrapper {\n box-sizing: border-box;\n flex: none;\n width: 100%;\n height: 72px;\n padding: 15px 16px;\n position: relative;\n}\n\n.player-container .player-tools {\n color: #000;\n box-sizing: border-box;\n flex-direction: row;\n flex-shrink: 0;\n justify-content: space-between;\n width: 100%;\n max-width: 100%;\n height: 42px;\n font-size: 14px;\n display: flex;\n overflow: hidden;\n}\n\n.player-container .player-tools .ant-spin {\n color: #333;\n}\n\n.player-container .player-tools .player-control {\n flex-direction: row;\n flex-grow: 1;\n align-items: center;\n display: flex;\n overflow: hidden;\n}\n\n.player-container .player-tools .status-icon {\n border-radius: 8px;\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n width: 32px;\n height: 32px;\n margin-left: 10px;\n transition: all .2s;\n display: flex;\n}\n\n.player-container .player-tools .status-icon:hover {\n cursor: pointer;\n background: #f0f0f0;\n}\n\n.player-container .player-tools .status-text {\n flex-direction: column;\n flex-grow: 1;\n flex-shrink: 1;\n justify-content: space-between;\n width: 0;\n min-width: 0;\n height: 100%;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.player-container .player-tools .title {\n font-weight: 600;\n}\n\n.player-container .player-tools .title, .player-container .player-tools .subtitle {\n text-overflow: ellipsis;\n white-space: nowrap;\n width: 100%;\n overflow: hidden;\n}\n\n.player-container .player-tools .player-tools-item {\n flex-direction: column;\n justify-content: center;\n height: 100%;\n display: flex;\n}\n\n[data-theme=\"dark\"] .player-container {\n background: #141414;\n border-color: #292929;\n}\n\n[data-theme=\"dark\"] .player-container[data-fit-mode=\"height\"] {\n background: #292929;\n border-color: #292929;\n}\n\n[data-theme=\"dark\"] .player-container[data-fit-mode=\"height\"] .canvas-container {\n background-color: #141414;\n}\n\n[data-theme=\"dark\"] .player-container .canvas-container {\n background-color: #1f1f1f;\n}\n\n[data-theme=\"dark\"] .player-container .player-tools, [data-theme=\"dark\"] .player-container .player-tools .ant-spin, [data-theme=\"dark\"] .player-container .player-tools .status-icon svg {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .player-container .player-tools .status-icon:hover {\n background: rgba(255, 255, 255, .08);\n}\n\n",".result-wrapper {\n justify-content: center;\n height: 100%;\n margin: 4px 0;\n display: flex;\n}\n\n.result-wrapper .loading-container {\n flex-direction: column;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.result-wrapper .loading-container .loading-progress-text {\n color: #888;\n margin-top: 8px;\n font-size: 12px;\n}\n\n.result-wrapper pre {\n white-space: pre-wrap;\n text-wrap: unset;\n word-wrap: break-word;\n overflow-wrap: break-word;\n background: #f2f4f7;\n border-radius: 8px;\n margin: 0;\n padding: 14px;\n overflow: scroll;\n}\n\n[data-theme=\"dark\"] .result-wrapper .loading-container .loading-progress-text {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .result-wrapper pre {\n color: #f8fafd;\n background: rgba(255, 255, 255, .08);\n border: 1px solid rgba(255, 255, 255, .12);\n}\n\n",".playground-container {\n background: #fff;\n flex-direction: column;\n width: 100%;\n height: 100vh;\n display: flex;\n position: relative;\n}\n\n.playground-container .command-form {\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.playground-container .context-preview-section {\n border-bottom: 1px solid #f0f0f0;\n flex-shrink: 0;\n padding: 16px;\n}\n\n.playground-container .middle-dialog-area {\n flex-direction: column;\n flex: 1;\n min-height: 0;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.playground-container .middle-dialog-area .clear-button-container {\n z-index: 10;\n position: absolute;\n top: 16px;\n right: 0;\n}\n\n.playground-container .middle-dialog-area .clear-button-container .clear-button {\n opacity: .7;\n transition: opacity .2s;\n}\n\n.playground-container .middle-dialog-area .clear-button-container .clear-button:hover {\n opacity: 1;\n}\n\n.playground-container .middle-dialog-area .info-list-container {\n scrollbar-width: none;\n flex: 1;\n padding-top: 16px;\n padding-bottom: 16px;\n overflow-x: hidden;\n overflow-y: auto;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item {\n border-bottom: none;\n padding: 0;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card {\n border: 1px solid #f0f0f0;\n border-radius: 8px;\n box-shadow: 0 1px 3px rgba(0, 0, 0, .1);\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card:hover {\n box-shadow: 0 2px 6px rgba(0, 0, 0, .15);\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-item .ant-card .ant-card-body {\n padding: 12px;\n}\n\n.playground-container .middle-dialog-area .info-list-container .ant-list .ant-list-empty-text {\n color: #999;\n font-style: italic;\n}\n\n.playground-container .middle-dialog-area .info-list-container::-webkit-scrollbar {\n display: none;\n}\n\n.playground-container .middle-dialog-area .info-list-container .list-item {\n background: none;\n border: none;\n padding: 0;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button {\n z-index: 10;\n background: #fff;\n border: 1px solid rgba(0, 0, 0, .08);\n position: absolute;\n bottom: 10px;\n right: 0;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button:hover {\n background: #1890ff;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button:hover .anticon {\n color: #fff;\n}\n\n.playground-container .middle-dialog-area .scroll-to-bottom-button .anticon {\n color: #333;\n font-size: 16px;\n}\n\n.playground-container .user-message-container {\n justify-content: flex-end;\n width: 100%;\n margin: 20px 0 30px;\n display: flex;\n}\n\n.playground-container .user-message-container .user-message-bubble {\n color: rgba(0, 0, 0, .85);\n text-align: left;\n background: #f2f4f7;\n border-radius: 12px;\n max-width: 80%;\n padding: 12px 16px;\n font-size: 14px;\n font-weight: 400;\n display: inline-block;\n}\n\n.playground-container .progress-action-item {\n color: #000;\n background: #f2f4f7;\n border-radius: 8px;\n justify-content: space-between;\n height: 36px;\n margin: 4px 0;\n padding: 0 12px;\n font-size: 14px;\n line-height: 36px;\n display: flex;\n}\n\n.playground-container .progress-action-item .progress-status-icon {\n margin-left: 4px;\n}\n\n.playground-container .progress-action-item .progress-status-icon.loading {\n color: #1890ff;\n}\n\n.playground-container .progress-action-item .progress-status-icon.completed {\n color: #52c41a;\n}\n\n.playground-container .progress-action-item .progress-status-icon.error {\n color: #ff4d4f;\n font-weight: bold;\n}\n\n.playground-container .progress-description {\n padding: 8px 0;\n font-size: 14px;\n line-height: 22px;\n display: inline-block;\n}\n\n.playground-container .system-message-container {\n flex-direction: column;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-header {\n align-items: center;\n gap: 8px;\n margin: 12px 0;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-header .system-message-title {\n font-size: 12px;\n font-weight: 400;\n line-height: 100%;\n}\n\n.playground-container .system-message-container .system-message-content {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n}\n\n.playground-container .system-message-container .system-message-content .system-message-text {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n line-height: 25px;\n}\n\n.playground-container .system-message-container .system-message-content .error-message {\n color: #e51723;\n word-break: break-word;\n background-color: #fff;\n border: none;\n border-radius: 0;\n align-items: flex-start;\n margin-bottom: 16px;\n padding: 0;\n font-size: 14px;\n display: flex;\n}\n\n.playground-container .system-message-container .system-message-content .error-message .divider {\n background-color: #e6e8eb;\n flex-shrink: 0;\n align-self: stretch;\n width: 1px;\n min-height: 20px;\n margin: 0 8px 0 0;\n}\n\n.playground-container .system-message-container .system-message-content .loading-progress-text {\n color: #666;\n background: #f6f8fa;\n border-left: 3px solid #1890ff;\n border-radius: 4px;\n margin-top: 8px;\n padding: 8px 12px;\n font-size: 13px;\n}\n\n.playground-container .new-conversation-separator {\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n padding: 20px 0;\n display: flex;\n position: relative;\n}\n\n.playground-container .new-conversation-separator .separator-line {\n background-color: #e8e8e8;\n height: 1px;\n position: absolute;\n top: 50%;\n left: 0;\n right: 0;\n}\n\n.playground-container .new-conversation-separator .separator-text-container {\n z-index: 1;\n background-color: #fff;\n padding: 0 16px;\n position: relative;\n}\n\n.playground-container .new-conversation-separator .separator-text-container .separator-text {\n color: #999;\n background-color: #fff;\n font-size: 12px;\n}\n\n.playground-container .bottom-input-section {\n background-color: #fff;\n flex-shrink: 0;\n padding: 16px 0 0;\n}\n\n.playground-container .version-info-section {\n flex-shrink: 0;\n justify-content: center;\n align-items: center;\n height: 38px;\n display: flex;\n}\n\n.playground-container .version-text {\n color: #999;\n text-align: center;\n font-size: 12px;\n}\n\n.playground-container .hidden-result-ref {\n display: none;\n}\n\n.playground-container .playground-description {\n margin-bottom: 32px;\n}\n\n.playground-container .playground-description .description-zh {\n color: #333;\n margin: 0 0 8px;\n font-size: 16px;\n line-height: 1.5;\n}\n\n.playground-container .playground-description .description-en {\n color: #666;\n margin: 0;\n font-size: 14px;\n line-height: 1.5;\n}\n\n.playground-container .config-section {\n margin-bottom: 24px;\n}\n\n.playground-container .config-section .config-title {\n color: #333;\n margin: 0 0 16px;\n font-size: 18px;\n font-weight: 600;\n}\n\n.playground-container .config-section .config-item {\n align-items: center;\n gap: 8px;\n margin-bottom: 12px;\n display: flex;\n}\n\n.playground-container .config-section .config-item .config-check {\n color: #52c41a;\n font-size: 16px;\n}\n\n.playground-container .config-section .config-item .config-label {\n color: #333;\n font-size: 14px;\n}\n\n.playground-container .config-section .config-link {\n color: #1890ff;\n font-size: 14px;\n text-decoration: none;\n}\n\n.playground-container .config-section .config-link:hover {\n text-decoration: underline;\n}\n\n[data-theme=\"dark\"] .universal-playground .error-hint {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator.error {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .universal-playground .status-indicator.success {\n color: #52c41a;\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-label {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .alert-message {\n color: #f8fafd;\n background-color: rgba(82, 38, 7, .3);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-icon-wrapper {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-content {\n background-color: rgba(0, 0, 0, 0);\n}\n\n[data-theme=\"dark\"] .universal-playground .operation-item .operation-content .operation-title {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .playground-footer {\n background-color: rgba(255, 255, 255, .04);\n}\n\n[data-theme=\"dark\"] .universal-playground .playground-footer .status-text {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .results-info {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-title, [data-theme=\"dark\"] .universal-playground .result-section .result-details, [data-theme=\"dark\"] .universal-playground .result-section .result-value {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-value.success {\n color: #52c41a;\n}\n\n[data-theme=\"dark\"] .universal-playground .result-section .result-value.error {\n color: #ff4d4f;\n}\n\n",".prompt-input-wrapper {\n box-sizing: border-box;\n width: 100%;\n padding: 0 4px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper {\n align-items: center;\n gap: 8px;\n display: flex;\n position: relative;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group {\n scrollbar-width: thin;\n flex: 1;\n align-items: center;\n gap: 8px;\n min-width: 0;\n height: 100%;\n margin-right: 60px;\n display: flex;\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar {\n height: 6px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group::-webkit-scrollbar-thumb:hover {\n background: #a8a8a8;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-form-item {\n flex-shrink: 0;\n margin: 0 !important;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-form-item .ant-radio-group {\n flex-wrap: nowrap;\n gap: 8px;\n display: flex;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper {\n height: 24px;\n box-shadow: none;\n white-space: nowrap;\n background-color: #f7f7f7;\n border: none;\n border-radius: 11px;\n flex-shrink: 0;\n margin-right: 0;\n padding: 0 8px;\n font-size: 12px;\n line-height: 24px;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper:before {\n display: none;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper:focus-within {\n outline: none;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff;\n background-color: #2b83ff;\n border-color: #2b83ff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked:hover {\n color: #fff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-dropdown-trigger {\n flex-shrink: 0;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button {\n height: 24px;\n box-shadow: none;\n white-space: nowrap;\n background-color: #f7f7f7;\n border: none;\n border-radius: 11px;\n flex-shrink: 0;\n align-items: center;\n gap: 2px;\n max-width: 160px;\n padding: 0 8px;\n font-size: 12px;\n display: inline-flex;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button .ant-btn-content {\n text-overflow: ellipsis;\n white-space: nowrap;\n overflow: hidden;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button:hover {\n background-color: #e6e6e6;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown {\n color: #fff;\n background-color: #2b83ff;\n font-weight: 500;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown:hover {\n background-color: #2b83ff;\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .action-icons {\n z-index: 10;\n pointer-events: none;\n background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(255, 255, 255, .5) 20%, rgba(255, 255, 255, .8) 40%, rgba(255, 255, 255, .95) 60%, #fff 70%);\n flex-shrink: 0;\n justify-content: flex-end;\n align-items: center;\n gap: 8px;\n width: 80px;\n padding-left: 20px;\n display: flex;\n position: absolute;\n top: 50%;\n right: 0;\n transform: translateY(-50%);\n}\n\n.prompt-input-wrapper .mode-radio-group-wrapper .action-icons > * {\n pointer-events: auto;\n}\n\n.prompt-input-wrapper .main-side-console-input {\n z-index: 1;\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n border-radius: 12px;\n margin-top: 10px;\n padding-bottom: 48px;\n position: relative;\n}\n\n@keyframes hue-shift {\n 0% {\n -webkit-filter: hue-rotate();\n filter: hue-rotate();\n }\n\n 100% {\n -webkit-filter: hue-rotate(360deg);\n filter: hue-rotate(360deg);\n }\n}\n\n.prompt-input-wrapper .main-side-console-input:focus-within {\n z-index: 10;\n box-shadow: 0 0 0 3px rgba(43, 131, 255, .16);\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea {\n resize: none;\n white-space: pre-wrap;\n scrollbar-width: thin;\n background: none;\n border: none;\n border-radius: 0;\n outline: none;\n min-height: 120px;\n padding: 12px 16px;\n line-height: 21px;\n transition: background-color .2s;\n position: relative;\n overflow-y: auto;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:focus {\n box-shadow: none;\n border: none;\n outline: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:focus-visible {\n box-shadow: none;\n border: none;\n outline: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea:after {\n display: none;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea::-webkit-scrollbar {\n width: 6px;\n}\n\n.prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea::-webkit-scrollbar-thumb {\n background-color: rgba(0, 0, 0, .2);\n border-radius: 3px;\n}\n\n.prompt-input-wrapper .main-side-console-input.loading {\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n}\n\n.prompt-input-wrapper .main-side-console-input.loading:before {\n content: \"\";\n -webkit-mask-composite: xor;\n pointer-events: none;\n z-index: -1;\n background: linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%);\n border-radius: 12px;\n padding: 1px;\n animation: 5s linear infinite hue-shift;\n position: absolute;\n top: -1px;\n bottom: -1px;\n left: -1px;\n right: -1px;\n -webkit-mask-image: linear-gradient(#fff 0, #fff 0), linear-gradient(#fff 0, #fff 0);\n -webkit-mask-position: 0 0, 0 0;\n -webkit-mask-size: auto, auto;\n -webkit-mask-repeat: repeat, repeat;\n -webkit-mask-clip: content-box, border-box;\n -webkit-mask-origin: content-box, border-box;\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n -webkit-mask-source-type: auto, auto;\n mask-mode: match-source, match-source;\n}\n\n.prompt-input-wrapper .main-side-console-input.disabled .form-controller-wrapper {\n background-color: rgba(0, 0, 0, 0);\n}\n\n.prompt-input-wrapper .ant-form-item-with-help + .form-controller-wrapper {\n bottom: 14px;\n}\n\n.prompt-input-wrapper .ant-input {\n padding-bottom: 40px;\n}\n\n.prompt-input-wrapper .form-controller-wrapper {\n box-sizing: border-box;\n z-index: 1000;\n pointer-events: none;\n background-color: rgba(0, 0, 0, 0);\n flex-direction: row;\n justify-content: flex-end;\n align-items: flex-end;\n gap: 8px;\n width: calc(100% - 32px);\n height: 56px;\n padding: 12px 0;\n line-height: 32px;\n transition: background-color .2s;\n display: flex;\n position: absolute;\n bottom: 0;\n left: 16px;\n}\n\n.prompt-input-wrapper .form-controller-wrapper > * {\n pointer-events: auto;\n}\n\n.prompt-input-wrapper .settings-wrapper {\n color: #777;\n flex-flow: wrap;\n gap: 2px;\n display: flex;\n}\n\n.prompt-input-wrapper .settings-wrapper.settings-wrapper-hover {\n color: #3b3b3b;\n}\n\n.prompt-input-wrapper .structured-params-container {\n background: linear-gradient(#fff, #fff) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box;\n border: 1px solid rgba(0, 0, 0, 0);\n border-radius: 12px;\n padding: 16px 16px 56px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item {\n flex-direction: column;\n display: flex;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label {\n text-align: left;\n flex-basis: auto;\n padding-bottom: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label {\n color: rgba(0, 0, 0, .85);\n height: auto;\n font-size: 12px;\n font-weight: 500;\n line-height: 1.5;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:after {\n color: #ff4d4f;\n font-family: SimSun, sans-serif;\n font-size: 12px;\n line-height: 1;\n display: inline-block;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:-webkit-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:-moz-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:not(:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi))):after {\n margin-left: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:-webkit-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:-moz-any(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-label > label:is(:lang(ae), :lang(ar), :lang(arc), :lang(bcc), :lang(bqi), :lang(ckb), :lang(dv), :lang(fa), :lang(glk), :lang(he), :lang(ku), :lang(mzn), :lang(nqo), :lang(pnb), :lang(ps), :lang(sd), :lang(ug), :lang(ur), :lang(yi)):after {\n margin-right: 4px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-control {\n flex: 1;\n margin-top: 0;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-row {\n flex-direction: column;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-form-item .ant-form-item-control-input {\n min-height: auto;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input, .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number, .prompt-input-wrapper .structured-params-container .structured-params .ant-select {\n border: 1px solid #e1e5e9;\n border-radius: 6px;\n width: 100%;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input:hover, .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number:hover, .prompt-input-wrapper .structured-params-container .structured-params .ant-select:hover {\n border-color: #40a9ff;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params textarea.ant-input {\n padding-bottom: 5px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input-number .ant-input-number-input {\n box-shadow: none;\n border: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-input-number:hover .ant-input-number-input {\n box-shadow: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select {\n min-width: 120px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select .ant-select-selector {\n box-shadow: none;\n border: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-select:hover .ant-select-selector, .prompt-input-wrapper .structured-params-container .structured-params .ant-select.ant-select-focused .ant-select-selector {\n box-shadow: none;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group {\n width: 100%;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper {\n border: 1px solid #e1e5e9;\n border-radius: 6px;\n height: 32px;\n margin-right: 4px;\n font-size: 12px;\n line-height: 30px;\n}\n\n.prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff;\n background-color: #2b83ff;\n border-color: #2b83ff;\n}\n\n.selector-trigger {\n cursor: pointer;\n width: 24px;\n height: 24px;\n transition: all .2s;\n}\n\n.selector-trigger .action-icon {\n color: rgba(0, 0, 0, .85);\n font-size: 14px;\n transition: all .2s;\n}\n\n.selector-trigger .action-icon:hover {\n color: #2b83ff;\n}\n\n.more-apis-dropdown .ant-dropdown-menu {\n scrollbar-width: thin;\n max-height: 400px;\n overflow-y: auto;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar {\n width: 6px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-track {\n background: #f1f1f1;\n border-radius: 3px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb {\n background: #c1c1c1;\n border-radius: 3px;\n}\n\n.more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: #a8a8a8;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button:hover {\n background-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .mode-radio-group .more-apis-button.selected-from-dropdown {\n color: #fff !important;\n background-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .mode-radio-group-wrapper .action-icons {\n background: linear-gradient(to right, rgba(0, 0, 0, 0) 0%, rgba(31, 31, 31, .5) 20%, rgba(31, 31, 31, .8) 40%, rgba(31, 31, 31, .95) 60%, #1f1f1f 70%) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input {\n background: #1f1f1f !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input:focus-within {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n border: 1px solid rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input .main-side-console-input-textarea {\n color: #f8fafd !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .main-side-console-input.loading {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n border: 1px solid rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-input, [data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content textarea.ant-input {\n color: #f8fafd !important;\n background: rgba(255, 255, 255, .04) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-btn {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .08) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .ant-form-item-control-input-content .ant-btn.ant-btn-primary {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .form-controller-wrapper {\n background-color: rgba(0, 0, 0, 0) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container {\n background: linear-gradient(#1f1f1f, #1f1f1f) padding-box padding-box, linear-gradient(135deg, #4285f4 0%, #06f 25%, #7b02c5 50%, #ea4335 75%, #ff7043 100%) border-box !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-form-item-label > label {\n color: #f8fafd !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-input, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-input-number, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-select, [data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper {\n color: #f8fafd !important;\n background-color: rgba(255, 255, 255, .04) !important;\n border-color: rgba(255, 255, 255, .12) !important;\n}\n\n[data-theme=\"dark\"] .prompt-input-wrapper .structured-params-container .structured-params .ant-radio-group .ant-radio-button-wrapper.ant-radio-button-wrapper-checked {\n color: #fff !important;\n background-color: #2b83ff !important;\n border-color: #2b83ff !important;\n}\n\n[data-theme=\"dark\"] .prompt-input .tip-button {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .prompt-input .tip-button.active {\n color: #fff;\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper {\n background-color: rgba(255, 255, 255, .04);\n}\n\n[data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper:hover, [data-theme=\"dark\"] .prompt-input .prompt-textarea-wrapper.focused {\n background-color: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .prompt-input .btn-wrapper .btn-item {\n color: #fff;\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .btn-wrapper .btn-item:hover {\n background-color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .prompt-input .dropdown-content {\n background-color: #1f1f1f;\n border-color: rgba(255, 255, 255, .12);\n}\n\n[data-theme=\"dark\"] .prompt-input .param-label {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .prompt-input .error-message {\n color: #ff4d4f;\n}\n\n[data-theme=\"dark\"] .prompt-input .send-button-text {\n color: #2b83ff;\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-track {\n background: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb {\n background: rgba(255, 255, 255, .2);\n}\n\n[data-theme=\"dark\"] .more-apis-dropdown .ant-dropdown-menu::-webkit-scrollbar-thumb:hover {\n background: rgba(255, 255, 255, .3);\n}\n\n",".history-selector-wrapper {\n position: relative;\n}\n\n.history-modal-overlay {\n z-index: 9999;\n background: #fff;\n border: 1px solid rgba(0, 0, 0, .08);\n border-radius: 12px;\n width: 320px;\n height: 400px;\n position: fixed;\n top: auto;\n bottom: 20px;\n right: 20px;\n box-shadow: 0 8px 24px rgba(0, 0, 0, .12);\n}\n\n.history-modal-container {\n border-radius: 12px;\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n overflow: hidden;\n}\n\n.history-modal-container .history-modal-header {\n justify-content: space-between;\n align-items: center;\n height: 48px;\n padding: 0 25px;\n line-height: 48px;\n display: flex;\n}\n\n.history-modal-container .history-modal-header .close-button {\n justify-content: center;\n align-items: center;\n margin-right: -4px;\n padding: 4px;\n display: flex;\n}\n\n.history-modal-container .history-modal-header .close-button .anticon {\n color: #999;\n font-size: 18px;\n}\n\n.history-modal-container .history-modal-header .close-button:hover .anticon {\n color: #666;\n}\n\n.history-modal-container .history-search-section {\n background: #fff;\n padding: 16px 20px;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper {\n color: rgba(0, 0, 0, .25);\n align-items: center;\n gap: 12px;\n display: flex;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input {\n background: #f1f2f3;\n border: none;\n border-radius: 16px;\n flex: 1;\n height: 36px;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input .ant-input {\n box-shadow: none;\n background: none;\n border: none;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input:hover {\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .search-input:focus-within {\n background: #fff;\n border-color: #d9d9d9;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .clear-button {\n color: #1890ff;\n height: auto;\n padding: 0;\n}\n\n.history-modal-container .history-search-section .search-input-wrapper .clear-button:hover {\n color: #40a9ff;\n}\n\n.history-modal-container .history-content {\n flex: 1;\n padding: 0 25px 25px;\n overflow-y: auto;\n}\n\n.history-modal-container .history-content .history-group {\n margin-bottom: 10px;\n}\n\n.history-modal-container .history-content .history-group .history-group-title {\n color: rgba(0, 0, 0, .45);\n height: 40px;\n font-size: 12px;\n font-weight: 400;\n line-height: 40px;\n}\n\n.history-modal-container .history-content .history-group .history-item {\n cursor: pointer;\n color: rgba(0, 0, 0, .85);\n white-space: nowrap;\n text-overflow: ellipsis;\n height: 40px;\n font-size: 14px;\n line-height: 40px;\n overflow: hidden;\n}\n\n.history-modal-container .history-content .history-group .history-item:hover {\n background: #f2f4f7;\n margin: 0 -8px;\n padding: 0 8px;\n}\n\n.history-modal-container .history-content .no-results {\n text-align: center;\n color: #999;\n padding: 40px 20px;\n}\n\n[data-theme=\"dark\"] .history-selector .history-timestamp, [data-theme=\"dark\"] .history-selector .history-path {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .history-selector .history-description {\n color: #f8fafd;\n}\n\n[data-theme=\"dark\"] .history-selector .history-no-items {\n color: rgba(255, 255, 255, .45);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item:hover {\n background: rgba(255, 255, 255, .08);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item .history-clear-icon {\n border-color: rgba(255, 255, 255, .12);\n}\n\n[data-theme=\"dark\"] .history-selector .history-item .history-clear-icon:hover {\n border-color: #40a9ff;\n}\n\n[data-theme=\"dark\"] .history-selector .history-load-more {\n color: #1890ff;\n}\n\n[data-theme=\"dark\"] .history-selector .history-load-more:hover {\n color: #40a9ff;\n}\n\n",".playground-panel {\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.playground-panel .playground-panel-header {\n flex-shrink: 0;\n height: 60px;\n padding: 0 24px 0 24px;\n border-bottom: rgba(0, 0, 0, 0.06) solid 1px;\n display: flex;\n align-items: center;\n}\n.playground-panel .playground-panel-header .header-row {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 10px;\n width: 100%;\n}\n.playground-panel .playground-panel-header h2 {\n margin: 0 0 16px 0;\n font-size: 18px;\n font-weight: 600;\n color: #1890ff;\n}\n.playground-panel .playground-panel-playground {\n flex: 1;\n display: flex;\n flex-direction: column;\n min-height: 0;\n padding: 0 24px 0 24px;\n}\n.playground-panel .playground-panel-playground .playground-container {\n flex: 1;\n background: white;\n border: 1px solid #0000001f;\n border-radius: 8px;\n overflow: hidden;\n border: none;\n}\n",".playground-panel {\n flex-direction: column;\n height: 100%;\n display: flex;\n}\n\n.playground-panel .playground-panel-header {\n border-bottom: 1px solid #0000000f;\n flex-shrink: 0;\n align-items: center;\n height: 60px;\n padding: 0 24px;\n display: flex;\n}\n\n.playground-panel .playground-panel-header .header-row {\n justify-content: space-between;\n align-items: center;\n gap: 10px;\n width: 100%;\n display: flex;\n}\n\n.playground-panel .playground-panel-header h2 {\n color: #1890ff;\n margin: 0 0 16px;\n font-size: 18px;\n font-weight: 600;\n}\n\n.playground-panel .playground-panel-playground {\n flex-direction: column;\n flex: 1;\n min-height: 0;\n padding: 0 24px;\n display: flex;\n}\n\n.playground-panel .playground-panel-playground .playground-container {\n background: #fff;\n border: none;\n border-radius: 8px;\n flex: 1;\n overflow: hidden;\n}\n",".scrcpy-container {\n width: 100%;\n height: 100%;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card {\n background: transparent;\n border: none;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card .ant-card-head {\n display: none;\n}\n.scrcpy-container .ant-card .ant-card-body {\n padding: 0;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row {\n flex: 1;\n margin: 0 !important;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col {\n padding: 0 !important;\n}\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col:first-child {\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .header-bar {\n display: grid;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n padding: 8px 16px;\n background: rgba(255, 255, 255, 0.9);\n backdrop-filter: blur(10px);\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n border: 1px solid #f5f5f5;\n}\n.scrcpy-container .header-bar .header-left {\n display: flex;\n align-items: center;\n gap: 8px;\n}\n.scrcpy-container .header-bar .header-left .ant-typography {\n color: #333;\n font-size: 14px;\n margin: 0;\n}\n.scrcpy-container .header-bar .header-left .anticon {\n color: #999;\n font-size: 14px;\n cursor: pointer;\n}\n.scrcpy-container .header-bar .header-left .anticon:hover {\n color: #666;\n}\n.scrcpy-container .header-bar .screen-info {\n text-align: center;\n}\n.scrcpy-container .header-bar .screen-info .ant-typography {\n color: #666;\n font-size: 14px;\n margin: 0;\n}\n.scrcpy-container .header-bar .header-right {\n justify-self: end;\n display: flex;\n gap: 8px;\n align-items: center;\n}\n.scrcpy-container .header-bar .header-right .ant-btn {\n width: 16px;\n height: 16px;\n border: none;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n.scrcpy-container .header-bar .header-right .ant-btn .link-icon {\n font-size: 16px;\n line-height: 1;\n}\n.scrcpy-container .video-section {\n position: relative;\n flex: 1;\n display: flex;\n flex-direction: column;\n}\n.scrcpy-container .video-section .video-container {\n width: 100%;\n flex: 1;\n background-color: #f5f5f5;\n display: flex;\n justify-content: center;\n align-items: center;\n border-bottom-left-radius: 12px;\n border-bottom-right-radius: 12px;\n overflow: hidden;\n position: relative;\n}\n.scrcpy-container .video-section .video-container .canvas-wrapper {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.scrcpy-container .video-section .video-container canvas {\n border: none !important;\n box-shadow: none !important;\n}\n.scrcpy-container .video-section .video-container .empty-state {\n position: relative;\n z-index: 1;\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n padding: 24px;\n text-align: center;\n}\n.scrcpy-container .video-section .video-container .empty-state .empty-state-icon {\n font-size: 48px;\n line-height: 1;\n}\n.scrcpy-container .video-section .video-container .empty-state .empty-state-text {\n color: #666;\n font-size: 16px;\n margin-bottom: 8px;\n}\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner {\n margin-top: 16px;\n}\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner .ant-spin {\n color: #1677ff;\n}\n.scrcpy-container .video-section .video-container .empty-state .ant-btn {\n min-width: 120px;\n height: 40px;\n font-size: 16px;\n border-radius: 20px;\n}\n.scrcpy-container .video-section .screen-info {\n position: absolute;\n bottom: 8px;\n left: 8px;\n background: rgba(0, 0, 0, 0.5);\n padding: 4px 8px;\n border-radius: 4px;\n}\n.scrcpy-container .video-section .screen-info .ant-typography {\n color: white;\n margin: 0;\n}\n",".scrcpy-container {\n flex-direction: column;\n width: 100%;\n height: 100%;\n display: flex;\n}\n\n.scrcpy-container .ant-card {\n background: none;\n border: none;\n flex-direction: column;\n flex: 1;\n display: flex;\n}\n\n.scrcpy-container .ant-card .ant-card-head {\n display: none;\n}\n\n.scrcpy-container .ant-card .ant-card-body {\n flex-direction: column;\n flex: 1;\n padding: 0;\n display: flex;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row {\n flex: 1;\n margin: 0 !important;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col {\n padding: 0 !important;\n}\n\n.scrcpy-container .ant-card .ant-card-body .ant-row .ant-col:first-child {\n flex-direction: column;\n flex: 1;\n display: flex;\n}\n\n.scrcpy-container .header-bar {\n -webkit-backdrop-filter: blur(10px);\n backdrop-filter: blur(10px);\n background: #ffffffe6;\n border: 1px solid #f5f5f5;\n border-top-left-radius: 12px;\n border-top-right-radius: 12px;\n grid-template-columns: 1fr auto 1fr;\n align-items: center;\n padding: 8px 16px;\n display: grid;\n}\n\n.scrcpy-container .header-bar .header-left {\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-left .ant-typography {\n color: #333;\n margin: 0;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-left .anticon {\n color: #999;\n cursor: pointer;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-left .anticon:hover {\n color: #666;\n}\n\n.scrcpy-container .header-bar .screen-info {\n text-align: center;\n}\n\n.scrcpy-container .header-bar .screen-info .ant-typography {\n color: #666;\n margin: 0;\n font-size: 14px;\n}\n\n.scrcpy-container .header-bar .header-right {\n justify-self: end;\n align-items: center;\n gap: 8px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-right .ant-btn {\n border: none;\n justify-content: center;\n align-items: center;\n width: 16px;\n height: 16px;\n display: flex;\n}\n\n.scrcpy-container .header-bar .header-right .ant-btn .link-icon {\n font-size: 16px;\n line-height: 1;\n}\n\n.scrcpy-container .video-section {\n flex-direction: column;\n flex: 1;\n display: flex;\n position: relative;\n}\n\n.scrcpy-container .video-section .video-container {\n background-color: #f5f5f5;\n border-bottom-right-radius: 12px;\n border-bottom-left-radius: 12px;\n flex: 1;\n justify-content: center;\n align-items: center;\n width: 100%;\n display: flex;\n position: relative;\n overflow: hidden;\n}\n\n.scrcpy-container .video-section .video-container .canvas-wrapper {\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100%;\n display: flex;\n position: absolute;\n top: 0;\n left: 0;\n}\n\n.scrcpy-container .video-section .video-container canvas {\n box-shadow: none !important;\n border: none !important;\n}\n\n.scrcpy-container .video-section .video-container .empty-state {\n z-index: 1;\n text-align: center;\n flex-direction: column;\n align-items: center;\n gap: 16px;\n padding: 24px;\n display: flex;\n position: relative;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .empty-state-icon {\n font-size: 48px;\n line-height: 1;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .empty-state-text {\n color: #666;\n margin-bottom: 8px;\n font-size: 16px;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner {\n margin-top: 16px;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .loading-spinner .ant-spin {\n color: #1677ff;\n}\n\n.scrcpy-container .video-section .video-container .empty-state .ant-btn {\n border-radius: 20px;\n min-width: 120px;\n height: 40px;\n font-size: 16px;\n}\n\n.scrcpy-container .video-section .screen-info {\n background: #00000080;\n border-radius: 4px;\n padding: 4px 8px;\n position: absolute;\n bottom: 8px;\n left: 8px;\n}\n\n.scrcpy-container .video-section .screen-info .ant-typography {\n color: #fff;\n margin: 0;\n}\n"],"names":[],"mappings":"AADA,mKCQA,mGAQA,0CAKA,0CAKA,sFAQA,sIASA,gDAIA,qFAOA,+FAOA,4EAOA,iGAOA,0EAKA,+EAOA,gGAOA,6EAOA,oFAOA,oDAIA,uHAUA,kFAMA,8CAIA,gGAMA,4DAKA,2DAKA,gICpJA,kEAOA,sJAOA,0OAOA,iLAKA,qNAIA,gHAOA,mGAMA,gLAWA,gHAMA,wJAUA,+JAQA,mMAUA,sIAMA,6GAIA,yMAWA,wLAQA,8JAOA,6OAaA,sLAOA,mJAMA,wIAQA,gKAQA,kHAKA,mJAIA,oOAIA,iOAIA,2QAIA,2FAIA,+GAIA,8EAIA,wOAIA,8IAIA,oIAIA,uHCnNA,kECOA,uEAKA,qHASA,gIASA,iLAWA,mFAKA,uIAQA,sKAWA,yFAMA,yIASA,uHAOA,4FAMA,2EAKA,iEAIA,yEAKA,wFAKA,oLASA,gIAKA,iFAIA,sIAMA,6IAMA,8JAMA,mJAKA,6IAKA,gJAOA,8EAMA,4CAKA,6BChLA,sGAQA,sFCRA,qDAOA,0FAOA,2CAIA,oEAMA,6CAIA,uDAIA,6DChCA,+BAKA,8BAIA,+BAIA,oCAIA,oGAOA,iCAIA,uFAMA,qGAIA,yECtCA,qUAgBA,+FAIA,iGAIA,gGAIA,+HAKA,uUAcA,8EAOA,uDAKA,iRAWA,4IAIA,+FAoBA,0GC9FA,yIAWA,yEAMA,qEAMA,4DAIA,oEC3BA,+RAoBA,wDAIA,mFAIA,6RAeA,kLAYA,gHAOA,uHAOA,sGAIA,uFAKA,+GAQA,yGAQA,4JASA,mIASA,kNAcA,qDAIA,+HAQA,+LAYA,qFAKA,0MAaA,uDAIA,sJAOA,yHAOA,4EAKA,kGAKA,qGAIA,+EAIA,+LAIA,0FChNA,6EAQA,uIASA,mGAMA,kLAYA,4FAIA,oGCvCA,mHAUA,8FAOA,0GAMA,mIASA,gHAOA,kHAKA,gGAIA,qJAQA,qHAKA,4KAMA,uIAIA,8HAIA,2HAKA,+FAIA,+GAMA,+JASA,4FAIA,6FAIA,sGAKA,kHAOA,6NAYA,+MAaA,kFAIA,wFAIA,0FAIA,sGAKA,+GAOA,mFAKA,6HAOA,6IAMA,uGAKA,6IAMA,6PAaA,qMASA,4NAUA,wJASA,+IASA,6IAOA,4IAMA,iGAMA,6HAQA,gFAMA,sDAIA,iEAIA,uHAOA,iHAOA,yDAIA,8GAOA,8GAOA,8FAKA,2FAKA,qGAMA,mFAIA,oEAIA,wEAIA,8EAIA,gFAIA,uEAIA,gGAKA,2GAIA,kGAIA,4GAIA,sFAIA,sFAIA,sEAIA,kOAIA,4FAIA,0FC7YA,qEAOA,0GAOA,qMAYA,gGAIA,gIAKA,gIAKA,oHAIA,kHAKA,wIAMA,8QAcA,gHAIA,sHAIA,sLAMA,8IAIA,sGAIA,qSAgBA,+JAMA,mHAIA,+JAMA,0IAIA,gWAiBA,oFAIA,mTAUA,0EAUA,sGAKA,qTAgBA,gIAMA,wIAMA,oGAIA,8GAIA,mJAKA,wOAKA,60BA4BA,wGAIA,oFAIA,qDAIA,4VAoBA,qEAIA,uFAOA,6EAIA,8QAOA,wHAKA,6JAMA,2LAQA,oNAgBA,+VAIA,4VAIA,ihCAIA,kgCAYA,gIAKA,8HAIA,kIAIA,iTAMA,kSAIA,4GAIA,4IAKA,sIAIA,kGAIA,mIAKA,uPAIA,kGAIA,yNASA,2MAMA,2EAOA,iFAMA,mDAIA,6FAMA,oEAIA,qGAKA,qGAKA,yFAIA,2KAKA,sOAMA,mKAKA,iJAIA,qLAKA,2LAIA,+HAKA,yRAKA,2HAIA,oRAKA,gRAMA,oLAMA,6LAMA,kGAIA,+OAIA,2IAIA,khBAMA,2PAMA,uEAIA,uFAKA,oFAIA,2JAIA,2FAKA,sFAIA,kGAKA,2DAIA,6DAIA,gEAIA,uGAIA,mGAIA,6GClmBA,4CAKA,0MAcA,sHASA,yJASA,kJAQA,gGAKA,uFAIA,mFAKA,gIAOA,0JAQA,2IAMA,kOAKA,yHAMA,yGAIA,qFAMA,4EAIA,0JAQA,4MAWA,4HAMA,qGAMA,yHAIA,uEAIA,sEAIA,6EAIA,6FAIA,iGAIA,qEAIA,2ECpKA,iECOA,sJASA,yIAQA,2GAOA,qHAQA,0ICvCA,4ECQA,iGAQA,wDAIA,+FAOA,8EAKA,iFAIA,mHAMA,uRAaA,mFAMA,8FAMA,6FAMA,qEAIA,6DAIA,8FAMA,qGAOA,+IASA,6FAKA,6FAOA,qPAaA,+KAWA,yGAKA,yLAWA,8GAKA,6HAMA,gGAIA,wGAIA,sIAOA,2IASA"}
|