#app,body,html{margin:0;height:100%;min-height:100%;overflow:hidden;background:#0e1014;color:#f5f7fb;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Arial,sans-serif}*{box-sizing:border-box}button{font:inherit}.studio{height:100vh;min-height:0;display:flex;flex-direction:column;overflow:hidden;background:#111418}.header{height:72px;gap:16px;padding:0 28px;background:#1a1d22;border-bottom:1px solid #2f363d}.header,.logo-mark{display:flex;align-items:center}.logo-mark{width:38px;height:38px;border-radius:8px;justify-content:center;background:#fff;overflow:hidden;box-shadow:0 0 22px rgba(0,178,94,.3)}.logo-mark img{width:32px;height:32px;display:block;-o-object-fit:contain;object-fit:contain}.brand{font-size:24px;font-weight:800;color:#f5f7fb;margin-right:70px}nav{display:flex;align-items:center;gap:44px;flex:1}nav button{position:relative;border:0;color:#d5dae5;background:transparent;font-size:20px;font-weight:800;cursor:pointer;padding:24px 0}nav button.active{color:#f5f7fb}nav button.active:after{content:"";position:absolute;left:0;right:0;bottom:10px;height:3px;border-radius:4px;background:#00b25e}.header-right{display:flex;align-items:center;gap:12px}.balance{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:0 12px;border:1px solid #3a3f47;border-radius:999px;color:#e6e9f2;background:#252a2f;font-weight:800}.balance b{color:#3ccb85;font-size:12px}.workspace{flex:1;display:grid;grid-template-columns:430px minmax(380px,1fr) 320px;height:calc(100vh - 72px);min-height:calc(100vh - 72px);overflow:hidden}.control-panel,.record-panel{height:100%;min-height:0;background:#1a1d22;padding:22px 20px;overflow-y:auto;overscroll-behavior:contain;-ms-overflow-style:none;scrollbar-width:none}.control-panel::-webkit-scrollbar,.record-panel::-webkit-scrollbar{width:0;height:0;display:none}.control-panel{border-right:1px solid #2f363d}.record-panel{border-left:1px solid #2f363d}.task-head{border:1px solid #3a3f47;border-radius:8px;background:#252a2f;padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.task-head span{display:block;color:#aeb4c2;font-size:13px}.task-head strong{display:block;margin-top:6px;color:#f5f7fb;font-size:18px}.task-head em{font-style:normal;color:#e6e9f2;background:#008a48;border-radius:999px;padding:6px 10px;white-space:nowrap;font-size:12px}.task-head em.warn{color:#f5f7fb;background:#b42318}.section-title{color:#f5f7fb;font-size:18px;font-weight:800;margin:18px 0 12px}.full{width:100%}.model-card{margin-top:12px;border:1px solid #3a3f47;border-radius:8px;background:#22282e;padding:12px;display:grid;grid-template-columns:1fr auto;gap:5px 10px}.model-card b{color:#f5f7fb}.model-card span{color:#d5dae5;font-size:12px}.model-card strong{grid-row:1/3;grid-column:2;color:#f5f7fb;background:#00b25e;border-radius:6px;padding:8px 10px;align-self:center}.prompt-wrap{position:relative;border:1px solid #3a3f47;border-radius:8px;background:#2b3035;padding:12px 10px 30px 12px}.prompt-wrap:focus-within{border-color:#00b25e;box-shadow:inset 0 0 0 1px rgba(0,178,94,.12)}.prompt-wrap textarea{display:block;width:100%;height:154px;resize:none;border:0;outline:0;background:transparent;color:#f5f7fb;line-height:1.7;padding:0 12px 0 0;scrollbar-width:thin;scrollbar-color:#5b626b transparent}.prompt-wrap textarea::-webkit-scrollbar{width:6px}.prompt-wrap textarea::-webkit-scrollbar-track{background:transparent}.prompt-wrap textarea::-webkit-scrollbar-thumb{border-radius:999px;background:#5b626b}.prompt-wrap textarea::-webkit-scrollbar-thumb:hover{background:#7a838f}.prompt-wrap:focus-within textarea{scrollbar-color:#00b25e transparent}.prompt-wrap:focus-within textarea::-webkit-scrollbar-thumb{background:#00b25e}.prompt-wrap textarea::-moz-placeholder{color:#8b91a0}.prompt-wrap textarea::placeholder{color:#8b91a0}.prompt-wrap span{position:absolute;left:12px;right:14px;bottom:10px;display:flex;justify-content:flex-start;color:#8b91a0;font-size:13px;line-height:16px;pointer-events:none}.prompt-wrap:focus-within span{color:#3ccb85}.featured-title{margin-bottom:10px}.featured-prompt-entry{width:100%;height:48px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #00b25e;border-radius:8px;color:#f5f7fb;background:#173b2a;font-weight:800;cursor:pointer}.featured-prompt-entry:hover{border-color:#3ccb85;background:#1c4b34}.featured-prompt-entry i{color:#3ccb85}.reference-box{border:1px solid #3a3f47;border-radius:8px;background:#22282e;padding:12px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.reference-box.dragging{border-color:#00b25e;background:#1e3329;box-shadow:0 0 0 3px rgba(0,178,94,.14)}.reference-box input{display:none}.reference-upload{width:100%;height:64px;border:1px dashed #00b25e;border-radius:8px;background:#173b2a;color:#f5f7fb;cursor:pointer;font-weight:800;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.reference-box.dragging .reference-upload{border-color:#3ccb85;background:#124832;box-shadow:inset 0 0 0 1px rgba(60,203,133,.3)}.reference-upload i{margin-right:6px;color:#3ccb85}.reference-upload:disabled{cursor:not-allowed;opacity:.65}.reference-box>span{display:block;color:#8b91a0;font-size:12px;margin-top:8px}.reference-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:12px}.reference-item{position:relative;aspect-ratio:1/1;border:1px solid #3a3f47;border-radius:8px;overflow:hidden;background:#1a1d22}.reference-item img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.reference-item button{position:absolute;right:4px;top:4px;width:22px;height:22px;border:0;border-radius:999px;background:rgba(14,16,20,.78);color:#f5f7fb;cursor:pointer}.ratio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.ratio-grid button{height:70px;border:1px solid #3a3f47;border-radius:8px;background:#2b3035;color:#b8bfce;cursor:pointer}.ratio-grid button.active{border-color:#00b25e;color:#f5f7fb;background:#173b2a}.ratio-grid i{display:block;margin:0 auto 8px;border:2px solid currentColor;border-radius:3px}.param-label{color:#d5dae5;font-size:14px;font-weight:800;margin:10px 0 8px}.video-duration-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:14px}.video-duration-grid button{height:52px;border:1px solid #3a3f47;border-radius:8px;background:#2b3035;color:#b8bfce;font-size:16px;font-weight:800;cursor:pointer}.video-duration-grid button.active{border-color:#00b25e;color:#f5f7fb;background:#173b2a}.bottom-action{position:sticky;bottom:-22px;z-index:5;margin:18px -20px -22px;padding:12px 20px 22px;background:linear-gradient(180deg,rgba(26,29,34,.72),#1a1d22 32%);border-top:1px solid #2f363d}.param-row{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:10px;margin-bottom:12px;color:#d5dae5}.cost-line{height:44px;display:flex;align-items:center;justify-content:space-between;border:1px solid #3a3f47;border-radius:8px;background:#22282e;color:#b8bfce;padding:0 12px;margin-top:0}.cost-line b{color:#f5f7fb}.generate-btn{width:100%;height:50px;border:0;border-radius:8px;margin-top:12px;color:#f5f7fb;background:#00b25e;font-size:17px;font-weight:800;cursor:pointer;box-shadow:0 12px 28px rgba(0,178,94,.26)}.generate-btn:hover{background:#008a48}.generate-btn:disabled{cursor:not-allowed;opacity:.65}.canvas-panel{height:100%;min-height:0;background:#0e1014;padding:40px;overflow:hidden}.canvas-panel,.empty-state{display:flex;align-items:center;justify-content:center}.empty-state{width:min(720px,100%);aspect-ratio:1/1;align-self:flex-start;margin-top:28px;background:#1a1d22;border:1px solid #2f363d;border-radius:8px;flex-direction:column;color:#b8bfce}.empty-art{width:104px;height:92px;border-radius:14px;background:#2d3339;display:flex;align-items:flex-end;justify-content:center;opacity:.95}.empty-art div{width:72px;height:54px;background:linear-gradient(135deg,#555b66 48%,#8b919c 0 55%,#383d46 55%);clip-path:polygon(0 100%,34% 22%,60% 70%,74% 52%,100% 100%)}.empty-state h2{margin:28px 0 10px;color:#f5f7fb;font-size:20px}.empty-state p{margin:0}.generating-state{width:min(720px,100%);aspect-ratio:1/1;align-self:flex-start;margin-top:28px;background:#1a1d22;border:1px solid #2f363d;border-radius:8px;flex-direction:column;color:#b8bfce;overflow:hidden}.generate-orbit,.generating-state{display:flex;align-items:center;justify-content:center}.generate-orbit{position:relative;width:156px;height:156px}.generate-orbit i{position:absolute;inset:0;border:1px solid rgba(0,178,94,.22);border-top-color:#00b25e;border-radius:50%;animation:yy-spin 1.4s linear infinite}.generate-orbit i:nth-child(2){inset:18px;border-top-color:#3ccb85;animation-duration:1.9s;animation-direction:reverse}.generate-orbit i:nth-child(3){inset:36px;border-top-color:#00b25e;animation-duration:2.4s}.generate-orbit strong{position:relative;z-index:1;width:82px;height:82px;border-radius:50%;background:#252a2f;display:flex;align-items:center;justify-content:center;color:#f5f7fb;box-shadow:0 0 28px rgba(0,178,94,.28)}.generating-state h2{margin:26px 0 10px;color:#f5f7fb;font-size:22px}.generating-state p{margin:0;color:#b8bfce}.generate-progress{width:260px;height:6px;margin-top:26px;border-radius:999px;background:#2d3339;overflow:hidden}.generate-progress span{display:block;width:42%;height:100%;border-radius:inherit;background:#00b25e;animation:yy-progress 1.25s ease-in-out infinite}@keyframes yy-spin{to{transform:rotate(1turn)}}@keyframes yy-progress{0%{transform:translateX(-110%)}to{transform:translateX(260%)}}.result-view{position:relative;width:min(860px,100%);min-height:0;align-self:flex-start;padding-top:28px;padding-bottom:24px;display:flex;align-items:center;justify-content:flex-start;flex-direction:column;gap:18px}.result-view img,.result-view video{max-width:100%;max-height:calc(100vh - 230px);border-radius:8px;border:1px solid #3a3f47;-o-object-fit:contain;object-fit:contain;background:#1a1d22}.preview-toggle{position:absolute;left:calc(100% + 14px);top:auto;bottom:84px;transform:none;width:78px;height:78px;padding:0;border:2px solid #00b25e;border-radius:8px;overflow:hidden;background:#1a1d22;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.34)}.preview-toggle img{width:100%;height:100%;max-width:none;max-height:none;border:0;border-radius:0;-o-object-fit:cover;object-fit:cover;display:block}.preview-toggle span{position:absolute;left:0;right:0;bottom:0;height:22px;display:flex;align-items:center;justify-content:center;color:#f5f7fb;font-size:12px;font-weight:700;background:rgba(0,0,0,.58)}.preview-toggle:hover{border-color:#3ccb85;transform:translateY(-1px)}.result-footer{width:min(520px,100%);justify-content:space-between;gap:16px}.result-footer,.result-meta{display:flex;align-items:center}.result-meta{gap:14px;min-width:0;color:#b8bfce;background:#22282e;border:1px solid #3a3f47;border-radius:999px;padding:8px 14px}.result-meta b{min-width:0;color:#f5f7fb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.result-meta span{flex:none}.download-btn{height:38px;flex:none;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:1px solid #00b25e;border-radius:999px;padding:0 15px;color:#f5f7fb;background:#00b25e;font-size:14px;font-weight:800;cursor:pointer;box-shadow:0 10px 22px rgba(0,178,94,.22)}.download-btn:hover{background:#008a48;border-color:#008a48}.record-empty{min-height:420px;display:flex;align-items:center;justify-content:center;color:#9aa2b2}.record-card{display:grid;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;border:1px solid #2f363d;border-radius:8px;cursor:pointer;background:#2b3035;margin-bottom:10px}.record-card.active,.record-card:hover{border-color:#3ccb85;background:#2d3339}.record-thumb{width:82px;height:82px;border-radius:6px;overflow:hidden;background:#1a1d22;display:flex;align-items:center;justify-content:center;color:#3ccb85;font-size:12px}.record-thumb img,.record-thumb video{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.record-info{min-width:0;display:flex;flex-direction:column;justify-content:flex-start;padding-top:2px}.record-info b{display:block;color:#f5f7fb;font-size:13px}.record-info p{margin:4px 0;max-width:100%;height:18px;overflow:hidden;color:#b8bfce;line-height:18px;font-size:12px;white-space:nowrap;text-overflow:ellipsis}.record-info span{color:#8b91a0;font-size:11px;white-space:nowrap}.record-status{justify-self:end;align-self:center;color:#e6e9f2;background:#008a48;border-radius:999px;padding:3px 7px;font-style:normal;white-space:nowrap;font-size:12px}.record-status.failed{background:#b42318}.record-status.pending,.record-status.processing{background:#063a22}.record-prompt-tooltip{max-width:360px;line-height:1.5;word-break:break-all}.canvas-workbench{display:grid;grid-template-columns:280px minmax(520px,1fr) 300px}.canvas-inspector,.canvas-side{height:100%;min-height:0;padding:20px;background:#1a1d22;overflow-y:auto;overscroll-behavior:contain}.canvas-side{border-right:1px solid #2f363d}.canvas-inspector{border-left:1px solid #2f363d}.canvas-side-head{border:1px solid #3a3f47;border-radius:8px;background:#252a2f;padding:14px}.canvas-inspector-info span,.canvas-prompt-node span,.canvas-side-head span,.canvas-toolbar span{display:block;color:#9aa2b2;font-size:12px;font-weight:800}.canvas-side-head strong{display:block;margin-top:6px;color:#f5f7fb;font-size:18px}.canvas-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 4px}.canvas-actions button,.canvas-toolbar button,.canvas-use-btn{height:40px;border:1px solid #3a3f47;border-radius:8px;color:#f5f7fb;background:#252a2f;font-weight:800;cursor:pointer}.canvas-actions button:hover,.canvas-toolbar button:hover{border-color:#00b25e;background:#173b2a}.canvas-actions i,.canvas-toolbar i,.canvas-use-btn i{margin-right:5px;color:#3ccb85}.canvas-record-empty{min-height:118px}.canvas-record-item{width:100%;display:grid;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:8px;margin-bottom:10px;border:1px solid #2f363d;border-radius:8px;color:#d7dbe6;background:#22282e;text-align:left;cursor:pointer}.canvas-record-item.active,.canvas-record-item:hover{border-color:#3ccb85;background:#2d3339}.canvas-record-item img{width:54px;height:54px;display:block;border-radius:6px;-o-object-fit:cover;object-fit:cover;background:#111418}.canvas-record-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800}.canvas-stage{min-width:0;min-height:0;display:flex;flex-direction:column;padding:18px;overflow:hidden}.canvas-toolbar{height:58px;flex:none;display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.canvas-toolbar strong{display:block;margin-top:5px;color:#f5f7fb;font-size:18px}.canvas-toolbar button{min-width:126px;padding:0 14px}.canvas-board{position:relative;flex:1;min-height:0;border:1px solid #2f363d;border-radius:8px;overflow:hidden;background-color:#111418}.canvas-prompt-node{position:absolute;left:24px;top:24px;z-index:2;width:min(360px,calc(100% - 48px));border:1px solid #00b25e;border-radius:8px;background:rgba(26,29,34,.96);padding:14px;box-shadow:0 12px 28px rgba(0,0,0,.28)}.canvas-prompt-node p{max-height:64px;margin:8px 0 0;overflow:hidden;color:#f5f7fb;line-height:1.5;word-break:break-all}.canvas-preview-node{position:absolute;z-index:1;width:156px;padding:8px;border:1px solid #3a3f47;border-radius:8px;color:#f5f7fb;background:#1a1d22;box-shadow:0 14px 32px rgba(0,0,0,.3);cursor:pointer;transform:translate(-50%,-50%)}.canvas-preview-node.active,.canvas-preview-node:hover{border-color:#00b25e;box-shadow:0 0 0 2px rgba(0,178,94,.18),0 14px 32px rgba(0,0,0,.3)}.canvas-preview-node img{width:100%;aspect-ratio:1/1;display:block;border-radius:6px;-o-object-fit:cover;object-fit:cover;background:#0e1014}.canvas-preview-node span{display:block;min-width:0;margin-top:7px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#d7dbe6;font-size:12px;font-weight:800}.canvas-empty-node{position:absolute;left:50%;top:50%;width:min(280px,calc(100% - 40px));min-height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;border:1px dashed #3a3f47;border-radius:8px;color:#9aa2b2;background:rgba(26,29,34,.88);transform:translate(-50%,-50%)}.canvas-empty-node i{color:#3ccb85;font-size:30px}.canvas-empty-node button{height:36px;padding:0 16px;border:0;border-radius:8px;color:#fff;background:#00b25e;font-weight:800;cursor:pointer}.canvas-inspector-preview{width:100%;border:1px solid #3a3f47;border-radius:8px;overflow:hidden;background:#111418}.canvas-inspector-preview img{width:100%;display:block;aspect-ratio:1/1;-o-object-fit:cover;object-fit:cover}.canvas-inspector-info{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px 8px;margin-top:14px;padding:12px;border:1px solid #3a3f47;border-radius:8px;background:#22282e}.canvas-inspector-info b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#f5f7fb;font-size:13px}.canvas-inspector p{max-height:136px;margin:14px 0;padding:12px;overflow:auto;border:1px solid #3a3f47;border-radius:8px;color:#d7dbe6;background:#22282e;line-height:1.6;word-break:break-all}.canvas-use-btn{width:100%;border-color:#00b25e;background:#00b25e;box-shadow:0 10px 22px rgba(0,178,94,.22)}.canvas-use-btn i{color:#f5f7fb}.canvas-use-btn:hover{background:#008a48;border-color:#008a48}.canvas-create-project,.canvas-generate-btn,.canvas-secondary-btn{width:100%;height:42px;border:1px solid #00b25e;border-radius:8px;color:#f5f7fb;background:#00b25e;font-weight:800;cursor:pointer}.canvas-create-project{margin-top:14px;background:#173b2a}.canvas-create-project i,.canvas-generate-btn i,.canvas-secondary-btn i{margin-right:6px}.canvas-create-project:hover,.canvas-generate-btn:hover{background:#008a48;border-color:#008a48}.canvas-project-item{width:100%;display:grid;grid-template-columns:minmax(0,1fr);gap:5px;padding:12px;margin-bottom:10px;border:1px solid #2f363d;border-radius:8px;color:#d7dbe6;background:#22282e;text-align:left;cursor:pointer}.canvas-project-item.active,.canvas-project-item:hover{border-color:#3ccb85;background:#2d3339}.canvas-project-item span{color:#f5f7fb;font-weight:800}.canvas-project-item em,.canvas-project-item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-project-item em{color:#8b91a0;font-size:12px;font-style:normal}.canvas-generate-panel{display:grid;gap:10px}.canvas-generate-panel textarea{width:100%;height:126px;resize:none;border:1px solid #3a3f47;border-radius:8px;outline:0;color:#f5f7fb;background:#252a2f;line-height:1.6;padding:10px}.canvas-generate-panel textarea:focus{border-color:#00b25e}.canvas-reference-note{min-height:34px;border:1px solid #3a3f47;border-radius:8px;color:#9aa2b2;background:#22282e;padding:0 10px}.canvas-ratio-grid{grid-template-columns:repeat(2,1fr)}.canvas-toolbar-actions{display:flex;gap:10px}.canvas-zoom-controls{height:40px}.canvas-toolbar .canvas-zoom-controls button{min-width:40px;width:40px;height:38px;border:0;border-radius:0;padding:0;background:transparent}.canvas-toolbar .canvas-zoom-controls button+button{border-left:1px solid #3a3f47}.canvas-toolbar .canvas-zoom-controls button:disabled{opacity:.45;cursor:not-allowed}.canvas-toolbar .canvas-zoom-controls .canvas-zoom-value{min-width:58px;width:58px;color:#f5f7fb;font-size:13px}.canvas-zoom-controls i{margin-right:0}.canvas-toolbar-actions button.active{border-color:#00b25e;background:#173b2a}.canvas-project-empty{flex:1;min-height:460px;border:1px dashed #3a3f47;border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:#9aa2b2;background:#111418}.canvas-project-empty i{color:#3ccb85;font-size:36px}.canvas-project-empty button{height:38px;border:0;border-radius:8px;padding:0 18px;color:#fff;background:#00b25e;font-weight:800;cursor:pointer}.canvas-viewport{flex:1;border:1px solid #2f363d;border-radius:8px}.canvas-surface:active{cursor:grabbing}.canvas-lines{position:absolute;inset:0;z-index:1;pointer-events:none}.canvas-edge{cursor:pointer}.canvas-edge-draft{pointer-events:none}.canvas-edge-hit{fill:none;stroke:transparent;stroke-width:18;stroke-linecap:round;pointer-events:stroke}.canvas-edge-line{fill:none;stroke:rgba(115,130,150,.62);stroke-linecap:round;opacity:.82;pointer-events:none;transition:stroke .14s ease,opacity .14s ease}.canvas-edge-draft .canvas-edge-line,.canvas-edge.active .canvas-edge-line,.canvas-edge:hover .canvas-edge-line{stroke:rgba(115,224,172,.82);opacity:1;filter:drop-shadow(0 0 3px rgba(115,224,172,.24))}.canvas-edge-charge{fill:none;stroke:rgba(115,224,172,.88);stroke-linecap:round;stroke-dasharray:14 86;stroke-dashoffset:100;opacity:0;pointer-events:none;filter:drop-shadow(0 0 4px rgba(115,224,172,.44))}.canvas-edge-draft .canvas-edge-charge,.canvas-edge.active .canvas-edge-charge,.canvas-edge:hover .canvas-edge-charge{opacity:1;animation:canvas-edge-charge 1.1s linear infinite}@keyframes canvas-edge-charge{to{stroke-dashoffset:0}}.canvas-flow-node{position:absolute;z-index:2;width:220px;min-height:216px;transform-origin:0 0;will-change:transform;border:1px solid #3a3f47;border-radius:8px;color:#f5f7fb;background:#1a1d22;box-shadow:0 14px 34px rgba(0,0,0,.32);cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.canvas-flow-node:active{cursor:grabbing}.canvas-flow-node.active,.canvas-flow-node:hover{border-color:#00b25e;box-shadow:0 0 0 2px rgba(0,178,94,.18),0 14px 34px rgba(0,0,0,.32)}.canvas-flow-node.connecting{border-color:#3ccb85;box-shadow:0 0 0 3px rgba(60,203,133,.22),0 14px 34px rgba(0,0,0,.32)}.canvas-flow-node.connect-target{border-color:#3ccb85;box-shadow:0 0 0 3px rgba(60,203,133,.28),0 0 24px rgba(60,203,133,.18),0 14px 34px rgba(0,0,0,.32)}.canvas-flow-node.processing{border-color:#3ccb85}.canvas-flow-node.failed{border-color:#b42318}.canvas-node-anchor{position:absolute;top:50%;z-index:4;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid rgba(215,224,236,.72);border-radius:999px;color:#dfe7f1;background:rgba(28,32,38,.92);box-shadow:0 0 0 1px rgba(8,11,16,.55),0 0 12px rgba(60,203,133,.18);font-size:18px;font-weight:500;line-height:1;cursor:crosshair;opacity:0;pointer-events:none;transform:translateY(-50%) scale(.82);transition:opacity .14s ease,transform .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease}.canvas-node-anchor.left{left:-12px}.canvas-node-anchor.right{right:-12px}.canvas-flow-node.active .canvas-node-anchor,.canvas-flow-node.connect-target .canvas-node-anchor,.canvas-flow-node.connecting .canvas-node-anchor,.canvas-flow-node:hover .canvas-node-anchor{opacity:1;pointer-events:auto;transform:translateY(-50%) scale(1)}.canvas-flow-node.connecting .canvas-node-anchor,.canvas-node-anchor:hover{border-color:#3ccb85;color:#3ccb85;box-shadow:0 0 0 1px rgba(8,11,16,.55),0 0 18px rgba(60,203,133,.45)}.canvas-flow-meta{height:24px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 8px;color:#8b91a0;font-size:11px;line-height:1}.canvas-flow-meta span{min-width:0;display:flex;align-items:center;gap:4px}.canvas-flow-meta i{flex:0 0 auto;color:#9aa2b2;font-size:13px}.canvas-flow-meta b{min-width:0;overflow:hidden;color:#9aa2b2;font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.canvas-flow-meta em{flex:0 0 auto;color:#7a8290;font-size:11px;font-style:normal;white-space:nowrap}.canvas-flow-preview{aspect-ratio:16/9;height:auto;border-top:1px solid rgba(58,63,71,.72);border-radius:0;overflow:hidden;background:#0e1014;display:flex;align-items:center;justify-content:center;color:#9aa2b2;font-weight:800}.canvas-flow-preview img,.canvas-flow-preview video{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.canvas-flow-preview i{color:#3ccb85;font-size:28px}.canvas-flow-body{padding:10px 38px 12px 12px}.canvas-flow-body b,.canvas-flow-body em,.canvas-flow-body p{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-flow-body b{display:block;color:#f5f7fb;font-size:14px}.canvas-flow-body p{margin:6px 0;color:#d7dbe6;font-size:12px}.canvas-flow-body em{display:block;color:#8b91a0;font-size:12px;font-style:normal}.canvas-inspector-preview{min-height:220px;display:flex;align-items:center;justify-content:center;color:#9aa2b2}.canvas-inspector-preview span{color:#9aa2b2;font-weight:800}.canvas-secondary-btn{margin-top:10px}.canvas-edge-info{border:1px solid #3a3f47;border-radius:8px;padding:12px 14px;background:#252a2f;grid-template-columns:50px minmax(0,1fr);gap:8px 10px}.content-page{width:min(1100px,calc(100% - 40px));max-height:calc(100vh - 128px);overflow:auto;margin:28px auto;padding:22px;background:#1a1d22;color:#f5f7fb;border:1px solid #2f363d;border-radius:8px}.content-page.narrow{width:min(560px,calc(100% - 40px))}.wallet-head{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:16px;margin-bottom:18px}.wallet-card{min-height:128px;display:flex;flex-direction:column;justify-content:center;border-radius:8px;padding:0 24px;color:#f5f7fb;background:#2d3339;border:1px solid #00b25e;margin-bottom:0}.wallet-card span{color:#b8bfce}.wallet-card strong{font-size:34px;margin-top:8px}.wallet-card p{margin:8px 0 0;color:#3ccb85}.recharge-panel{min-width:0;border:1px solid #2f363d;border-radius:8px;background:#20252b;padding:14px}.wallet-section-title{margin:0 0 10px;color:#f5f7fb;font-weight:800}.orders-title,.wallet-record-panel{margin-top:18px}.wallet-record-tabs{display:flex;gap:8px;margin-bottom:12px;border-bottom:1px solid #2f363d}.wallet-record-tabs button{position:relative;height:42px;padding:0 18px;border:0;background:transparent;color:#aeb5c4;cursor:pointer;font-weight:800}.wallet-record-tabs button.active{color:#f5f7fb}.wallet-record-tabs button.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:999px;background:#00b25e}.wallet-record-table{min-height:250px}.wallet-pagination{display:flex;justify-content:flex-end;align-items:center;margin-top:14px}.wallet-pagination .el-pagination,.wallet-pagination .el-pagination__total{color:#8b91a0}.wallet-pagination .el-pagination.is-background .btn-next,.wallet-pagination .el-pagination.is-background .btn-prev,.wallet-pagination .el-pagination.is-background .el-pager li{min-width:30px;height:30px;line-height:30px;border:1px solid #3a3f47;color:#d5dae5;background:#22282e}.wallet-pagination .el-pagination.is-background .btn-next:hover,.wallet-pagination .el-pagination.is-background .btn-prev:hover,.wallet-pagination .el-pagination.is-background .el-pager li:hover{color:#f5f7fb;border-color:#00b25e}.wallet-pagination .el-pagination.is-background .el-pager li:not(.disabled).active{border-color:#00b25e;color:#f5f7fb;background:#00b25e}.wallet-pagination .el-pagination.is-background .btn-next:disabled,.wallet-pagination .el-pagination.is-background .btn-prev:disabled{color:#5f6875;background:#1f2429;border-color:#2f363d}.recharge-sku-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.recharge-sku-grid button{position:relative;min-height:88px;border:1px solid #3a3f47;border-radius:8px;background:#2d3339;color:#f5f7fb;cursor:pointer;text-align:left;padding:14px}.recharge-sku-grid button.active{border-color:#00b25e;background:#173b2a;box-shadow:0 0 0 2px rgba(0,178,94,.14)}.recharge-sku-grid em{position:absolute;right:10px;top:10px;max-width:88px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-size:12px;color:#102016;background:#3ccb85;border-radius:999px;padding:2px 8px}.recharge-sku-grid b,.recharge-sku-grid span{display:block}.recharge-sku-grid b{font-size:20px;line-height:1.2;padding-right:80px}.recharge-sku-grid span{margin-top:10px;color:#3ccb85;font-weight:800}.recharge-empty{height:88px;border:1px dashed #3a3f47;border-radius:8px;color:#8b91a0;display:flex;align-items:center;justify-content:center;margin-bottom:14px}.pay-channel-row{display:flex;gap:10px;margin-bottom:14px}.pay-channel-row button{width:112px;height:38px;border:1px solid #3a3f47;border-radius:8px;background:#2d3339;color:#f5f7fb;cursor:pointer;font-weight:800}.pay-channel-row button.active{border-color:#00b25e;background:#173b2a;color:#3ccb85}.create-pay-order{height:42px;min-width:160px;border:0;border-radius:8px;color:#fff;background:#00b25e;font-weight:800;cursor:pointer}.create-pay-order:disabled{cursor:not-allowed;opacity:.65}.pay-order-result{display:grid;grid-template-columns:88px minmax(0,1fr);row-gap:12px;-moz-column-gap:10px;column-gap:10px;color:#d7dbe6}.pay-qrcode{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;gap:8px;margin-bottom:4px}.pay-qrcode img{width:220px;height:220px;border-radius:8px;background:#fff;padding:8px}.pay-qrcode span{color:#3ccb85;font-weight:800}.pay-order-result span{color:#8b91a0}.pay-order-result b{color:#f5f7fb;word-break:break-all}.pay-order-result p{grid-column:1/-1;margin:4px 0 0;color:#3ccb85}.login-note{color:#d7dbe6;background:#1f2429;border:1px solid #3a3f47;border-radius:8px;padding:10px 12px;margin-bottom:14px}.featured-prompt-dialog .el-dialog__body{padding-top:12px}.featured-prompt-toolbar{display:grid;grid-template-columns:minmax(0,1fr) 88px;gap:10px;margin-bottom:14px}.featured-prompt-search{height:40px;border-color:#00b25e;color:#f5f7fb;background:#00b25e;font-weight:800}.featured-prompt-search:focus,.featured-prompt-search:hover{border-color:#008a48;color:#f5f7fb;background:#008a48}.featured-prompt-list{min-height:246px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:10px}.featured-prompt-item{min-width:0;min-height:116px;display:grid;grid-template-columns:86px minmax(0,1fr);gap:12px;border:1px solid #3a3f47;border-radius:8px;background:#22282e;color:#f5f7fb;padding:10px;text-align:left;cursor:pointer}.featured-prompt-item:hover{border-color:#00b25e;background:#26302b}.featured-prompt-thumb{width:86px;height:86px;border-radius:6px;overflow:hidden;background:#2b3035;display:flex;align-items:center;justify-content:center;color:#3ccb85}.featured-prompt-thumb img{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.featured-prompt-thumb.empty i{font-size:28px}.featured-prompt-body{min-width:0}.featured-prompt-body b{display:block;color:#f5f7fb;font-size:13px;margin-bottom:6px}.featured-prompt-body p{height:44px;margin:0 0 8px;overflow:hidden;color:#d5dae5;font-size:13px;line-height:22px;word-break:break-all}.featured-prompt-body span{color:#8b91a0;font-size:12px}.featured-prompt-empty{grid-column:1/-1;min-height:320px;display:flex;align-items:center;justify-content:center;color:#8b91a0}.featured-prompt-pagination{display:flex;justify-content:flex-end;align-items:center;margin-top:14px}.featured-prompt-pagination .el-pagination,.featured-prompt-pagination .el-pagination__total{color:#8b91a0}.featured-prompt-pagination .el-pagination.is-background .btn-next,.featured-prompt-pagination .el-pagination.is-background .btn-prev,.featured-prompt-pagination .el-pagination.is-background .el-pager li{min-width:30px;height:30px;line-height:30px;border:1px solid #3a3f47;color:#d5dae5;background:#22282e}.featured-prompt-pagination .el-pagination.is-background .btn-next:hover,.featured-prompt-pagination .el-pagination.is-background .btn-prev:hover,.featured-prompt-pagination .el-pagination.is-background .el-pager li:hover{color:#f5f7fb;border-color:#00b25e}.featured-prompt-pagination .el-pagination.is-background .el-pager li:not(.disabled).active{border-color:#00b25e;color:#f5f7fb;background:#00b25e}.featured-prompt-pagination .el-pagination.is-background .btn-next:disabled,.featured-prompt-pagination .el-pagination.is-background .btn-prev:disabled{color:#5f6875;background:#1f2429;border-color:#2f363d}.el-dialog{background:#1a1d22}.el-dialog__title,.el-form-item__label{color:#f5f7fb}.el-input__inner,.el-textarea__inner{border-radius:6px}.el-button--primary{background:#00b25e;border-color:#00b25e}.el-button--primary:focus,.el-button--primary:hover{background:#008a48;border-color:#008a48}.el-input__inner:focus,.el-textarea__inner:focus{border-color:#00b25e}.control-panel .el-input__inner,.control-panel .el-select .el-input__inner{background:#2b3035;border-color:#3a3f47;color:#f5f7fb}.control-panel .el-input__inner:hover,.control-panel .el-select .el-input.is-focus .el-input__inner,.control-panel .el-select .el-input__inner:focus,.control-panel .el-select .el-input__inner:hover{border-color:#00b25e}.control-panel .el-input__suffix{color:#3ccb85}.content-page .el-table{color:#d7dbe6}.content-page .el-table,.content-page .el-table__expanded-cell,.content-page .el-table th,.content-page .el-table tr{background:#1f2429}.content-page .el-table td,.content-page .el-table th.is-leaf{border-bottom-color:#3a3f47}.content-page .el-table--striped .el-table__body tr.el-table__row--striped td{background:#2b303b}.content-page .el-table--enable-row-hover .el-table__body tr:hover>td,.content-page .el-table__body tr.hover-row>td{background:#323946;color:#f5f7fb}.content-page .el-table:before{background:#3a3f47}.el-input__inner,.el-textarea__inner{background:#252a2f;border-color:#3a3f47;color:#f5f7fb}.el-input__inner::-moz-placeholder,.el-textarea__inner::-moz-placeholder{color:#8b91a0}.el-input__inner::placeholder,.el-textarea__inner::placeholder{color:#8b91a0}.el-picker-panel,.el-select-dropdown{background:#1a1d22;border-color:#3a3f47}.dark-popper.el-select-dropdown{background:#1a1d22;border-color:#00b25e}.dark-popper.el-popper[x-placement^=bottom] .popper__arrow{border-bottom-color:#00b25e}.dark-popper.el-popper[x-placement^=bottom] .popper__arrow:after{border-bottom-color:#1a1d22}.dark-popper.el-popper[x-placement^=top] .popper__arrow{border-top-color:#00b25e}.dark-popper.el-popper[x-placement^=top] .popper__arrow:after{border-top-color:#1a1d22}.el-select-dropdown__item{color:#d7dbe6}.el-select-dropdown__item.hover,.el-select-dropdown__item:hover{color:#f5f7fb;background:#173b2a}.el-select-dropdown__item.selected{color:#00b25e;font-weight:800;background:#22282e}@media (max-width:1180px){.workspace{grid-template-columns:430px 1fr}.record-panel{display:none}.canvas-workbench{grid-template-columns:240px minmax(0,1fr)}.canvas-inspector{display:none}.canvas-preview-node{width:136px}.wallet-head{grid-template-columns:1fr}}@media (max-width:760px){#app,body,html{height:auto;overflow:auto}.studio{height:auto;min-height:100vh;overflow:visible}.header{height:auto;flex-wrap:wrap;padding:14px}.brand{margin-right:0}nav{order:3;width:100%;gap:18px;overflow:auto}nav button{white-space:nowrap;font-size:16px}.canvas-workbench,.workspace{grid-template-columns:1fr;height:auto;min-height:0;overflow:visible}.control-panel{border-right:0;height:auto;overflow:visible}.canvas-inspector,.canvas-side,.canvas-stage{height:auto;min-height:0;padding:14px;overflow:visible}.canvas-side{border-right:0;border-bottom:1px solid #2f363d}.canvas-inspector{display:block;border-left:0;border-top:1px solid #2f363d}.canvas-actions{grid-template-columns:1fr}.canvas-toolbar{height:auto;align-items:flex-start;flex-direction:column}.canvas-toolbar button{width:100%}.canvas-toolbar-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.canvas-zoom-controls{width:100%}.canvas-toolbar .canvas-zoom-controls .canvas-zoom-value,.canvas-toolbar .canvas-zoom-controls button{width:33.33%}.canvas-board{min-height:560px}.canvas-viewport{height:560px;min-height:560px}.canvas-surface{width:1400px;height:1000px}.canvas-flow-node{width:190px;min-height:198px}.canvas-flow-preview{aspect-ratio:16/9;height:auto}.canvas-prompt-node{left:14px;top:14px;width:calc(100% - 28px)}.canvas-preview-node{width:118px}.bottom-action{position:static;margin:18px 0 0;padding:0;background:transparent;border-top:0}.canvas-panel{height:auto;min-height:480px;padding:18px;overflow:visible}.result-view{padding-top:0}.result-footer{width:100%;gap:10px}.download-btn{padding:0 12px}.preview-toggle{position:static;margin-top:-4px;transform:none}.preview-toggle:hover{transform:translateY(-1px)}.empty-state,.generating-state{margin-top:0}.featured-prompt-dialog{width:calc(100% - 24px)!important}.featured-prompt-list,.featured-prompt-toolbar{grid-template-columns:1fr}.content-page{width:calc(100% - 24px);max-height:none;padding:14px}.recharge-sku-grid{grid-template-columns:1fr}.pay-channel-row{display:grid;grid-template-columns:1fr 1fr}.pay-channel-row button{width:100%}}.canvas-workbench{flex:1;display:block;height:calc(100vh - 72px);min-height:calc(100vh - 72px);overflow:hidden;background:#0e1014}.canvas-project-dashboard{width:min(1180px,calc(100% - 48px));height:100%;margin:0 auto;padding:28px 0 36px;overflow:auto}.canvas-project-top{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.canvas-project-top span{display:block;color:#9aa2b2;font-size:13px;font-weight:800}.canvas-project-top strong{display:block;margin-top:6px;color:#f5f7fb;font-size:28px}.canvas-icon-text-btn,.canvas-primary-action{height:42px;border:1px solid #3a3f47;border-radius:8px;color:#f5f7fb;background:#252a2f;font-weight:800;cursor:pointer}.canvas-primary-action{min-width:136px;padding:0 18px;border-color:#00b25e;background:#00b25e;box-shadow:0 10px 24px rgba(0,178,94,.22)}.canvas-icon-text-btn i,.canvas-primary-action i{margin-right:6px}.canvas-primary-action:hover{border-color:#008a48;background:#008a48}.canvas-project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.canvas-project-card{position:relative;min-width:0;min-height:256px;display:flex;flex-direction:column;border:1px solid #2f363d;border-radius:8px;overflow:hidden;color:#f5f7fb;background:#1a1d22;text-align:left;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease,box-shadow .18s ease}.canvas-project-card:hover{border-color:#00b25e;background:#22282e;transform:translateY(-2px);box-shadow:0 18px 34px rgba(0,0,0,.24)}.canvas-project-create-card{align-items:center;justify-content:center;gap:10px;border:1px dashed #3a3f47;background:#15191e;text-align:center}.canvas-project-create-card i{width:54px;height:54px;display:flex;align-items:center;justify-content:center;border:1px solid #4a535f;border-radius:8px;color:#9aa2b2;font-size:28px;background:hsla(0,0%,100%,.03)}.canvas-project-create-card:hover{border-color:#00b25e;background:#143726}.canvas-project-create-card:hover i{border-color:rgba(60,203,133,.65);color:#3ccb85;background:rgba(0,178,94,.12)}.canvas-project-card-info b,.canvas-project-create-card b{color:#f5f7fb;font-size:17px;font-weight:900}.canvas-project-create-card span{color:#9aa2b2;font-size:13px;font-weight:800}.canvas-project-preview{height:154px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:2px;background:#111418}.canvas-project-preview.empty{display:flex;align-items:center;justify-content:center;color:#3ccb85;font-size:34px}.canvas-project-preview img,.canvas-project-preview video{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.canvas-project-preview img:only-child,.canvas-project-preview video:only-child{grid-column:1/-1;grid-row:1/-1}.canvas-project-card-info{min-width:0;display:grid;gap:7px;padding:14px 52px 14px 14px}.canvas-project-card-info b,.canvas-project-card-info em,.canvas-project-card-info span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-project-card-info em,.canvas-project-card-info span{color:#9aa2b2;font-size:13px;font-style:normal;font-weight:800}.canvas-project-more{position:absolute;right:10px;top:calc(61px + 50%);z-index:3;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #3a3f47;border-radius:8px;color:#cbd3df;background:rgba(37,42,47,.92);cursor:pointer}.canvas-project-more i{width:4px;height:4px;display:block;margin:0 1.5px;border-radius:999px;background:currentColor}.canvas-project-more:hover{border-color:#3ccb85;color:#3ccb85;background:#173b2a}.canvas-project-menu{position:absolute;right:10px;bottom:70px;z-index:5;width:128px;padding:6px;border:1px solid #3a3f47;border-radius:8px;background:#252a2f;box-shadow:0 16px 28px rgba(0,0,0,.34)}.canvas-project-menu button{width:100%;height:36px;display:flex;align-items:center;gap:8px;padding:0 10px;border:0;border-radius:6px;color:#f5f7fb;background:transparent;font-size:13px;font-weight:800;cursor:pointer}.canvas-project-menu button:hover{background:#313840}.canvas-project-menu button.danger{color:#ff8a8a}.canvas-project-menu button.danger:hover{background:rgba(180,35,24,.18)}.canvas-project-modal-mask{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(0,0,0,.66)}.canvas-project-modal{position:relative;width:min(420px,calc(100vw - 32px));border:1px solid #353c45;border-radius:10px;color:#f5f7fb;background:#1a1d22;box-shadow:0 26px 70px rgba(0,0,0,.52);padding:22px}.canvas-project-modal-close{position:absolute;top:18px;right:18px;width:28px;height:28px;border:0;color:#9aa2b2;background:transparent;cursor:pointer}.canvas-project-modal-close:hover{color:#f5f7fb}.canvas-project-modal h3{margin:0 32px 26px 0;color:#f5f7fb;font-size:18px;font-weight:900;line-height:1.4}.canvas-project-modal label,.canvas-project-modal p{display:block;margin:0 0 12px;color:#cbd3df;font-size:14px;font-weight:800;line-height:1.7}.canvas-project-modal input{width:100%;height:46px;border:1px solid #3a3f47;border-radius:8px;outline:0;color:#f5f7fb;background:#252a2f;font-size:14px;font-weight:800;padding:0 14px}.canvas-project-modal input:focus{border-color:#3ccb85}.canvas-project-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:28px}.canvas-project-modal-actions button{min-width:76px;height:38px;border:1px solid #00b25e;border-radius:8px;color:#fff;background:#00b25e;font-weight:900;cursor:pointer}.canvas-project-modal-actions button:hover{border-color:#008a48;background:#008a48}.canvas-project-modal-actions button:disabled{opacity:.55;cursor:not-allowed}.canvas-project-modal-actions .ghost{border-color:#3a3f47;color:#d7dbe6;background:#252a2f}.canvas-project-modal-actions .ghost:hover{border-color:#4a535f;color:#f5f7fb;background:#313840}.canvas-project-modal-actions .danger{border-color:#d92d20;background:#d92d20}.canvas-project-modal-actions .danger:hover{border-color:#b42318;background:#b42318}.canvas-editor-shell{position:relative;height:100%;min-height:0;overflow:hidden;background:#0e1014}.canvas-editor-loading{display:flex;align-items:center;justify-content:center}.canvas-detail-loading{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid #2f363d;border-radius:8px;color:#cbd3df;background:rgba(26,29,34,.86);font-size:14px;font-weight:800}.canvas-detail-loading i{color:#3ccb85;font-size:18px}.canvas-editor-topbar,.canvas-floating-dock{position:absolute;z-index:10;border:1px solid rgba(58,63,71,.92);border-radius:8px;background:rgba(26,29,34,.94);box-shadow:0 18px 42px rgba(0,0,0,.32);backdrop-filter:blur(12px)}.canvas-editor-topbar{top:18px;left:24px;right:24px;min-height:54px;display:grid;grid-template-columns:auto minmax(180px,320px) auto minmax(0,1fr);align-items:center;gap:12px;padding:8px}.canvas-icon-text-btn{min-width:92px;padding:0 14px}.canvas-icon-text-btn.active,.canvas-icon-text-btn:hover{border-color:#00b25e;background:#173b2a}.canvas-icon-text-btn i{color:#3ccb85}.canvas-model-trigger,.canvas-title-input .el-input__inner{height:38px;border:1px solid #3a3f47;border-radius:8px;color:#f5f7fb;background:#252a2f;font-weight:800}.canvas-model-picker.open .canvas-model-trigger,.canvas-model-trigger:focus-visible,.canvas-title-input .el-input__inner:focus{border-color:#00b25e}.canvas-editor-meta{color:#b8bfce;font-size:13px;font-weight:900;white-space:nowrap}.canvas-editor-actions{justify-self:end;display:flex;align-items:center;gap:10px;min-width:0}.canvas-add-node-wrap{position:relative}.canvas-media-input{display:none}.canvas-node-menu{position:absolute;top:48px;right:0;width:214px;display:grid;gap:6px;padding:10px;border:1px solid #3a3f47;border-radius:8px;background:rgba(26,29,34,.98);box-shadow:0 18px 36px rgba(0,0,0,.34)}.canvas-context-menu{top:auto;right:auto;z-index:18}.canvas-node-menu em,.canvas-node-menu span{display:block;padding:4px 6px;color:#9aa2b2;font-size:12px;font-style:normal;font-weight:900}.canvas-node-menu button{height:42px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;border:0;border-radius:8px;color:#f5f7fb;background:transparent;text-align:left;font-weight:900;cursor:pointer}.canvas-node-menu button:hover{background:#252a2f}.canvas-node-menu button.danger:hover{color:#ffb4b4;background:rgba(180,35,24,.18)}.canvas-node-menu button i{width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:8px;color:#3ccb85;background:#2d3339;font-size:17px}.canvas-node-menu button.danger i{color:#ff8a8a;background:rgba(180,35,24,.18)}.canvas-node-menu button b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-zoom-controls{height:42px;display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid #3a3f47;border-radius:8px;background:#252a2f}.canvas-zoom-controls button{min-width:44px;width:44px;height:40px;border:0;border-radius:0;padding:0;color:#3ccb85;background:transparent;font-weight:900;cursor:pointer}.canvas-zoom-controls button+button{border-left:1px solid #3a3f47}.canvas-zoom-controls button:disabled{opacity:.45;cursor:not-allowed}.canvas-zoom-controls .canvas-zoom-value{min-width:64px;width:64px;color:#f5f7fb;font-size:14px}.canvas-viewport{position:relative;width:100%;height:100%;min-height:0;border:0;border-radius:0;overflow:hidden;background:#0e1014;touch-action:none}.canvas-surface,.canvas-zoom-space{position:absolute;inset:0}.canvas-surface{width:100%;height:100%;transform-origin:0 0;background:transparent;cursor:grab}.canvas-mini-zoom{position:absolute;left:22px;bottom:22px;z-index:9;display:inline-flex;align-items:stretch;overflow:hidden;border:1px solid #343a42;border-radius:8px;background:rgba(32,35,40,.96);box-shadow:0 14px 34px rgba(0,0,0,.32)}.canvas-mini-zoom button{width:44px;height:40px;border:0;border-radius:0;padding:0;color:#e7ecf3;background:transparent;font-size:20px;font-weight:700;cursor:pointer}.canvas-mini-zoom button+button{border-left:1px solid #343a42}.canvas-mini-zoom button:disabled{opacity:.4;cursor:not-allowed}.canvas-mini-zoom .canvas-mini-zoom-value{width:68px;color:#f4f7fb;font-size:15px;font-weight:800}.canvas-floating-dock{width:min(720px,calc(100% - 48px));max-height:min(360px,calc(100% - 48px));display:grid;gap:8px;padding:10px 12px 12px;overflow:visible;border-color:hsla(0,0%,100%,.08);background:rgba(32,34,37,.9);box-shadow:0 18px 44px rgba(0,0,0,.34)}.canvas-dock-head{display:flex;min-width:0;gap:8px;align-items:center;padding:8px;border:1px solid hsla(0,0%,100%,.06);border-radius:8px;background:hsla(0,0%,100%,.032)}.canvas-dock-prompt{display:grid;gap:6px}.canvas-dock-context{display:flex;align-items:center;min-width:0;gap:8px;color:#c8ced8;font-size:12px;line-height:1}.canvas-dock-context span{flex:0 0 auto;color:#34d399;font-weight:800}.canvas-dock-context b,.canvas-dock-context em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-dock-context b{max-width:160px;color:#f0f4fa;font-size:12px}.canvas-dock-context em{flex:1 1 auto;color:#8e96a4;font-style:normal}.canvas-dock-context button{flex:0 0 auto;height:26px;display:inline-flex;align-items:center;gap:5px;border:1px solid hsla(0,0%,100%,.1);border-radius:7px;color:#dde3ec;background:hsla(0,0%,100%,.045);padding:0 9px;font-size:12px;font-weight:800;cursor:pointer}.canvas-dock-context button:hover{border-color:rgba(63,224,147,.58);color:#7ee7b3;background:rgba(36,196,116,.12)}.canvas-model-picker{position:relative;flex:0 0 170px;width:170px;min-width:0;z-index:2}.canvas-model-trigger{width:100%;height:36px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-color:hsla(0,0%,100%,.09);color:#f2f5fa;background:hsla(0,0%,100%,.045);padding:0 12px;outline:0;text-align:left;cursor:pointer}.canvas-model-trigger span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-model-trigger i{color:#aab2c2;font-size:12px;transition:transform .16s ease,color .16s ease}.canvas-model-picker.open .canvas-model-trigger i{color:#3ccb85;transform:rotate(180deg)}.canvas-model-menu{position:absolute;top:calc(100% + 8px);left:0;width:100%;min-width:210px;max-height:184px;overflow:auto;padding:6px;border:1px solid #3a3f47;border-radius:8px;background:rgba(26,29,34,.98);box-shadow:0 18px 36px rgba(0,0,0,.38)}.canvas-model-menu button{width:100%;min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid transparent;border-radius:6px;color:#e7ecf3;background:transparent;padding:0 10px;font-weight:850;text-align:left;cursor:pointer}.canvas-model-menu button.active,.canvas-model-menu button:hover{border-color:#00b25e;color:#3ccb85;background:rgba(0,178,94,.12)}.canvas-model-menu button span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-model-menu button em{flex:0 0 auto;color:#9aa2b2;font-size:12px;font-style:normal}.canvas-dock-ratios{flex:1 1 auto;min-width:0;display:flex;gap:5px;overflow-x:auto;scrollbar-width:none}.canvas-dock-ratios::-webkit-scrollbar{display:none}.canvas-dock-ratios button{flex:0 0 auto;min-width:52px;height:34px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid hsla(0,0%,100%,.08);border-radius:7px;color:#b4bbc8;background:hsla(0,0%,100%,.035);font-weight:900}.canvas-dock-ratios button.active{border-color:rgba(63,224,147,.62);color:#f5f7fb;background:rgba(36,196,116,.18)}.canvas-dock-ratios i{display:block;margin:0;border:2px solid currentColor;border-radius:3px}.canvas-floating-dock textarea{width:100%;height:86px;resize:none;border:0;border-radius:6px;outline:0;color:#f5f7fb;background:hsla(0,0%,100%,.025);line-height:1.6;padding:11px 12px;font-size:14px}.canvas-floating-dock textarea:focus{box-shadow:inset 0 0 0 1px rgba(63,224,147,.38)}.canvas-reference-note{min-height:20px;display:flex;align-items:center;border:0;border-radius:0;color:#9da5b3;background:transparent;font-size:12px;font-weight:700;padding:0 2px 1px}.canvas-generate-btn,.canvas-secondary-btn{height:36px;border:1px solid rgba(63,224,147,.44);border-radius:7px;color:#f5f7fb;background:rgba(0,178,94,.74);font-weight:900;cursor:pointer}.canvas-generate-btn{flex:0 0 auto;min-width:128px;width:auto;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 12px;white-space:nowrap}.canvas-generate-btn:hover{border-color:rgba(126,231,179,.82);background:rgba(0,178,94,.92)}.canvas-generate-btn:disabled{opacity:.62;cursor:not-allowed}.canvas-generate-btn i,.canvas-secondary-btn i{margin-right:0}.canvas-selection-card{display:grid;grid-template-columns:72px minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid #3a3f47;border-radius:8px;padding:10px;background:#22282e}.canvas-selection-card.edge{grid-template-columns:minmax(0,1fr) auto}.canvas-selection-preview{width:72px;height:58px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:6px;color:#9aa2b2;background:#111418;font-size:12px;font-weight:800}.canvas-selection-preview img,.canvas-selection-preview video{width:100%;height:100%;display:block;-o-object-fit:cover;object-fit:cover}.canvas-selection-info{min-width:0;display:grid;gap:4px}.canvas-selection-info b,.canvas-selection-info em,.canvas-selection-info p{min-width:0;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-selection-info b{color:#f5f7fb;font-size:14px}.canvas-selection-info p{color:#d7dbe6;font-size:12px}.canvas-selection-info em{color:#9aa2b2;font-size:12px;font-style:normal}.canvas-secondary-btn{width:auto;min-width:92px;margin-top:0;padding:0 14px;border-color:#3a3f47;background:#252a2f}.canvas-secondary-btn:hover{border-color:#00b25e;background:#173b2a}.canvas-secondary-btn.danger:hover{border-color:#b42318;background:rgba(180,35,24,.18)}.canvas-edge-info{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr);gap:6px 10px;border:0;border-radius:0;padding:0;background:transparent}.canvas-edge-info span{color:#9aa2b2;font-size:12px;font-weight:800}.canvas-edge-info b{min-width:0;overflow:hidden;color:#f5f7fb;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.canvas-record-empty{min-height:180px;border:1px dashed #3a3f47;border-radius:8px;color:#8b91a0;display:flex;align-items:center;justify-content:center;text-align:center}@media (max-width:1180px){.canvas-editor-topbar{grid-template-columns:auto minmax(150px,1fr) auto}.canvas-editor-meta{display:none}.canvas-editor-actions{grid-column:1/-1;justify-self:stretch;overflow-x:auto}.canvas-dock-head{flex-wrap:wrap}.canvas-model-picker{flex:1 1 180px;width:auto}.canvas-dock-ratios{flex:1 1 100%;order:3;overflow-x:auto}}@media (max-width:760px){.canvas-workbench{height:calc(100vh - 116px);min-height:620px}.canvas-project-dashboard{width:calc(100% - 24px);padding:18px 0 24px}.canvas-project-top{align-items:flex-start;flex-direction:column}.canvas-primary-action{width:100%}.canvas-project-grid{grid-template-columns:1fr}.canvas-editor-topbar{left:12px;right:12px;top:12px;grid-template-columns:auto minmax(0,1fr)}.canvas-icon-text-btn{min-width:74px;padding:0 10px}.canvas-floating-dock{width:calc(100% - 24px)}.canvas-dock-head{display:grid;grid-template-columns:1fr}.canvas-generate-btn,.canvas-model-picker{width:100%;min-width:0}.canvas-dock-ratios{order:0;width:100%}.canvas-selection-card,.canvas-selection-card.edge{grid-template-columns:1fr}.canvas-selection-preview{width:100%;height:128px}.canvas-secondary-btn{width:100%}}