:root{--color-primary: #165DFF;--color-primary-hover: #4080FF;--color-primary-active: #0E42D2;--color-success: #00B42A;--color-warning: #FF7D00;--color-danger: #F53F3F;--color-info: #86909C;--color-border-light: #F2F3F5;--shadow-1: 0 1px 2px rgba(0, 0, 0, .03);--shadow-2: 0 2px 6px rgba(0, 0, 0, .04);--shadow-3: 0 4px 12px rgba(0, 0, 0, .06);--radius-small: 4px;--radius-medium: 6px;--radius-large: 8px;--radius-xl: 12px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--header-height: 56px;--sidebar-width: 240px;--sidebar-collapsed-width: 64px}[data-theme=dark]{--color-text-1: #E5E6EB;--color-text-2: #C9CDD4;--color-text-3: #86909C;--color-text-4: #6B7785;--color-bg-1: #1D2129;--color-bg-2: #252A34;--color-bg-3: #2D3340;--color-bg-4: #373E49;--color-bg-5: #414A59;--color-border: #373E49;--color-border-light: #2D3340}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}h1,h2,h3,h4,h5,h6,p,ul,ol,li,blockquote,pre,figure,figcaption{margin:0;padding:0}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5715;color:var(--color-text-1);background-color:var(--color-bg-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{height:100%}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background-color:var(--color-bg-5);border-radius:3px;transition:background-color var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-text-4)}.flex{display:flex}.flex-col{display:flex;flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-1{gap:4px}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cursor-pointer{cursor:pointer}.page-container{padding:24px;max-width:100%;min-height:calc(100vh - var(--header-height))}.page-header{margin-bottom:24px}.page-title{font-size:20px;font-weight:600;color:var(--color-text-1);margin-bottom:8px}.page-description{font-size:14px;color:var(--color-text-3)}.card{background:var(--color-bg-1);border:1px solid var(--color-border-light);border-radius:var(--radius-large);padding:20px;transition:box-shadow var(--transition-fast),border-color var(--transition-fast)}.card:hover{box-shadow:var(--shadow-2)}.card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.card-title{font-size:16px;font-weight:600;color:var(--color-text-1)}.status-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 10px;border-radius:10px;font-size:12px;font-weight:500}.status-pending{background:var(--color-bg-3);color:var(--color-text-3)}.status-processing{background:#165dff1a;color:var(--color-primary)}.status-completed{background:#00b42a1a;color:var(--color-success)}.status-failed{background:#f53f3f1a;color:var(--color-danger)}.prompt-editor-container{display:flex;flex-direction:column;height:100%;background:var(--color-bg-1);border:1px solid var(--color-border);border-radius:var(--radius-large);overflow:hidden}.prompt-editor-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--color-border-light);background:var(--color-bg-2)}.prompt-editor-body{flex:1;display:flex;overflow:hidden}.prompt-editor-main{flex:1;padding:20px;overflow-y:auto}.prompt-editor-sidebar{width:320px;border-left:1px solid var(--color-border-light);background:var(--color-bg-2);overflow-y:auto}.mention-tag{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;margin:0 2px;border:1px solid var(--color-primary);border-radius:4px;background:#165dff14;color:var(--color-primary);font-size:inherit;cursor:pointer;transition:all var(--transition-fast);vertical-align:middle}.mention-tag:hover{background:#165dff26;border-color:var(--color-primary-hover)}.mention-tag.character{border-color:#722ed1;background:#722ed114;color:#722ed1}.mention-tag.scene_bg{border-color:#00b42a;background:#00b42a14;color:#00b42a}.mention-tag.prop{border-color:#ff7d00;background:#ff7d0014;color:#ff7d00}.mention-tag.audio{border-color:#86909c;background:#86909c14;color:#86909c}.resource-panel{padding:16px}.resource-panel-section{margin-bottom:24px}.resource-panel-section:last-child{margin-bottom:0}.resource-panel-title{font-size:13px;font-weight:600;color:var(--color-text-2);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.resource-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.resource-card{position:relative;aspect-ratio:1;border:2px solid var(--color-border);border-radius:var(--radius-medium);overflow:hidden;cursor:pointer;transition:all var(--transition-fast);background:var(--color-bg-1)}.resource-card:hover{border-color:var(--color-primary);box-shadow:var(--shadow-2);transform:translateY(-2px)}.resource-card.selected{border-color:var(--color-primary);background:#165dff0d}.resource-card-image{width:100%;height:100%;object-fit:cover}.resource-card-name{position:absolute;bottom:0;left:0;right:0;padding:4px;background:linear-gradient(transparent,#000000b3);color:#fff;font-size:11px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resource-add-btn{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border:2px dashed var(--color-border);border-radius:var(--radius-medium);color:var(--color-text-3);font-size:24px;cursor:pointer;transition:all var(--transition-fast);background:transparent}.resource-add-btn:hover{border-color:var(--color-primary);color:var(--color-primary);background:#165dff0d}.scene-timeline{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--color-bg-1);border-radius:var(--radius-large);border:1px solid var(--color-border-light)}.timeline-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--color-bg-2);border:1px solid var(--color-border-light);border-radius:var(--radius-medium);cursor:pointer;transition:all var(--transition-fast)}.timeline-item:hover{border-color:var(--color-primary);background:#165dff05}.timeline-item.active{border-color:var(--color-primary);background:#165dff0d}.timeline-sequence{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--color-bg-3);border-radius:var(--radius-small);font-weight:600;font-size:13px;color:var(--color-text-2);flex-shrink:0}.timeline-bar{flex:1;height:28px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);border-radius:4px;opacity:.8;position:relative;overflow:hidden}.timeline-bar:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.2) 50%,transparent 100%);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.timeline-duration{font-size:12px;color:var(--color-text-3);min-width:36px;text-align:right;flex-shrink:0}.timeline-status{flex-shrink:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn var(--transition-normal) ease-out}.slide-up{animation:slideUp var(--transition-normal) ease-out}.app-header{height:var(--header-height);padding:0 24px;background:var(--color-bg-1);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-1);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:100;transition:background-color var(--transition-normal),border-color var(--transition-normal)}.app-logo{font-size:20px;font-weight:800;letter-spacing:.5px;background:linear-gradient(135deg,#4a90ff,#165dff);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.top-nav-menu.arco-menu-horizontal{background:transparent;border-bottom:none}.top-nav-menu .arco-menu-item{display:flex;align-items:center;gap:6px;height:40px;line-height:40px;margin:0 4px;padding:0 14px;border-radius:var(--radius-medium);color:var(--color-text-2);font-weight:500;transition:color var(--transition-fast),background-color var(--transition-fast)}.top-nav-menu .arco-menu-item:hover{background:var(--color-bg-3);color:var(--color-text-1)}.top-nav-menu .arco-menu-item.arco-menu-selected{color:var(--color-primary);background:#165dff14;font-weight:600}.top-nav-menu.arco-menu-horizontal .arco-menu-selected:after{display:none}.header-icon-btn.arco-btn-text{color:var(--color-text-2);font-size:18px}.header-icon-btn.arco-btn-text:hover{color:var(--color-primary);background:var(--color-bg-3)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;cursor:pointer;color:var(--color-text-2);border:1px solid var(--color-border);background:var(--color-bg-1);transition:all var(--transition-fast)}.theme-toggle:hover{color:var(--color-primary);border-color:var(--color-primary);background:#165dff0f}.user-trigger{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 6px;border-radius:999px;cursor:pointer;transition:background-color var(--transition-fast)}.user-trigger:hover{background:var(--color-bg-3)}.user-name{font-size:14px;color:var(--color-text-1);font-weight:500;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-badge{font-size:11px;color:#fff;background:linear-gradient(135deg,#ff7d00,#ff9a3c);padding:1px 8px;border-radius:999px;font-weight:600;white-space:nowrap}.org-trigger{display:flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;cursor:pointer;color:var(--color-text-1);border:1px solid var(--color-border-2);background:var(--color-fill-1);transition:all var(--transition-fast);max-width:200px}.org-trigger:hover{color:var(--color-primary);border-color:var(--color-primary);background:#165dff14}.org-trigger>svg{color:var(--color-primary);flex-shrink:0}.org-name{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:140px}.credit-badge{display:flex;align-items:center;gap:4px;padding:4px 12px;border-radius:999px;font-size:13px;font-weight:600;color:rgb(var(--warning-6));background:#ff7d0014;border:1px solid rgba(255,125,0,.2);white-space:nowrap;transition:all var(--transition-fast)}.credit-badge:hover{background:#ff7d0024;border-color:#ff7d0066}.app-sider .arco-menu{padding-top:12px;border-right:none;background:transparent}.app-sider .arco-menu-item{display:flex;align-items:center;gap:8px;margin:4px 12px;padding-left:14px;border-radius:var(--radius-medium);height:44px;line-height:44px;color:var(--color-text-2);font-weight:500;transition:color var(--transition-fast),background-color var(--transition-fast)}.app-sider .arco-menu-item:hover{background:var(--color-bg-3);color:var(--color-text-1)}.app-sider .arco-menu-item.arco-menu-selected{color:var(--color-primary);background:#165dff1a;font-weight:600}.app-sider .arco-menu-selected:after{display:none}.app-sider .arco-menu-item .arco-icon{font-size:16px}.app-sider{display:flex;flex-direction:column}.app-sider .arco-layout-sider-children{display:flex;flex-direction:column;height:100%;overflow:hidden}.app-sider .arco-menu{flex:1;overflow-y:auto;overflow-x:hidden}.sider-footer{flex-shrink:0;padding:12px 16px 16px;display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--color-border);background:var(--color-bg-1)}.sider-collapse-btn{color:var(--color-text-3);border-color:var(--color-border);background:var(--color-bg-2)}.sider-collapse-btn:hover{color:var(--color-primary);border-color:var(--color-primary)}.app-sider.arco-layout-sider-collapsed .arco-menu-item{justify-content:center;padding:0!important;margin:4px auto!important;width:40px;min-width:40px;flex-shrink:0;gap:0!important}.app-sider.arco-layout-sider-collapsed .arco-menu-item .menu-label{display:none}.app-sider.arco-layout-sider-collapsed .arco-menu-item .arco-icon{font-size:18px;flex-shrink:0;flex-grow:0;width:18px;height:18px;margin:0!important}.app-sider.arco-layout-sider-collapsed .sider-collapse-btn{padding:0}.app-sider.arco-layout-sider-collapsed .sider-collapse-btn span:not(.arco-icon){display:none}.canvas-page{height:100%;width:100%}.react-flow{--xy-background-color: var(--color-fill-1);--xy-edge-stroke: var(--color-text-3);--xy-edge-stroke-selected: var(--color-primary);--xy-controls-button-background-color: var(--color-bg-1);--xy-controls-button-color: var(--color-text-2);--xy-controls-button-border-color: var(--color-border);--xy-minimap-background-color: var(--color-bg-2)}.react-flow__node:focus,.react-flow__node:focus-visible{outline:none}.react-flow__node.react-flow__node-output{width:auto!important;min-width:0;padding:0!important;border:none!important;border-radius:0;background:transparent!important;font-size:inherit;color:inherit;text-align:left;box-shadow:none!important}.canvas-node-shell{font-family:inherit}.react-flow__node.selected .canvas-node-shell{box-shadow:0 0 0 2px var(--color-primary),0 4px 12px #165dff26!important}.react-flow__node.dragging{opacity:.8}.canvas-node-shell .pel-editor{font-size:12px!important;min-height:50px!important;padding:4px 6px!important}.react-flow__handle{transition:transform .15s,box-shadow .15s;cursor:crosshair}.react-flow__handle:hover{transform:scale(1.4);box-shadow:0 0 0 3px #165dff33}.react-flow__handle-connecting{transform:scale(1.3)}.react-flow__edge-path{stroke-width:2}.react-flow__edge.animated .react-flow__edge-path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}@keyframes dashdraw{to{stroke-dashoffset:-10}}.canvas-node-status.status-running{animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(1.3)}}.react-flow__minimap{border-radius:6px;border:1px solid var(--color-border)}.react-flow__minimap-mask{fill:#0000001a}.react-flow__controls{border-radius:6px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.react-flow__controls-button{border-bottom:1px solid var(--color-border)!important}.react-flow__controls-button:last-child{border-bottom:none!important}.react-flow__controls-button:hover{background:var(--color-fill-2)!important}.node-palette{-webkit-user-select:none;user-select:none}.node-palette [draggable=true]{transition:all .15s}.node-palette [draggable=true]:active{cursor:grabbing}.canvas-page .arco-btn-size-small{font-size:12px}[data-theme=dark] .react-flow__controls-button{background:var(--color-bg-2)!important;color:var(--color-text-2)!important;fill:var(--color-text-2)!important}[data-theme=dark] .react-flow__controls-button:hover{background:var(--color-bg-3)!important}[data-theme=dark] .react-flow__attribution{background:transparent!important;color:var(--color-text-4)!important}
