.gallery-section{padding:48px 50px 80px 10px;width:100%;box-sizing:border-box}.gallery-title{font-size:18px;font-weight:600;color:#ffffffb3;margin:0 0 24px;letter-spacing:.02em}[data-theme=light] .gallery-title{color:#000}.gallery-masonry{display:grid;gap:12px;align-items:start}.gallery-col{display:flex;flex-direction:column;gap:12px}.gallery-card{background:#ffffff0a;border:1px solid rgba(255,255,255,.07);border-radius:12px;overflow:hidden;transition:transform .2s ease,border-color .2s ease;cursor:pointer}.gallery-card:hover{transform:translateY(-2px);border-color:#ffffff26}.gallery-img-wrapper{position:relative;width:100%;overflow:hidden}.gallery-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.gallery-card:hover .gallery-img{transform:scale(1.03)}.gallery-card-footer{position:absolute;bottom:0;left:0;right:0;padding:28px 10px 10px;background:linear-gradient(to top,rgba(0,0,0,.72) 0%,transparent 100%);display:flex;align-items:center;justify-content:space-between;gap:6px;opacity:0;transition:opacity .2s ease}.gallery-card:hover .gallery-card-footer{opacity:1}.gallery-author{display:flex;align-items:center;gap:6px;min-width:0}.gallery-avatar{width:24px;height:24px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;flex-shrink:0;border:1.5px solid rgba(255,255,255,.3)}.gallery-author-name{font-size:12px;color:#ffffffe6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:90px}.gallery-like-btn{display:flex;align-items:center;gap:4px;background:none;border:none;color:#ffffffd9;font-size:12px;cursor:pointer;padding:0;flex-shrink:0;transition:color .2s}.gallery-like-btn:hover{color:#f87171}.gallery-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:32px;color:#fff6;font-size:14px}.gallery-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.15);border-top-color:#fff9;border-radius:50%;animation:spin .8s linear infinite}.gallery-load-more{display:flex;justify-content:center;padding:24px}.gallery-load-more-btn{padding:10px 32px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#ffffffb3;border-radius:24px;font-size:14px;cursor:pointer;transition:background .2s,border-color .2s}.gallery-load-more-btn:hover{background:#ffffff1a;border-color:#fff3}.app-switch{position:relative;flex-shrink:0;width:44px;height:24px;padding:0;border:none;border-radius:999px;background:#ffffff1f;cursor:pointer;transition:background .2s ease}.app-switch.is-on{background:var(--color-brand)}[data-theme=light] .app-switch:not(.is-on){background:var(--color-neutral-border-1)}.app-switch:disabled{opacity:.5;cursor:not-allowed}.app-switch-knob{position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:50%;background:var(--color-neutral-white, #ffffff);box-shadow:0 1px 3px #00000047;transition:transform .2s ease,background .2s ease}.app-switch.is-on .app-switch-knob{transform:translate(20px)}.app-switch:focus-visible{outline:2px solid var(--color-brand-ring);outline-offset:2px}.video-toolbar{display:flex;align-items:center;gap:6px;flex-wrap:nowrap;overflow:visible;min-width:0;flex:1;opacity:1;max-height:60px;transition:opacity .25s ease,max-height .3s ease,margin .3s ease}.vtb-dropdown{position:relative;flex-shrink:0}.vtb-tag-btn{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 6px;border-radius:8px;border:1px solid var(--canvas-color-bg-active);background:var(--canvas-color-bg-faint, rgba(255, 255, 255, .04));color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));font-size:16px;cursor:pointer;white-space:nowrap;transition:background .15s,border-color .15s,color .15s;line-height:1;box-sizing:border-box}.vtb-tag-btn .vtb-model-icon{width:22px;height:22px;border-radius:6px;flex-shrink:0}.vtb-tag-btn .vtb-model-icon-version{font-size:8px;font-weight:700}.vtb-tag-btn .vtb-model-icon-badge{display:none}.vtb-tag-btn:hover{background:var(--canvas-color-bg-active);border-color:var(--canvas-color-border-focus);color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85))}.vtb-tag-btn.open{background:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));border-color:var(--canvas-color-text-faint);color:var(--canvas-color-text-primary)}.vtb-tag-label{font-size:14px;line-height:1;display:flex;align-items:center}.vtb-tag-divider{color:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));margin:0 3px;font-size:12px}.vtb-tag-btn .vtb-ratio-icon{width:18px;height:18px;margin-right:-2px}.vtb-tag-arrow{width:8px;height:8px;flex-shrink:0;opacity:.6;transition:transform .15s}.vtb-tag-btn.open .vtb-tag-arrow{transform:rotate(180deg);opacity:.9}.vtb-panel{position:absolute;top:calc(100% + 6px);left:0;background:var(--canvas-color-bg-panel);color:var(--canvas-color-text-primary);border:1px solid var(--canvas-color-border-strong, rgba(255, 255, 255, .12));border-radius:12px;padding:12px;z-index:200;box-shadow:0 8px 32px var(--canvas-color-shadow-strong);animation:vtb-panel-in .12s ease}.vtb-panel.vtb-panel-up{top:auto;bottom:calc(100% + 6px);animation:vtb-panel-up-in .12s ease}@keyframes vtb-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes vtb-panel-up-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.vtb-panel-title{font-size:12px;color:var(--canvas-color-text-subtle, rgba(255, 255, 255, .35));margin-bottom:8px;padding:4px 4px 0}.vtb-panel-divider{height:1px;background:var(--canvas-color-border-default, rgba(255, 255, 255, .08));margin:10px 0}.vtb-model-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.vtb-model-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:8px;cursor:pointer;transition:background .12s}.vtb-model-item:hover{background:var(--canvas-color-bg-hover)}.vtb-model-item.selected{background:var(--canvas-color-bg-subtle, var(--canvas-color-bg-subtle, rgba(255, 255, 255, .06)))}.vtb-model-icon{width:40px;height:40px;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;flex-shrink:0;gap:1px}.vtb-model-icon-version{font-size:12px;font-weight:700;color:#fff;line-height:1}.vtb-model-icon-badge{font-size:9px;font-weight:600;color:var(--canvas-color-text-tertiary, rgba(255, 255, 255, .72));letter-spacing:.3px;line-height:1}.vtb-model-icon.vtb-model-icon-brand{background:#374151;color:#f3f4f6;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:0}.vtb-model-icon.vtb-model-icon-brand .vtb-model-icon-svg{width:62%;height:62%;display:block}.vtb-model-icon.vtb-model-icon-brand .vtb-model-icon-img{width:78%;height:78%;display:block;object-fit:contain;border-radius:4px}.vtb-tag-btn .vtb-model-icon.vtb-model-icon-brand{background:#374151}.vtb-model-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.vtb-model-name{font-size:13px;font-weight:500;color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));display:flex;align-items:center;gap:6px}.vtb-badge-new{font-size:10px;font-weight:600;color:#5eead4;background:#5eead41f;border:1px solid rgba(94,234,212,.25);border-radius:8px;padding:1px 5px;line-height:1.4}.vtb-model-desc{font-size:11px;color:var(--canvas-color-text-subtle, rgba(255, 255, 255, .35));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.vtb-check{width:14px;height:14px;flex-shrink:0;color:var(--canvas-color-text-icon, var(--canvas-color-text-icon, rgba(255, 255, 255, .6)))}.vtb-ratio-container{background:var(--canvas-color-bg-faint, rgba(255, 255, 255, .04));border-radius:10px;padding:4px}.vtb-ratio-grid{display:flex;gap:2px;flex-wrap:nowrap;justify-content:space-between}.vtb-tooltip-wrapper{position:relative;display:flex;flex:1}.vtb-tooltip-wrapper .vtb-ratio-item{width:100%}.vtb-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:8px 12px;background:var(--color-tooltip-bg);color:var(--color-tooltip-text);font-size:13px;border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;z-index:10;box-shadow:0 4px 12px #0003}.vtb-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:var(--color-tooltip-bg) transparent transparent transparent}.vtb-tooltip-wrapper:hover .vtb-tooltip{opacity:1;visibility:visible}.vtb-ratio-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:10px 4px;border-radius:8px;border:none;background:transparent;color:var(--canvas-color-text-muted, rgba(255, 255, 255, .45));cursor:pointer;transition:background .12s,color .12s;flex:1}.vtb-ratio-item:hover{background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)));color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85))}.vtb-ratio-item.active{background:var(--canvas-color-bg-active);color:var(--canvas-color-text-primary)}.vtb-ratio-item.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.vtb-ratio-icon{color:var(--canvas-color-text-icon-muted);transition:color .12s}.vtb-ratio-icon.active,.vtb-ratio-item.active .vtb-ratio-icon{color:var(--canvas-color-text-primary)}.vtb-ratio-label{font-size:12px;line-height:1;white-space:nowrap}.vtb-resolution-container{background:var(--canvas-color-bg-faint, rgba(255, 255, 255, .04));border-radius:10px;padding:4px}.vtb-resolution-row{display:flex;gap:2px}.vtb-resolution-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 12px;border-radius:8px;border:none;background:transparent;color:var(--canvas-color-text-icon, var(--canvas-color-text-icon, rgba(255, 255, 255, .6)));font-size:13px;font-weight:500;cursor:pointer;transition:background .12s,color .12s}.vtb-resolution-btn:hover{background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)));color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85))}.vtb-resolution-btn.active{background:var(--canvas-color-bg-active);color:var(--canvas-color-text-primary);font-weight:600}.vtb-resolution-btn.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.vtb-duration-icon,.vtb-duration-item-icon{width:18px;height:18px;flex-shrink:0}.vtb-duration-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.vtb-duration-item{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-radius:6px;cursor:pointer;color:var(--canvas-color-text-tertiary, rgba(255, 255, 255, .72));transition:background .12s,color .12s;background:transparent;margin:0}.vtb-duration-item:hover{background:var(--canvas-color-bg-hover);color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85))}.vtb-duration-item.selected{background:var(--canvas-color-bg-subtle, var(--canvas-color-bg-subtle, rgba(255, 255, 255, .06)));color:var(--canvas-color-text-primary)}.vtb-duration-item-content{display:flex;align-items:center;gap:8px;font-size:15px}.vtb-frame-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.vtb-frame-item{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;cursor:pointer;font-size:13px;color:var(--canvas-color-text-tertiary, rgba(255, 255, 255, .72));transition:background .12s,color .12s}.vtb-frame-item:hover{background:var(--canvas-color-bg-hover);color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85))}.vtb-frame-item.selected{background:var(--canvas-color-bg-subtle, var(--canvas-color-bg-subtle, rgba(255, 255, 255, .06)));color:var(--canvas-color-text-primary)}.vtb-frame-item.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}.vtb-audio-toggle{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 6px;border-radius:8px;border:1px solid var(--canvas-color-bg-active);background:var(--canvas-color-bg-faint, rgba(255, 255, 255, .04));-webkit-user-select:none;user-select:none;flex-shrink:0}.vtb-audio-icon{width:14px;height:14px;flex-shrink:0;opacity:.6}.vtb-audio-label{font-size:14px;color:var(--canvas-color-text-tertiary, rgba(255, 255, 255, .72));line-height:1;white-space:nowrap}.image-size-panel{display:flex;flex-direction:column;gap:16px;padding:4px;background:var(--canvas-color-bg-panel);border-radius:12px;color:var(--canvas-color-text-primary)}.size-section{display:flex;flex-direction:column;gap:8px}.size-section-title{font-size:13px;color:var(--canvas-color-text-muted, rgba(255, 255, 255, .45));margin-bottom:4px}.ratio-grid{display:grid;gap:4px;background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)));padding:4px;border-radius:12px}.ratio-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px 2px;border:none;background:transparent;color:var(--canvas-color-text-icon, var(--canvas-color-text-icon, rgba(255, 255, 255, .6)));border-radius:8px;cursor:pointer;transition:all .2s ease;min-width:0}.ratio-btn:hover{background:var(--canvas-color-border-default, rgba(255, 255, 255, .08));color:var(--canvas-color-text-primary)}.ratio-btn.active{background:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));color:var(--canvas-color-text-primary)}.ratio-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center}.ratio-label{font-size:11px;font-weight:500}.res-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)));padding:4px;border-radius:12px}.res-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;border:none;background:transparent;color:var(--canvas-color-text-icon, var(--canvas-color-text-icon, rgba(255, 255, 255, .6)));border-radius:8px;cursor:pointer;transition:all .2s ease;font-size:13px;font-weight:500;min-width:0}.res-btn:hover{background:var(--canvas-color-border-default, rgba(255, 255, 255, .08));color:var(--canvas-color-text-primary)}.res-btn.active{background:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));color:var(--canvas-color-text-primary)}.res-sparkle{width:14px;height:14px;color:#38bdf8}.dim-row{display:flex;align-items:center;gap:12px}.dim-input-group{display:flex;align-items:center;gap:8px;background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)));border:1px solid var(--canvas-color-border-default, rgba(255, 255, 255, .08));border-radius:8px;padding:8px 12px;flex:1;transition:all .2s ease}.dim-input-group:focus-within{border-color:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));background:var(--canvas-color-border-default, rgba(255, 255, 255, .08))}.dim-input-group.disabled{opacity:.5;pointer-events:none}.dim-prefix{color:var(--canvas-color-text-icon-muted);font-size:13px;font-weight:600}.dim-input{background:transparent;border:none;color:var(--canvas-color-text-primary);font-size:14px;font-weight:500;width:100%;outline:none;text-align:right;-moz-appearance:textfield}.dim-input::-webkit-outer-spin-button,.dim-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.dim-link-wrapper{position:relative;display:flex;align-items:center;justify-content:center}.dim-link-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;background:var(--canvas-color-border-default, rgba(255, 255, 255, .08));color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));border-radius:8px;cursor:pointer;transition:all .2s ease}.dim-link-btn:hover{background:var(--canvas-color-border-focus);color:var(--canvas-color-text-primary)}.dim-link-btn[data-tooltip]:before{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--color-tooltip-bg);color:var(--color-tooltip-text);padding:6px 10px;border-radius:6px;font-size:12px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .2s ease;box-shadow:0 4px 12px #0000004d;border:1px solid var(--canvas-color-bg-active);z-index:10}.dim-link-btn[data-tooltip]:after{content:"";position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);border-width:4px;border-style:solid;border-color:var(--color-tooltip-bg) transparent transparent transparent;opacity:0;transition:opacity .2s ease;pointer-events:none;z-index:11}.dim-link-btn[data-tooltip]:hover:before,.dim-link-btn[data-tooltip]:hover:after{opacity:1}.dim-link-btn svg{width:16px;height:16px}.dim-suffix{color:var(--canvas-color-text-icon-muted);font-size:13px;font-weight:600}.gpt2-size-panel{gap:12px;padding:4px}.gpt2-size-panel .size-section{gap:6px}.gpt2-size-panel .size-section-title{font-size:12px;margin-bottom:2px}.gpt2-ratio-grid{gap:3px;padding:3px;border-radius:10px}.gpt2-ratio-btn{padding:4px 1px;gap:2px}.gpt2-ratio-btn .ratio-label{font-size:10px}.gpt2-ratio-icon{width:20px;height:20px}.gpt2-res-grid-3{grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;border-radius:10px}.gpt2-res-grid-2{grid-template-columns:repeat(2,1fr);gap:3px;padding:3px;border-radius:10px}.gpt2-res-btn{padding:6px 8px;font-size:12px;gap:4px}.gpt2-res-btn .res-sparkle{width:12px;height:12px}[data-theme=light] .canvas-handle:hover:after,[data-theme=light] .canvas-handle:focus-visible:after,[data-theme=light] .react-flow__node:hover .canvas-handle:after,[data-theme=light] .react-flow__node.selected .canvas-handle:after,[data-theme=light] .react-flow__handle.canvas-handle.connectingto:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><line x1='2' y1='6' x2='10' y2='6' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/><line x1='6' y1='2' x2='6' y2='10' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/></svg>")}.app-select{position:relative;width:100%}.app-select-trigger{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;height:36px;padding:0 12px;border:1px solid var(--canvas-color-select-trigger-border, rgba(255, 255, 255, .1));border-radius:var(--canvas-color-select-radius, 8px);background:var(--canvas-color-select-trigger-bg, #1a1a1c);color:var(--canvas-color-select-trigger-text, rgba(255, 255, 255, .88));font-size:13px;line-height:1.2;font-family:inherit;cursor:pointer;outline:none;transition:background-color .12s,border-color .12s,box-shadow .12s,color .12s}.app-select-trigger:hover:not(:disabled){border-color:var(--canvas-color-select-trigger-border-hover, rgba(255, 255, 255, .18))}.app-select-trigger:focus-visible{border-color:var(--canvas-color-select-trigger-border-active, rgba(59, 130, 246, .75));box-shadow:0 0 0 2px var(--canvas-color-select-trigger-focus-ring, rgba(59, 130, 246, .28))}.app-select-trigger.is-open{border-color:var(--canvas-color-select-trigger-border-active, rgba(59, 130, 246, .85));box-shadow:var(--canvas-color-select-trigger-open-shadow, 0 0 0 2px rgba(59, 130, 246, .32));color:var(--canvas-color-select-trigger-text, rgba(255, 255, 255, .88))}.app-select-trigger:disabled{opacity:.5;cursor:not-allowed}.app-select-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.app-select-value.is-placeholder{color:var(--canvas-color-select-trigger-placeholder, rgba(255, 255, 255, .45))}.app-select-chevron{flex-shrink:0;color:var(--canvas-color-select-trigger-chevron, rgba(255, 255, 255, .55));transition:transform .15s ease,color .12s}.app-select-trigger:hover:not(:disabled) .app-select-chevron,.app-select-trigger.is-open .app-select-chevron{color:var(--canvas-color-select-trigger-chevron, rgba(255, 255, 255, .55))}.app-select-chevron.is-open{transform:rotate(180deg)}.app-select-menu{margin:0;padding:6px 0;list-style:none;border:1px solid var(--canvas-color-select-menu-border, rgba(255, 255, 255, .08));border-radius:var(--canvas-color-select-radius, 8px);background:var(--canvas-color-select-menu-bg, #262626);box-shadow:var(--canvas-color-select-menu-shadow, 0 8px 28px rgba(0, 0, 0, .45));overflow-y:auto;animation:app-select-menu-in .15s ease-out;transform-origin:top center}.app-select-menu--floating{position:fixed;z-index:10000}@keyframes app-select-menu-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.app-select-option{display:block;width:100%;padding:8px 16px;border:none;border-radius:0;background:transparent;color:var(--canvas-color-select-option-text, rgba(255, 255, 255, .78));font-size:13px;line-height:1.35;font-family:inherit;text-align:left;cursor:pointer;transition:background .1s,color .1s}.app-select-option:hover:not(:disabled){background:var(--canvas-color-select-option-hover-bg, rgba(255, 255, 255, .06));color:var(--canvas-color-select-option-hover-text, rgba(255, 255, 255, .92))}.app-select-option.is-selected{background:var(--canvas-color-select-option-selected-bg, rgba(255, 255, 255, .12));color:var(--canvas-color-select-option-selected-text, #fff);font-weight:600}.app-select-option.is-disabled{color:var(--canvas-color-select-option-disabled-text, rgba(255, 255, 255, .28));cursor:not-allowed}.app-select-option.is-disabled:hover{background:transparent;color:var(--canvas-color-select-option-disabled-text, rgba(255, 255, 255, .28))}.app-select-option:focus-visible{outline:none;background:var(--canvas-color-select-option-hover-bg, rgba(255, 255, 255, .08))}[data-theme=light] .app-select-menu{padding:6px}[data-theme=light] .app-select-option{border-radius:4px}[data-theme=light] .canvas-handle:hover:after,[data-theme=light] .canvas-handle:focus-visible:after,[data-theme=light] .react-flow__node:hover .canvas-handle:after,[data-theme=light] .react-flow__node.selected .canvas-handle:after,[data-theme=light] .react-flow__handle.canvas-handle.connectingto:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><line x1='2' y1='6' x2='10' y2='6' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/><line x1='6' y1='2' x2='6' y2='10' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/></svg>")}.cvp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;background:var(--color-modal-overlay-heavy);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:cvp-fade-in .2s ease}@keyframes cvp-fade-in{0%{opacity:0}to{opacity:1}}.cvp-panel{display:flex;flex-direction:column;width:min(880px,94vw);max-height:min(84vh,820px);border:1px solid var(--color-modal-border);border-radius:14px;background:var(--color-modal-bg-elevated);box-shadow:var(--color-modal-shadow);animation:cvp-slide-up .25s cubic-bezier(.16,1,.3,1)}@keyframes cvp-slide-up{0%{transform:translateY(16px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.cvp-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px 0}.cvp-title{margin:0;font-size:16px;font-weight:600;color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-close{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--canvas-color-text-icon, var(--color-text-icon));cursor:pointer;transition:background .15s,color .15s}.cvp-close:hover{background:var(--canvas-color-bg-hover, var(--color-bg-hover));color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-tabs{display:flex;gap:20px;padding:10px 18px 0;border-bottom:1px solid var(--canvas-color-border-default, var(--color-border-default))}.cvp-tab{position:relative;padding:7px 0 10px;border:none;background:transparent;color:var(--canvas-color-text-muted, var(--color-text-muted));font-size:13px;font-weight:500;cursor:pointer;transition:color .15s}.cvp-tab:hover{color:var(--canvas-color-text-tertiary, var(--color-text-secondary))}.cvp-tab.active{color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;border-radius:999px;background:var(--canvas-color-state-success-gradient, #4caf50)}.cvp-toolbar{display:flex;align-items:center;gap:8px;padding:12px 18px 8px}.cvp-search-wrap{flex:1;display:flex;align-items:center;gap:6px;min-width:0;padding:0 10px;height:34px;border-radius:var(--canvas-color-input-radius, 4px)}.cvp-search-wrap:focus-within{border-color:var(--canvas-color-input-border-focus);box-shadow:var(--canvas-color-input-focus-shadow)}.cvp-search-icon{flex-shrink:0;color:var(--canvas-color-text-subtle, var(--color-text-subtle))}.cvp-search-input{flex:1;min-width:0;color:var(--canvas-color-input-text, var(--color-input-text));font-size:13px;outline:none}.cvp-search-input::placeholder{color:var(--canvas-color-input-placeholder, var(--color-input-placeholder))}.cvp-filter-btn{flex-shrink:0;display:inline-flex;align-items:center;gap:5px;height:34px;padding:0 12px;border:1px solid var(--canvas-color-border-default, var(--color-border-default));border-radius:8px;background:var(--canvas-color-bg-input, var(--color-input-bg));color:var(--canvas-color-text-tertiary, var(--color-text-secondary));font-size:12px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.cvp-filter-btn:hover,.cvp-filter-btn.active{border-color:var(--canvas-color-state-success-ring, rgba(76, 175, 80, .2));background:var(--canvas-color-state-success-bg, rgba(76, 175, 80, .12));color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-filter-popover{position:absolute;top:calc(100% + 6px);right:0;z-index:2;min-width:148px;padding:5px;border:1px solid var(--canvas-color-border-default, var(--color-border-default));border-radius:8px;background:var(--canvas-color-bg-elevated, rgba(24, 24, 27, .85));box-shadow:0 8px 24px var(--canvas-color-shadow, rgba(0, 0, 0, .38))}.cvp-filter-wrap{position:relative}.cvp-filter-option{display:block;width:100%;padding:7px 9px;border:none;border-radius:6px;background:transparent;color:var(--canvas-color-text-tertiary, var(--color-text-secondary));font-size:12px;text-align:left;cursor:pointer}.cvp-filter-option:hover{background:var(--canvas-color-bg-hover, var(--color-bg-hover))}.cvp-filter-option.active{background:var(--canvas-color-state-success-bg, rgba(76, 175, 80, .12));color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-quick-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:0 18px 10px}.cvp-quick-label{font-size:11px;color:var(--canvas-color-text-subtle, var(--color-text-subtle))}.cvp-quick-tag{padding:3px 8px;border:1px solid var(--canvas-color-border-default, var(--color-border-default));border-radius:999px;background:var(--canvas-color-bg-faint, var(--color-bg-faint));color:var(--canvas-color-text-tertiary, var(--color-text-secondary));font-size:11px;cursor:pointer;transition:border-color .15s,background .15s,color .15s}.cvp-quick-tag:hover{border-color:var(--canvas-color-state-success-ring, rgba(76, 175, 80, .2));background:var(--canvas-color-state-success-bg, rgba(76, 175, 80, .12));color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-body{flex:1;min-height:0;overflow:auto;padding:0 18px 18px}.cvp-section-title{margin:6px 0 8px;font-size:12px;font-weight:600;color:var(--canvas-color-text-icon, var(--color-text-icon))}.cvp-list{display:flex;flex-direction:column;gap:8px}.cvp-row{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--canvas-color-border-subtle, var(--color-border-subtle));border-radius:10px;background:var(--canvas-color-bg-faint, var(--color-bg-faint));transition:border-color .15s,background .15s}.cvp-row:hover{border-color:var(--canvas-color-border-strong, var(--color-border-strong));background:var(--canvas-color-bg-hover, var(--color-bg-hover))}.cvp-row.selected{border-color:var(--canvas-color-state-success-ring, rgba(76, 175, 80, .2));background:var(--canvas-color-state-success-bg, rgba(76, 175, 80, .12))}.cvp-avatar{display:none;flex-shrink:0;width:48px;height:48px;border-radius:10px}.cvp-info{flex:1;min-width:0}.cvp-name{margin:0 0 3px;font-size:13px;font-weight:600;color:var(--canvas-color-text-primary, var(--color-text-primary))}.cvp-desc{margin:0 0 6px;font-size:11px;line-height:1.4;color:var(--canvas-color-text-muted, var(--color-text-muted));display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cvp-tags{display:flex;flex-wrap:wrap;gap:5px}.cvp-tag{padding:2px 7px;border-radius:999px;background:var(--canvas-color-bg-subtle, var(--color-bg-subtle));color:var(--canvas-color-text-icon, var(--color-text-icon));font-size:10px}.cvp-actions{display:flex;flex-shrink:0;align-items:center;gap:6px}.cvp-select-btn{display:inline-flex;align-items:center;gap:5px;min-width:76px;justify-content:center;height:30px;padding:0 12px;border:none;border-radius:999px;background:var(--canvas-color-bg-active, var(--color-bg-active));color:var(--canvas-color-text-primary, var(--color-text-primary));font-size:12px;font-weight:500;cursor:pointer;transition:background .15s}.cvp-select-btn:hover{background:var(--canvas-color-bg-hover, var(--color-bg-hover))}.cvp-select-btn.selected{background:var(--canvas-color-state-success-gradient, #4caf50);color:var(--canvas-color-on-success, #fff)}.cvp-icon-btn{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--canvas-color-text-icon-muted, var(--color-text-icon-muted));cursor:pointer;transition:color .15s,background .15s}.cvp-icon-btn:hover{background:var(--canvas-color-bg-subtle, var(--color-bg-subtle));color:var(--canvas-color-text-tertiary, var(--color-text-secondary))}.cvp-icon-btn.favorited{color:var(--canvas-color-state-warning, #f59e0b)}.cvp-empty{padding:40px 14px;text-align:center;color:var(--canvas-color-text-icon-muted, var(--color-text-icon-muted));font-size:13px}.canvas-gen-wrapper{position:relative}.canvas-node-gen{min-width:220px;max-width:320px;padding:2px 0}.canvas-node-gen-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 14px;position:relative}.canvas-node-gen-label{font-size:12px;color:var(--canvas-color-text-icon-muted);white-space:nowrap;flex-shrink:0}.canvas-node-gen-value{display:flex;align-items:center;gap:4px;border:none;background:transparent;color:var(--canvas-color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;padding:4px 8px;border-radius:6px;transition:background .12s;max-width:240px;text-align:right;white-space:nowrap}.canvas-node-gen-value:hover{background:var(--canvas-color-bg-subtle)}.canvas-node-gen-value>svg{color:var(--canvas-color-text-muted);flex-shrink:0}.canvas-node-gen-value .canvas-gen-model-icon{width:14px;height:14px;background:transparent;border-radius:0;margin-right:-2px}.canvas-node-gen-value .canvas-gen-model-icon svg{width:100%;height:100%}.canvas-node-toggle{position:relative;width:36px;height:20px;border-radius:10px;border:none;background:var(--canvas-color-border-strong);cursor:pointer;transition:background .2s;padding:0}.canvas-node-toggle.on{background:var(--color-brand)}[data-theme=light] .canvas-node-toggle:not(.on){background:var(--color-neutral-border-1)}.canvas-node-toggle-knob{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:var(--color-neutral-white, #ffffff);transition:transform .2s;box-shadow:0 1px 3px #0003}.canvas-node-toggle.on .canvas-node-toggle-knob{transform:translate(16px)}.canvas-node-gen-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:calc(100% - 24px);margin:8px 12px 12px;padding:8px 0;border:none;border-radius:8px;background:var(--canvas-color-state-success-gradient);color:var(--canvas-color-on-success);font-size:13px;font-weight:600;cursor:pointer;transition:filter .15s,opacity .15s}.canvas-node-gen-btn:hover:not(:disabled){filter:brightness(1.03)}.canvas-node-gen-btn:disabled{opacity:.6;cursor:not-allowed}.canvas-node-gen-btn svg{color:var(--canvas-color-on-success)}.canvas-node-gen-btn.canvas-node-gen-btn-pending{background:#f0883e}.canvas-node-gen-btn.canvas-node-gen-btn-pending:hover:not(:disabled){background:#e07b32}.canvas-node-gen-btn-spinner{width:14px;height:14px;border:2px solid var(--canvas-color-text-subtle);border-top-color:var(--canvas-color-text-primary);border-radius:50%;animation:canvas-spin .8s linear infinite}.canvas-image-floating-prompt{position:absolute;left:50%;transform:translate(-50%);margin-top:10px;width:668px;padding:10px;border-radius:10px;background:var(--canvas-color-bg-panel);border:1px solid var(--canvas-color-floating-panel-border);box-shadow:0 8px 22px var(--canvas-color-floating-panel-shadow);box-sizing:border-box}.canvas-image-floating-prompt-expanded{position:fixed;top:60px;right:80px;bottom:80px;left:80px;width:auto;transform:none;margin-top:0;z-index:1000;display:flex;flex-direction:column;border-radius:14px;box-shadow:0 16px 64px var(--canvas-color-shadow-strong)}.canvas-image-floating-prompt-expanded .canvas-image-floating-prompt-input-wrap{flex:1;min-height:0}.canvas-image-floating-prompt-expanded .canvas-image-floating-textarea{height:100%;max-height:none;min-height:0}.canvas-image-prompt-expand-btn{position:absolute;top:10px;right:10px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--canvas-color-text-icon-muted);cursor:pointer;border-radius:6px;transition:color .15s,background .15s;z-index:2}.canvas-image-prompt-expand-btn:hover{color:var(--canvas-color-text-secondary);background:var(--canvas-color-border-default)}.canvas-image-floating-prompt-slot{position:relative;display:flex;align-items:center;gap:8px;width:100%}.canvas-image-prompt-thumb-list{flex:1;--canvas-prompt-thumb-size: 48px;--canvas-prompt-thumb-gap: 8px;display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--canvas-prompt-thumb-gap);width:100%;min-width:0}.canvas-image-prompt-thumb{position:relative;width:48px;height:48px;border-radius:9px;overflow:hidden;flex-shrink:0;border:1px solid var(--canvas-color-link-thumb-border)}.canvas-image-prompt-thumb img,.canvas-image-prompt-thumb video{width:100%;height:100%;object-fit:cover;display:block}.canvas-image-prompt-thumb svg{display:block;color:var(--canvas-color-text-icon);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.canvas-image-prompt-thumb-badge{position:absolute;top:1px;right:1px;width:16px;height:16px;border-radius:50%;background:var(--canvas-color-link-thumb-badge-bg);color:var(--canvas-color-link-thumb-badge-text);font-size:10px;font-weight:600;display:flex;align-items:center;justify-content:center;line-height:1}.canvas-image-prompt-thumb-remove{position:absolute;top:1px;right:1px;width:16px;height:16px;border-radius:50%;background:var(--canvas-color-link-thumb-remove-bg);color:var(--canvas-color-link-thumb-remove-text);border:1px solid var(--canvas-color-link-thumb-remove-border);padding:0;display:none;align-items:center;justify-content:center;cursor:pointer;z-index:2;line-height:0;transition:background .15s ease,transform .1s ease}.canvas-image-prompt-thumb-remove svg{stroke:currentColor}.canvas-image-prompt-thumb-remove:hover{background:var(--canvas-color-link-thumb-remove-bg-hover);transform:scale(1.08)}.canvas-image-prompt-thumb:hover .canvas-image-prompt-thumb-remove{display:flex}.canvas-image-prompt-thumb:hover .canvas-image-prompt-thumb-badge{opacity:0}.canvas-image-prompt-thumb-wrap{position:relative;display:inline-flex;flex-shrink:0}.canvas-image-prompt-thumb-preview{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.92);transform-origin:bottom center;border-radius:12px;box-shadow:0 12px 32px var(--canvas-color-overlay);opacity:0;pointer-events:none;visibility:hidden;transition:opacity .12s ease,transform .12s ease,visibility .12s;z-index:1000;overflow:hidden;line-height:0}.canvas-image-prompt-thumb-preview img,.canvas-image-prompt-thumb-preview video{display:block;max-width:268px;max-height:348px;width:auto;height:auto;border-radius:12px;object-fit:contain}.canvas-image-prompt-thumb-wrap:hover .canvas-image-prompt-thumb-preview{opacity:1;visibility:visible;transform:translate(-50%) scale(1)}.canvas-audio-prompt-name-tip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.92);transform-origin:bottom center;padding:6px 10px;border-radius:8px;background:var(--canvas-color-link-tip-bg);border:1px solid var(--canvas-color-link-tip-border);box-shadow:0 8px 22px var(--canvas-color-shadow-strong);color:var(--canvas-color-link-tip-text);font-size:12px;line-height:1.2;max-width:220px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;opacity:0;pointer-events:none;visibility:hidden;transition:opacity .12s ease,transform .12s ease,visibility .12s;z-index:1000}.canvas-image-prompt-thumb-wrap:hover .canvas-audio-prompt-name-tip{opacity:1;visibility:visible;transform:translate(-50%) scale(1)}.canvas-image-floating-prompt-expanded .canvas-image-at-panel,.canvas-video-floating-prompt-expanded .canvas-image-at-panel,.canvas-image-floating-prompt-expanded .canvas-image-style-preset-panel,.canvas-image-floating-prompt-expanded .canvas-voice-prosody-preset-panel,.canvas-image-floating-prompt-expanded .canvas-voice-pause-preset-panel,.canvas-video-floating-prompt-expanded .canvas-video-camera-preset-panel{top:calc(100% + 8px);bottom:auto}.canvas-image-floating-prompt-expanded .canvas-image-prompt-thumb-preview,.canvas-video-floating-prompt-expanded .canvas-image-prompt-thumb-preview,.canvas-image-floating-prompt-expanded .canvas-audio-prompt-name-tip,.canvas-video-floating-prompt-expanded .canvas-audio-prompt-name-tip{top:calc(100% + 8px);bottom:auto;transform-origin:top center}.canvas-image-quick-btn{border:1px solid var(--canvas-color-floating-panel-border);background:var(--canvas-color-quick-chip-bg);color:var(--canvas-color-quick-chip-text);border-radius:999px;font-size:11px;line-height:1;padding:5px 9px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.canvas-image-quick-btn:hover{background:var(--canvas-color-quick-chip-bg-hover);border-color:var(--canvas-color-border-strong)}.canvas-image-quick-btn-card{width:48px;height:48px;border-radius:9px;border:1px solid var(--canvas-color-border-node);background:transparent;color:var(--canvas-color-text-secondary);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;line-height:1;box-shadow:none;justify-self:center}.canvas-image-quick-btn-card svg{width:14px;height:14px;color:var(--canvas-color-text-tertiary)}.canvas-image-quick-btn-card span{font-size:10px;font-weight:300;letter-spacing:0}.canvas-image-quick-btn-card:hover{background:transparent;border-color:var(--canvas-color-text-muted)}.canvas-image-quick-btn-card.active{background:var(--canvas-color-border-strong);border-color:var(--canvas-color-border-node)}.canvas-image-at-icon{font-size:16px;font-weight:700;line-height:1;color:var(--canvas-color-text-tertiary)}.canvas-image-at-panel{position:absolute;left:0;bottom:calc(100% + 8px);min-width:200px;max-width:280px;padding:4px;border-radius:10px;background:var(--canvas-color-bg-panel);border:1px solid var(--canvas-color-floating-panel-border);box-shadow:0 12px 30px var(--canvas-color-floating-panel-shadow);z-index:25}.canvas-image-at-panel .canvas-mention-dd-item{border-radius:6px}.canvas-image-at-panel-empty{padding:10px 12px;font-size:11px;color:var(--canvas-color-text-subtle)}.canvas-image-style-preset-panel{position:absolute;left:0;bottom:calc(100% + 8px);width:320px;max-width:min(86vw,420px);padding:10px;border-radius:10px;background:var(--canvas-color-bg-panel);border:1px solid var(--canvas-color-floating-panel-border);box-shadow:0 12px 30px var(--canvas-color-floating-panel-shadow);z-index:25}.canvas-image-style-preset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.canvas-image-style-preset-item{border:1px solid var(--canvas-color-border-strong);border-radius:8px;background:var(--canvas-color-preset-item-bg);color:var(--canvas-color-preset-item-text);font-size:11px;font-weight:500;line-height:1.35;text-align:left;padding:10px 8px;min-height:56px;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.canvas-image-style-preset-item:hover{border-color:var(--canvas-color-border-focus);background:var(--canvas-color-preset-item-bg-hover);color:var(--canvas-color-preset-item-text-hover)}.canvas-voice-prosody-preset-panel{position:absolute;left:0;bottom:calc(100% + 8px);width:360px;max-width:min(92vw,480px);padding:10px;border-radius:10px;background:var(--canvas-color-bg-panel);border:1px solid var(--canvas-color-floating-panel-border);box-shadow:0 12px 30px var(--canvas-color-floating-panel-shadow);z-index:25}.canvas-voice-prosody-preset-header{font-size:11px;color:var(--canvas-color-text-muted);margin-bottom:8px}.canvas-voice-prosody-preset-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:240px;overflow-y:auto}.canvas-voice-prosody-preset-item{display:flex;align-items:center;justify-content:center;border:1px solid var(--canvas-color-border-default);border-radius:8px;background:var(--canvas-color-preset-item-bg);color:var(--canvas-color-preset-item-text);text-align:center;padding:8px 10px;min-height:36px;cursor:pointer;transition:border-color .15s ease,background .15s ease,opacity .15s ease}.canvas-voice-prosody-preset-item:disabled{opacity:.38;cursor:not-allowed}.canvas-voice-prosody-preset-item:not(:disabled):hover{border-color:var(--canvas-color-state-success);background:var(--canvas-color-state-success-bg);color:var(--canvas-color-preset-item-text-hover)}.canvas-voice-prosody-preset-label{font-size:12px;font-weight:600;line-height:1.3}.canvas-voice-prosody-mark{display:inline-flex;align-items:center;padding:1px 7px;border-radius:4px;background:#4caf5038;border:1px solid rgba(76,175,80,.45);color:#86efac;font-size:12px;font-weight:600;line-height:1.4;vertical-align:baseline;white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:default}.canvas-voice-prosody-label{line-height:1.2}.canvas-voice-pause-mark{display:inline-block;margin:0 1px;padding:1px 6px;border-radius:6px;background:var(--canvas-color-border-strong);color:#c084fc;font-size:12px;font-weight:600;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.4;vertical-align:baseline;cursor:pointer;-webkit-user-select:none;user-select:none}.canvas-voice-pause-mark:hover{background:#c084fc2e}.canvas-voice-pause-preset-panel{position:absolute;left:0;bottom:calc(100% + 8px);min-width:300px;padding:8px;border-radius:10px;background:var(--canvas-color-bg-panel);border:1px solid var(--canvas-color-floating-panel-border);box-shadow:0 12px 30px var(--canvas-color-floating-panel-shadow);z-index:100}.canvas-voice-pause-preset-row{display:flex;flex-wrap:wrap;gap:6px}.canvas-voice-pause-preset-item{flex:1 1 auto;min-width:44px;padding:6px 10px;border:1px solid var(--canvas-color-border-default);border-radius:8px;background:var(--canvas-color-preset-item-bg);color:var(--canvas-color-preset-item-text);font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.canvas-voice-pause-preset-item:hover{border-color:#c084fc73;background:#c084fc1a;color:var(--canvas-color-preset-item-text-hover)}.canvas-voice-pause-preset-item.active{border-color:#c084fc8c;background:#c084fc29;color:#c084fc}.canvas-voice-pause-preset-item--custom{flex:0 1 auto}.canvas-voice-pause-custom-row{display:flex;align-items:center;gap:6px;margin-top:8px}.canvas-voice-pause-custom-input{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--canvas-color-border-default);border-radius:8px;background:var(--canvas-color-preset-item-bg);color:var(--canvas-color-preset-item-text);font-size:12px}.canvas-voice-pause-custom-input::placeholder{color:var(--canvas-color-text-disabled)}.canvas-voice-pause-custom-apply{flex-shrink:0;padding:6px 10px;border:1px solid rgba(192,132,252,.35);border-radius:8px;background:#c084fc1f;color:#c084fc;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .15s ease,background .15s ease}.canvas-voice-pause-custom-apply:hover{border-color:#c084fc8c;background:#c084fc33}.canvas-voice-floating-prompt-slot{display:flex;flex-direction:column;align-items:flex-start;gap:0}.canvas-voice-prompt-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;position:relative}.canvas-voice-pause-control{position:relative;z-index:40}.canvas-voice-prompt-toolbar--pause-open .canvas-voice-quick-btn-prosody{pointer-events:none;opacity:.45}.canvas-voice-quick-chip{display:inline-flex;align-items:center;gap:3px;padding:6px 8px;border-radius:8px;border:1px solid var(--canvas-color-border-node);background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-secondary);font-size:12px;font-weight:400;line-height:1;cursor:pointer;transition:border-color .15s ease,background .15s ease}.canvas-voice-quick-chip:hover{border-color:var(--canvas-color-text-disabled);background:var(--canvas-color-border-default)}.canvas-voice-quick-chip.active{border-color:var(--canvas-color-text-muted);background:var(--canvas-color-border-strong)}.canvas-voice-quick-chip-symbol{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;color:var(--canvas-color-text-tertiary)}.canvas-image-floating-prompt-input-wrap{position:relative;display:flex;align-items:flex-start}.canvas-image-floating-textarea{display:block;width:100%;min-height:92px;margin-top:10px;height:120px;max-height:min(80vh,420px);border:none;outline:none;resize:none;border-radius:8px;background:var(--canvas-color-bg-panel);color:var(--canvas-color-text-secondary);font-size:14px;line-height:1.6;font-family:inherit;box-sizing:border-box;overflow-x:hidden;overflow-y:auto}.canvas-image-floating-textarea::placeholder{color:var(--canvas-color-text-faint)}.canvas-image-floating-prompt-editable{color:var(--canvas-color-text-secondary);white-space:pre-wrap;word-break:break-word;overflow-wrap:break-word;cursor:text;-webkit-user-select:text;user-select:text;box-sizing:border-box;min-height:100%}.canvas-image-floating-textarea,.canvas-image-floating-prompt-editable{scrollbar-width:thin;scrollbar-color:var(--canvas-color-text-tertiary) var(--canvas-color-bg-subtle)}.canvas-image-floating-textarea::-webkit-scrollbar,.canvas-image-floating-prompt-editable::-webkit-scrollbar{width:6px;height:6px}.canvas-image-floating-textarea::-webkit-scrollbar-track,.canvas-image-floating-prompt-editable::-webkit-scrollbar-track{background:var(--canvas-color-bg-faint);border-radius:999px}.canvas-image-floating-textarea::-webkit-scrollbar-thumb,.canvas-image-floating-prompt-editable::-webkit-scrollbar-thumb{background:var(--canvas-color-text-tertiary);border-radius:999px;border:1px solid var(--canvas-color-border-focus);background-clip:content-box}.canvas-image-floating-textarea::-webkit-scrollbar-thumb:hover,.canvas-image-floating-prompt-editable::-webkit-scrollbar-thumb:hover{background:var(--canvas-color-text-secondary);background-clip:content-box}.canvas-image-floating-prompt-editable:empty:before{content:attr(data-placeholder);color:var(--canvas-color-text-faint);pointer-events:none}.canvas-node-gen-error{display:flex;align-items:flex-start;gap:8px;background:#ef44441f;font-size:14px;color:#fca5a5;padding:10px 14px;border-radius:10px;line-height:1.4}.canvas-node-gen-error-text{flex:1 1 auto;min-width:0;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.canvas-node-gen-error-copy{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;margin-top:-1px;padding:0;border:none;border-radius:6px;background:#ef444429;color:#fca5a5;cursor:pointer;transition:background .15s ease,color .15s ease}.canvas-node-gen-error-copy:hover{background:#ef444447;color:#fecaca}.canvas-node-dropdown{position:absolute;right:14px;top:calc(100% + 4px);background:var(--canvas-color-bg-panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--canvas-color-border-default);border-radius:10px;box-shadow:0 8px 32px #0006;padding:4px;min-width:140px;z-index:50}.canvas-node-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;border:none;background:transparent;color:var(--canvas-color-text-tertiary);font-size:13px;cursor:pointer;border-radius:6px;transition:background .1s}.canvas-node-dropdown-item:hover{background:var(--canvas-color-bg-subtle)}.canvas-node-dropdown-item.active{color:var(--canvas-color-state-success);font-weight:600}.canvas-node-badge{font-size:10px;background:var(--canvas-color-state-success-gradient);color:var(--canvas-color-on-success);padding:1px 5px;border-radius:4px;font-weight:600}.canvas-node-dropdown-params{min-width:200px;padding:8px}.canvas-node-dropdown-section{margin-bottom:10px}.canvas-node-dropdown-section:last-child{margin-bottom:0}.canvas-node-dropdown-section-label{font-size:11px;color:var(--canvas-color-text-subtle);margin-bottom:6px;display:block;padding-left:4px}.canvas-node-dropdown-grid{display:flex;flex-wrap:wrap;gap:4px}.canvas-node-dropdown-chip{padding:4px 10px;border:1px solid var(--canvas-color-bg-active);border-radius:6px;background:transparent;color:var(--canvas-color-text-icon);font-size:12px;cursor:pointer;transition:all .1s}.canvas-node-dropdown-chip:hover{border-color:var(--canvas-color-border-strong);background:var(--canvas-color-bg-faint)}.canvas-node-dropdown-chip.active{border-color:var(--canvas-color-state-success);background:var(--canvas-color-state-success-bg);color:var(--canvas-color-state-success);font-weight:500}.canvas-gen-right-panel{position:absolute;left:calc(100% + 24px);top:50%;transform:translateY(-50%);background:var(--canvas-color-bg-panel);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--canvas-color-border-default);border-radius:12px;box-shadow:0 8px 32px #0006;padding:8px 6px;width:max-content;min-width:180px;display:flex;flex-direction:column;gap:4px;z-index:100}.react-flow__node:has(.canvas-gen-right-panel){overflow:visible!important;z-index:1000!important}.canvas-gen-wrapper:has(.canvas-gen-right-panel),.canvas-node-gen:has(.canvas-gen-right-panel){overflow:visible}.canvas-node-gen-row:has(.canvas-gen-right-panel){position:relative;z-index:20}.react-flow__node:has(.canvas-gen-right-panel) .react-flow__handle.canvas-handle[data-handlepos=right],.react-flow__node:has(.canvas-gen-right-panel) .react-flow__handle.canvas-handle[data-handlepos=right]:before,.react-flow__node:has(.canvas-gen-right-panel) .react-flow__handle.canvas-handle[data-handlepos=right]:after{pointer-events:none}.canvas-gen-right-panel-item{display:flex;align-items:center;justify-content:flex-start;text-align:left;width:100%;padding:6px 10px;border:none;background:transparent;color:var(--canvas-color-text-secondary);font-size:12px;font-weight:500;cursor:pointer;border-radius:8px;transition:background .12s,color .12s}.canvas-gen-right-panel-item:hover{background:var(--canvas-color-bg-subtle)}.canvas-gen-right-panel-item.active{color:var(--canvas-color-text-primary);background:var(--canvas-color-border-strong)}.canvas-gen-right-panel-item.active:hover{background:var(--canvas-color-bg-active)}.canvas-gen-right-panel-item-label{flex:1;text-align:left}.canvas-gen-right-panel-params{min-width:240px;padding:0}.canvas-gen-right-panel-params .canvas-voice-settings-panel{min-width:240px;max-height:min(720px,calc(100vh - 32px));overflow-y:auto;overflow-x:visible}.canvas-gen-right-panel-params .canvas-voice-emotion-row{overflow:visible}.canvas-gen-right-panel-params .canvas-audio-settings-panel{min-width:320px;max-height:min(560px,calc(100vh - 32px));overflow-y:auto}.canvas-gen-model-icon{width:18px;height:18px;border-radius:5px;background:#374151;color:#f3f4f6;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;margin-right:8px}.canvas-gen-model-icon svg{width:62%;height:62%;display:block}.canvas-gen-model-icon img{width:86%;height:86%;display:block;object-fit:contain;border-radius:3px}.canvas-params-panel{display:flex;flex-direction:column;gap:10px;padding:10px 12px;color:var(--canvas-color-text-primary)}.canvas-params-section{display:flex;flex-direction:column;gap:4px}.canvas-params-title{font-size:11px;color:var(--canvas-color-text-muted);margin-bottom:0}.canvas-params-ratio-grid{display:flex;flex-wrap:nowrap;gap:2px;background:var(--canvas-color-bg-faint);padding:3px;border-radius:8px;overflow-x:auto}.canvas-params-ratio-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px;border:none;background:transparent;color:var(--canvas-color-text-icon);border-radius:6px;cursor:pointer;transition:all .2s ease;flex:1;min-width:32px}.canvas-params-ratio-btn:hover{background:var(--canvas-color-border-default);color:var(--canvas-color-text-primary)}.canvas-params-ratio-btn.active{background:var(--canvas-color-border-strong);color:var(--canvas-color-text-primary)}.canvas-params-ratio-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center}.canvas-params-ratio-label{font-size:10px;font-weight:500}.canvas-params-res-container{background:var(--canvas-color-bg-faint);border-radius:8px;padding:3px}.canvas-params-res-row{display:flex;gap:2px}.canvas-params-res-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;padding:6px;border-radius:6px;border:none;background:transparent;color:var(--canvas-color-text-icon);cursor:pointer;transition:background .12s,color .12s;font-size:11px;font-weight:500}.canvas-params-res-btn:hover{background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-secondary)}.canvas-params-res-btn.active{background:var(--canvas-color-bg-active);color:var(--canvas-color-text-primary);font-weight:600}.canvas-params-sparkle{width:14px;height:14px;color:#38bdf8}.canvas-params-count-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.react-flow__handle.canvas-handle{pointer-events:all}.canvas-handle{width:10px;height:10px;z-index:2;background:var(--canvas-color-handle-idle-bg, var(--canvas-color-bg-panel));border:2px solid var(--canvas-color-handle-border);border-radius:50%;transition:border-color .15s ease,background .15s ease,box-shadow .2s ease}.react-flow__handle.canvas-handle[data-handlepos=left]{transform:translate(calc(-50% - 8px),-50%)}.react-flow__handle.canvas-handle[data-handlepos=right]{transform:translate(calc(50% + 8px),-50%)}.react-flow__handle.canvas-handle[data-handlepos=top]{transform:translate(-50%,calc(-50% - 8px))}.react-flow__handle.canvas-handle[data-handlepos=bottom]{transform:translate(-50%,calc(50% + 8px))}.canvas-handle:before{content:"";position:absolute;left:50%;top:50%;width:30px;height:30px;transform:translate(-50%,-50%) scale(.34);border-radius:50%;background:#14141800;border:2px solid rgba(255,255,255,0);box-shadow:0 0 #fff0;pointer-events:auto;transition:transform .22s cubic-bezier(.34,1.35,.64,1),background .15s ease,border-color .15s ease,box-shadow .2s ease}.canvas-handle:after{content:"";position:absolute;left:50%;top:50%;width:18px;height:18px;transform:translate(-50%,-50%) scale(.4);pointer-events:none;opacity:0;transition:opacity .15s ease,transform .22s cubic-bezier(.34,1.35,.64,1);background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><line x1='2' y1='6' x2='10' y2='6' stroke='white' stroke-width='2' stroke-linecap='round'/><line x1='6' y1='2' x2='6' y2='10' stroke='white' stroke-width='2' stroke-linecap='round'/></svg>");background-repeat:no-repeat;background-position:center;background-size:100% 100%;filter:var(--canvas-color-handle-cross-filter, none)}.canvas-handle:hover,.canvas-handle:focus-visible,.react-flow__node:hover .canvas-handle,.react-flow__node.selected .canvas-handle,.react-flow__handle.canvas-handle.connectingto{border-color:transparent;background:transparent}.canvas-handle:hover:before,.canvas-handle:focus-visible:before,.react-flow__node:hover .canvas-handle:before,.react-flow__node.selected .canvas-handle:before,.react-flow__handle.canvas-handle.connectingto:before{transform:translate(-50%,-50%) scale(1);background:var(--canvas-color-handle-hover-surface);border-color:var(--canvas-color-handle-hover-border);box-shadow:0 0 0 6px var(--canvas-color-handle-glow-1),0 0 18px 14px var(--canvas-color-handle-glow-2),0 0 48px 24px var(--canvas-color-handle-glow-3)}.canvas-handle:hover:after,.canvas-handle:focus-visible:after,.react-flow__node:hover .canvas-handle:after,.react-flow__node.selected .canvas-handle:after,.react-flow__handle.canvas-handle.connectingto:after{opacity:1;transform:translate(-50%,-50%) scale(1)}.react-flow__handle.canvas-handle.connectingto.valid:before{border-color:var(--canvas-color-handle-valid-border);box-shadow:0 0 0 6px var(--canvas-color-handle-valid-glow-1),0 0 18px 14px var(--canvas-color-handle-valid-glow-2),0 0 56px 24px var(--canvas-color-handle-valid-glow-3)}.react-flow__edge-path{stroke:var(--canvas-color-link-stroke, var(--canvas-color-border-focus))!important;stroke-width:2!important}.react-flow__edge .react-flow__edge-path.canvas-edge-endpoint-selected{stroke:var(--canvas-color-text-icon)!important}.react-flow__edge.selected .react-flow__edge-path{stroke:#ff9800!important;stroke-width:3!important}.react-flow__edge:hover .react-flow__edge-path{stroke:var(--canvas-color-edge-hover-stroke)!important}.canvas-video-gen-wrapper{min-width:260px;position:relative}.canvas-video-node-body{position:relative}.canvas-video-label{display:flex;align-items:center;gap:4px}.cvn-duration-panel{padding:8px;min-width:200px}.cvn-duration-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:3px}.cvn-duration-btn{padding:5px 4px;border-radius:6px;border:none;background:transparent;color:var(--canvas-color-text-icon);font-size:12px;font-weight:500;cursor:pointer;transition:background .12s,color .12s;text-align:center}.cvn-duration-btn:hover{background:var(--canvas-color-bg-subtle);color:var(--canvas-color-text-secondary)}.cvn-duration-btn.active{background:var(--canvas-color-border-strong);color:var(--canvas-color-text-primary);font-weight:600}.canvas-video-frames-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border-bottom:1px solid var(--canvas-color-bg-subtle)}.canvas-video-frames-arrow{flex-shrink:0;color:var(--canvas-color-text-muted);display:flex;align-items:center}.canvas-video-frame-slot{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px}.canvas-video-frame-label{font-size:10px;color:var(--canvas-color-text-muted);font-weight:500}.canvas-video-frame-preview{width:80px;height:60px;border-radius:6px;overflow:hidden;position:relative;border:1px solid var(--canvas-color-bg-active)}.canvas-video-frame-preview img{width:100%;height:100%;object-fit:cover}.canvas-video-frame-clear{position:absolute;top:2px;right:2px;width:18px;height:18px;border-radius:50%;background:var(--canvas-color-minimap-mask);border:none;color:var(--canvas-color-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.canvas-video-frame-preview:hover .canvas-video-frame-clear{opacity:1}.canvas-video-frame-upload{width:80px;height:60px;border-radius:6px;border:1.5px dashed var(--canvas-color-border-focus);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;color:var(--canvas-color-text-muted);transition:border-color .15s,color .15s}.canvas-video-frame-upload:hover{border-color:#6366f166;color:#6366f1b3}[data-theme=light] .canvas-video-frame-upload{border-color:var(--color-neutral-border-1);color:var(--color-neutral-text-regular)}[data-theme=light] .canvas-video-frame-upload:hover{border-color:var(--color-neutral-text-placeholder);color:var(--color-neutral-text-primary)}.canvas-video-ref-grid{display:flex;flex-wrap:wrap;gap:6px;padding:8px 10px;border-bottom:1px solid var(--canvas-color-bg-subtle)}.canvas-video-ref-thumb{width:52px;height:52px;border-radius:6px;overflow:hidden;position:relative;border:1px solid var(--canvas-color-bg-active)}.canvas-video-ref-thumb img{width:100%;height:100%;object-fit:cover}.canvas-video-ref-remove{position:absolute;top:1px;right:1px;width:16px;height:16px;border-radius:50%;background:#000000a6;border:none;color:var(--canvas-color-text-tertiary);cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s}.canvas-video-ref-thumb:hover .canvas-video-ref-remove{opacity:1}.canvas-video-ref-add{width:52px;height:52px;border-radius:6px;border:1.5px dashed var(--canvas-color-border-focus);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;color:var(--canvas-color-text-muted);font-size:9px;transition:border-color .15s,color .15s}.canvas-video-ref-add:hover{border-color:#6366f166;color:#6366f1b3}.canvas-voice-gen-wrapper .canvas-node-gen{min-width:240px}.canvas-params-res-row--wrap{flex-wrap:wrap}.canvas-params-res-btn--compact{flex:0 1 auto;min-width:52px;padding:6px 8px}.canvas-params-res-btn:disabled{opacity:.35;cursor:not-allowed}.canvas-audio-setting-hint{margin:0 0 6px;font-size:10px;line-height:1.4;color:var(--canvas-color-text-disabled)}.canvas-voice-settings-panel{min-width:240px;gap:4px}.canvas-audio-settings-panel{min-width:320px}.canvas-voice-chip-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.canvas-voice-chip{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;border:1px solid var(--canvas-color-border-default);border-radius:8px;background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-secondary);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.canvas-voice-chip:hover{border-color:var(--canvas-color-bg-active);background:var(--canvas-color-border-subtle)}.canvas-voice-chip.active{border-color:var(--canvas-color-state-success);background:var(--canvas-color-state-success-bg);color:var(--canvas-color-text-primary)}.canvas-voice-chip-label{font-size:12px;font-weight:600}.canvas-voice-chip-meta{font-size:10px;color:var(--canvas-color-text-muted)}.canvas-voice-chip.active .canvas-voice-chip-meta{color:var(--canvas-color-text-tertiary)}.canvas-voice-slider-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.canvas-voice-slider-inline{display:flex;align-items:center;gap:12px;min-height:30px}.canvas-voice-slider-name{flex-shrink:0;width:40px;font-size:14px;color:var(--canvas-color-text-secondary)}.canvas-audio-settings-panel .canvas-voice-slider-name{width:auto;white-space:nowrap}.canvas-voice-slider-value{font-size:11px;color:var(--canvas-color-text-tertiary);font-weight:600}.canvas-voice-slider-inline .canvas-voice-slider-value{flex-shrink:0;min-width:44px;text-align:right;font-size:14px;font-variant-numeric:tabular-nums}.canvas-voice-slider-wrap{display:flex;align-items:center;gap:8px}.canvas-voice-slider-bound{flex-shrink:0;width:36px;font-size:10px;color:var(--canvas-color-text-subtle);text-align:center}input[type=range].canvas-voice-slider{flex:1;height:14px;min-height:14px;margin:0;padding:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;background:transparent;box-shadow:none;outline:none;cursor:pointer}input[type=range].canvas-voice-slider::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(to right,var(--canvas-color-state-success) var(--voice-slider-pct, 50%),var(--canvas-color-voice-slider-track) var(--voice-slider-pct, 50%),var(--canvas-color-voice-slider-track) 100%)}input[type=range].canvas-voice-slider::-moz-range-track{height:4px;border-radius:999px;background:var(--canvas-color-voice-slider-track)}input[type=range].canvas-voice-slider::-moz-range-progress{height:4px;border-radius:999px;background:var(--canvas-color-state-success)}input[type=range].canvas-voice-slider::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;margin-top:-5px;border-radius:50%;background:var(--canvas-color-text-primary);box-shadow:0 1px 4px var(--canvas-color-bg-inset)}input[type=range].canvas-voice-slider::-moz-range-thumb{width:14px;height:14px;border:none;border-radius:50%;background:var(--canvas-color-text-primary);box-shadow:0 1px 4px var(--canvas-color-bg-inset)}.canvas-voice-emotion-row{flex-wrap:wrap}.canvas-voice-emotion-row .canvas-params-res-btn{flex:1 1 auto;min-width:52px}.canvas-voice-settings-panel .canvas-voice-slider-title{margin-bottom:6px}.canvas-voice-settings-panel .canvas-voice-slider-title>span:first-child{font-size:14px;color:var(--canvas-color-text-secondary)}.canvas-voice-emotion-select{flex:1;min-width:0}.canvas-voice-emotion-select .app-select-trigger{height:36px;font-size:14px;background:var(--canvas-color-bg-faint)}.canvas-voice-emotion-select .app-select-trigger:focus-visible,.canvas-voice-emotion-select .app-select-trigger.is-open{border-color:#4caf5073;box-shadow:0 0 0 2px var(--canvas-color-state-success-ring)}.canvas-voice-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.canvas-voice-toggle-label{margin-bottom:2px}.canvas-voice-toggle-hint{font-size:10px;line-height:1.4;color:var(--canvas-color-text-disabled)}.canvas-voice-tune-btn{flex:0 0 100%;position:relative;z-index:4;width:100%;padding:4px 8px;box-sizing:border-box;border:1px solid var(--canvas-color-border-strong);border-radius:6px;background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-icon);font-size:11px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.canvas-voice-settings-row{position:relative;z-index:3;flex-wrap:wrap}.canvas-voice-settings-actions{display:contents}.canvas-voice-settings-actions .canvas-node-gen-value{flex:1 1 0;justify-content:flex-end;min-width:0;max-width:none;overflow:hidden;text-overflow:ellipsis}.canvas-node-gen-summary{flex:1 1 0;min-width:0;padding:2px 0;font-size:12px;font-weight:500;color:var(--canvas-color-text-secondary);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.canvas-voice-tune-btn:hover{border-color:#4caf5066;background:#4caf5014;color:var(--canvas-color-text-primary)}.canvas-voice-library-btn{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;width:100%;margin-bottom:10px;padding:10px 12px;border:1px solid rgba(76,175,80,.35);border-radius:10px;background:#4caf501a;color:var(--canvas-color-text-primary);text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.canvas-voice-library-btn:hover{background:#4caf5029;border-color:#4caf508c}.canvas-voice-library-btn-meta{flex:1;min-width:0;font-size:12px;color:var(--canvas-color-text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-voice-library-btn-action{flex-shrink:0;font-size:13px;font-weight:600;color:#8ee59a}.canvas-voice-picker-header{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.canvas-voice-picker-header .canvas-params-title{margin-bottom:0}.canvas-voice-expand-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--canvas-color-bg-active);border-radius:8px;background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-tertiary);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.canvas-voice-expand-btn:hover{border-color:#4caf5066;background:#4caf501a;color:var(--canvas-color-text-primary)}.canvas-voice-cascade-row{display:flex;gap:8px;margin-bottom:10px}.canvas-voice-cascade-field{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.canvas-voice-cascade-label{font-size:10px;color:var(--canvas-color-text-icon-muted)}.canvas-voice-cascade-select{width:100%;height:30px;padding:0 8px;border:1px solid var(--canvas-color-bg-active);border-radius:8px;background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-secondary);font-size:12px;outline:none;cursor:pointer}.canvas-voice-cascade-select:focus{border-color:#4caf5073}.canvas-voice-cascade-select option{background:#2a2a2a;color:var(--canvas-color-text-primary)}.canvas-voice-chip-grid-compact{max-height:180px;overflow:auto}.canvas-voice-more-btn{display:block;width:100%;margin-top:8px;padding:8px 10px;border:1px dashed var(--canvas-color-border-default);border-radius:8px;background:transparent;color:var(--canvas-color-text-icon);font-size:12px;cursor:pointer;transition:border-color .15s,color .15s,background .15s}.canvas-voice-more-btn:hover{border-color:#4caf5059;background:#4caf500f;color:var(--canvas-color-text-primary)}.voice-toolbar-panel-inner{padding:4px 0}.voice-toolbar-panel-inner .canvas-params-panel{position:static;box-shadow:none;border:none;background:transparent;min-width:280px}.voice-toolbar-tag-symbol{font-family:ui-monospace,monospace;opacity:.75;margin-right:2px}.vtb-model-list .vtb-model-item .canvas-gen-model-icon{width:40px;height:40px;border-radius:10px;margin-right:0}.vtb-model-list .vtb-model-item .canvas-gen-model-icon svg{width:62%;height:62%}.vtb-model-list .vtb-model-item .canvas-gen-model-icon img{width:78%;height:78%}.voice-toolbar-preset-row{display:flex;flex-wrap:wrap;gap:6px}.voice-toolbar-preset-item{padding:6px 12px;border-radius:8px;border:1px solid var(--canvas-color-border-default);background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-secondary);font-size:13px;cursor:pointer}.voice-toolbar-preset-item:hover{background:var(--canvas-color-accent-purple-soft);border-color:var(--canvas-color-accent-purple)}.voice-toolbar-prosody-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:200px;overflow-y:auto}.voice-toolbar-prosody-item{padding:6px 4px;border-radius:8px;border:1px solid var(--canvas-color-border-subtle);background:var(--canvas-color-bg-faint);color:var(--canvas-color-text-tertiary);font-size:12px;cursor:pointer}.voice-toolbar-prosody-item:hover{background:var(--canvas-color-accent-purple-soft);border-color:var(--canvas-color-accent-purple)}.app-toast{position:fixed;top:80px;left:50%;transform:translate(-50%);z-index:3000;display:flex;align-items:center;gap:10px;max-width:min(92vw,520px);padding:10px 12px 10px 16px;border-radius:999px;color:#fff;font-size:13px;line-height:1.45;pointer-events:auto;box-shadow:0 10px 28px #00000038;animation:app-toast-in .2s ease-out}.app-toast--success{background:#227850fa;border:1px solid rgba(120,200,160,.35)}.app-toast--error{background:#9b3737fa;border:1px solid rgba(220,130,130,.4)}.app-toast--info{background:#25638cfa;border:1px solid rgba(120,180,220,.4)}.app-toast--warning{background:#a55f1cfa;border:1px solid rgba(230,170,90,.45)}.app-toast__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:22px;height:22px;color:#fff}.app-toast__icon-svg{display:block;width:20px;height:20px}.app-toast__message{flex:1;min-width:0;text-align:left}.app-toast__close{flex-shrink:0;display:flex;align-items:center;justify-content:center;margin-left:4px;padding:6px;border:none;border-radius:999px;background:transparent;color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));cursor:pointer;opacity:.85;transition:opacity .15s ease,background .15s ease}.app-toast__close:hover{opacity:1;background:var(--canvas-color-border-strong, rgba(255, 255, 255, .12))}.app-toast__close:focus-visible{outline:2px solid var(--canvas-color-text-tertiary, rgba(255, 255, 255, .72));outline-offset:1px}@keyframes app-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.app-toast.app-toast--embedded{position:absolute;top:4px;left:50%;transform:translate(-50%)}.app-toast.app-toast--embedded.canvas-toast--connect{top:48px}.app-toast.app-toast--embedded.canvas-toast--media{top:16px;max-width:min(90vw,480px)}.app-toast.app-toast--embedded.canvas-toast--media .app-toast__message{text-align:center}.app-toast.app-toast--login{position:absolute;top:-52px;left:50%;transform:translate(-50%);z-index:10;max-width:min(90vw,400px);animation:login-app-toast-in .3s ease-out}@keyframes login-app-toast-in{0%{opacity:0;transform:translate(-50%) translateY(-10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.home-voice-input{flex:1;width:100%;min-width:0}.home-voice-editor-wrap{width:100%}.home-voice-editor{min-height:80px;max-height:200px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.home-voice-editor:empty:before{content:attr(data-placeholder);color:#ffffff40;pointer-events:none}.home-voice-editor .canvas-voice-prosody-mark,.home-voice-editor .canvas-voice-pause-mark{display:inline-flex;align-items:center;padding:0 4px;margin:0 1px;border-radius:4px;background:#a855f733;border:1px solid rgba(168,85,247,.35);color:#ffffffe6;font-size:12px;vertical-align:baseline}.miu-root{position:relative;display:inline-flex;align-items:center;padding:0;border-radius:10px;transition:background .25s ease}.miu-root.miu-expanded{background:#ffffff0a}.miu-cards{display:flex;align-items:center;transition:gap .35s cubic-bezier(.4,0,.2,1);gap:0}.miu-expanded .miu-cards{gap:10px}.miu-card{flex-shrink:0;position:relative;transition:transform .35s cubic-bezier(.4,0,.2,1),margin .35s cubic-bezier(.4,0,.2,1)}.miu-expanded .miu-card{transform:rotate(0)!important;margin-left:0!important}.miu-frame{width:48px;height:64px;border:2px solid rgba(255,255,255,.82);border-radius:4px;overflow:hidden;background:#ffffff0f;box-shadow:0 2px 10px #00000059;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.miu-frame img{width:100%;height:100%;object-fit:cover;display:block}.miu-frame-video{border-color:#60a5fa99}.miu-frame-audio{border-color:#fbbf2480}.miu-video-thumb{width:100%;height:100%;object-fit:cover;display:block}.miu-type-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.miu-overlay-video{background:#0000004d;color:#ffffffe6}.miu-overlay-audio{background:#1e1e28f2;color:#ffffff8c}.miu-badge{position:absolute;bottom:2px;left:50%;transform:translate(-50%);font-size:8px;font-weight:600;padding:0 1px;border-radius:3px;line-height:14px;z-index:3;pointer-events:none}.miu-badge-image{background:#4ade80d9;color:#064e3b}.miu-badge-video{background:#60a5fad9;color:#1e3a5f}.miu-badge-audio{background:#fbbf24d9;color:#78350f}.miu-role-tag{position:absolute;top:2px;right:2px;font-size:7px;font-weight:600;padding:0 3px;border-radius:2px;line-height:12px;z-index:3;pointer-events:none;background:#c084fce6;color:#fff}.miu-remove{position:absolute;top:-7px;right:-7px;width:18px;height:18px;border-radius:50%;background:#1e1e23eb;border:1px solid rgba(255,255,255,.2);color:#ffffffb3;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .15s,color .15s;padding:0}.miu-remove:hover{background:#dc2626d9;color:#fff}.miu-close-all{position:absolute;top:-6px;left:-6px;width:22px;height:22px;border-radius:50%;background:#1e1e23f2;border:1px solid rgba(255,255,255,.2);color:#ffffffa6;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;padding:0;transition:background .15s,color .15s}.miu-close-all:hover{background:#dc2626d9;color:#fff}.miu-frame-add{cursor:pointer;border-style:dashed;border-color:#ffffff40;background:#ffffff08;transition:border-color .15s,background .15s;gap:4px}.miu-frame-add:hover{border-color:#ffffff73;background:#ffffff14}.miu-add-icon{font-size:22px;font-weight:300;color:#ffffff73;line-height:1}.miu-add-text{font-size:10px;color:#ffffff59;white-space:nowrap}.miu-card-add-stacked .miu-frame-add{width:32px;height:32px;border-radius:50%;border-width:1.5px}.miu-card-add-stacked .miu-add-icon{font-size:18px}.miu-card-add-stacked .miu-add-text{display:none}.miu-card-clickable{cursor:pointer}.miu-card-clickable .miu-frame{transition:border-color .15s ease,box-shadow .15s ease}.miu-card-clickable:hover .miu-frame{border-color:#8b5cf6b3;box-shadow:0 2px 12px #8b5cf640}.miu-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:9999;animation:miu-fade-in .15s ease}@keyframes miu-fade-in{0%{opacity:0}to{opacity:1}}.miu-preview-close{position:absolute;top:20px;right:20px;background:#ffffff1a;border:none;color:#ccc;cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.miu-preview-close:hover{background:#fff3;color:#fff;transform:scale(1.1)}.miu-preview-content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.miu-preview-media{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 8px 40px #00000080}.miu-preview-audio{display:flex;flex-direction:column;align-items:center;gap:16px;padding:40px 48px;background:#282832f2;border-radius:16px;box-shadow:0 8px 40px #00000080}.miu-preview-audio-icon{color:#fbbf24b3}.miu-preview-audio-name{font-size:14px;color:#ccc;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.miu-preview-audio audio{width:320px;height:40px}[data-theme=light] .miu-root.miu-expanded{background:var(--color-neutral-border-4)}[data-theme=light] .miu-frame{border-color:var(--color-neutral-border-1);background:var(--color-neutral-white);box-shadow:0 1px 4px #00000014}[data-theme=light] .miu-frame-add{border-color:var(--color-neutral-border-1);background:var(--color-neutral-white)}[data-theme=light] .miu-frame-add:hover{border-color:var(--color-neutral-text-placeholder);background:var(--color-neutral-border-4)}[data-theme=light] .miu-add-icon,[data-theme=light] .miu-add-text{color:var(--color-neutral-text-regular)}[data-theme=light] .miu-frame-add:hover .miu-add-icon,[data-theme=light] .miu-frame-add:hover .miu-add-text{color:var(--color-neutral-text-primary)}.mention-input-root{position:relative;flex:1;width:100%;min-width:0}.mention-input-editor{outline:none;white-space:pre-wrap;word-break:break-word;overflow-y:auto;font-family:CapCut Sans,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif}.mention-input-editor:empty:before{content:""}.mention-input-placeholder{position:absolute;top:0;left:0;color:#ffffff40;font-size:14px;pointer-events:none;-webkit-user-select:none;user-select:none}.mention-chip{display:inline-flex;align-items:center;gap:4px;background:#ffffff1a;border-radius:6px;padding:2px 8px 2px 4px;margin:0 2px;vertical-align:middle;cursor:default;position:relative;-webkit-user-select:none;user-select:none;line-height:1.4}.mention-chip-thumb{transition:all .3s ease;width:20px;height:20px;border-radius:4px;object-fit:cover;flex-shrink:0}.mention-chip-thumb--hover{position:fixed;top:var(--mention-chip-thumb-hover-top);left:var(--mention-chip-thumb-hover-left);z-index:10000;width:128px;height:128px;border-radius:10px;box-shadow:0 12px 32px #0000008c;pointer-events:none;transform-origin:bottom center;animation:mention-chip-thumb-hover-in .14s ease-out;overflow:hidden}.mention-chip-thumb--hover img{display:block;width:100%;height:100%;border-radius:10px;object-fit:cover}@keyframes mention-chip-thumb-hover-in{0%{opacity:0;transform:translateY(6px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.mention-chip-audio-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:4px;background:#8b5cf64d;color:#ffffffb3;font-size:12px;flex-shrink:0}.mention-chip-label{font-size:13px;color:#ffffffd9;white-space:nowrap}.mention-dropdown{position:absolute;bottom:calc(100% + 8px);left:0;min-width:240px;max-width:320px;background:var(--color-bg-panel);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--color-border-strong);border-radius:12px;padding:8px 0;z-index:100;box-shadow:0 8px 32px var(--color-shadow-strong);max-height:340px;overflow-y:auto}.mention-dd-header{display:flex;align-items:center;gap:6px;padding:6px 14px 8px;border-bottom:1px solid var(--color-border-subtle);margin-bottom:4px}.mention-dd-at{color:var(--color-text-muted);font-size:15px;font-weight:500}.mention-dd-hint{color:var(--color-text-subtle);font-size:13px}.mention-dd-item{display:flex;align-items:center;gap:10px;padding:8px 14px;cursor:pointer;transition:background .15s}.mention-dd-item-active{background:var(--color-bg-hover)}.mention-dd-label{font-size:14px;color:var(--color-text-secondary);white-space:nowrap}.mention-dd-thumb{width:40px;height:40px;border-radius:8px;object-fit:cover;flex-shrink:0}.mention-dd-thumb-wrap{position:relative;width:40px;height:40px;flex-shrink:0}.mention-dd-thumb-wrap video{width:100%;height:100%;border-radius:8px;object-fit:cover}.mention-dd-duration{position:absolute;bottom:2px;left:2px;background:#0009;border-radius:3px;padding:0 4px;font-size:10px;color:#fff;line-height:1.6}.mention-dd-audio-icon{display:flex;align-items:center;justify-content:center;background:#8b5cf640;color:#fff9}.typewriter-reveal--typing>:last-child:after{content:"▍";color:var(--typewriter-cursor-color, currentColor);margin-left:1px;animation:typewriter-reveal-cursor-blink .6s steps(2) infinite}@keyframes typewriter-reveal-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.typewriter-placeholder{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-start;gap:0;padding:0;margin:0;pointer-events:none;overflow:hidden;color:var(--typewriter-placeholder-color, rgba(0, 0, 0, .35));font:inherit;line-height:inherit;white-space:pre-wrap;word-break:break-word}.typewriter-placeholder__text{flex:0 1 auto;min-width:0}.typewriter-placeholder__cursor{flex:0 0 auto;width:1px;height:1.1em;margin-left:1px;margin-top:.15em;background:currentColor;opacity:.55;animation:typewriter-placeholder-cursor-blink .85s steps(2) infinite}@keyframes typewriter-placeholder-cursor-blink{0%,to{opacity:.55}50%{opacity:0}}.cycling-text{display:block;margin:0 0 50px}.cycling-text__stage{position:relative;display:inline-grid;place-items:center;min-height:1.2em}.cycling-text__item{grid-area:1 / 1;display:inline-block;text-align:center}.cycling-text__item--leave{animation:cycling-text-leave .85s cubic-bezier(.4,0,.2,1) forwards;pointer-events:none}.cycling-text__item--enter{animation:cycling-text-enter .85s cubic-bezier(.22,1,.36,1) forwards}@keyframes cycling-text-enter{0%{opacity:0;transform:translateY(12px);filter:blur(5px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@keyframes cycling-text-leave{0%{opacity:1;transform:translateY(0);filter:blur(0)}to{opacity:0;transform:translateY(-10px);filter:blur(4px)}}.recharge-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-modal-overlay-heavy);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.recharge-modal-content{background:var(--color-modal-bg-elevated);border:1px solid var(--color-modal-border);border-radius:24px;width:92%;max-width:720px;padding:40px 48px;position:relative;box-shadow:var(--color-modal-shadow);animation:slideUp .3s cubic-bezier(.16,1,.3,1)}.recharge-modal-close{position:absolute;top:24px;right:24px;background:var(--color-bg-subtle);border:1px solid var(--color-modal-input-border);color:var(--color-text-icon);cursor:pointer;padding:8px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .25s ease}.recharge-modal-close:hover{color:var(--color-text-primary);background:var(--color-bg-hover);transform:rotate(90deg)}.recharge-modal-close svg{width:20px;height:20px}.recharge-modal-title{font-size:24px;font-weight:600;color:var(--color-text-primary);margin:0 0 24px;text-align:center}.recharge-tabs{display:flex;background:var(--color-modal-tab-track);border-radius:12px;padding:4px;margin-bottom:28px}.recharge-tab{flex:1;padding:12px 0;background:transparent;border:none;border-radius:10px;color:var(--color-modal-text-muted);font-size:15px;font-weight:600;cursor:pointer;transition:all .25s ease}.recharge-tab:hover{color:var(--color-text-secondary)}.recharge-tab-active{background:var(--color-modal-tab-active-bg);color:var(--color-text-primary);box-shadow:0 2px 8px var(--color-shadow)}.recharge-modal-body{display:flex;flex-direction:column;gap:20px}.recharge-amount-section{display:flex;flex-direction:column;gap:16px}.recharge-amount-label{font-size:15px;color:var(--color-text-icon)}.recharge-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.recharge-preset-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px 24px;min-height:130px;background:var(--color-modal-preset-bg);border:1px solid var(--color-modal-border);border-radius:16px;color:var(--color-text-primary);cursor:pointer;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease;position:relative;overflow:hidden;text-align:center}.recharge-preset-card-active{background:var(--color-modal-preset-bg-active);border-color:var(--color-modal-preset-active-border);box-shadow:var(--color-modal-preset-active-shadow)}.recharge-preset-card:disabled{opacity:.5;cursor:not-allowed}.recharge-preset-credit{display:flex;align-items:center;justify-content:center;gap:6px;font-size:16px;font-weight:500;color:var(--color-modal-accent-credit);white-space:nowrap}.recharge-preset-credit-icon{flex-shrink:0}.recharge-preset-price{display:flex;align-items:baseline;justify-content:center;gap:2px;color:var(--color-text-primary)}.recharge-preset-currency{font-size:22px;font-weight:600;color:var(--color-text-secondary)}.recharge-preset-amount{font-size:38px;font-weight:700;line-height:1;letter-spacing:-.5px}.recharge-preset-bonus-badge{position:absolute;top:0;right:0;padding:4px 10px 4px 12px;background:linear-gradient(135deg,#5eead4,#14b8a6);color:#0b1e1c;font-size:12px;font-weight:700;letter-spacing:.2px;border-bottom-left-radius:12px;border-top-right-radius:16px;box-shadow:0 2px 6px #5eead440;pointer-events:none}.recharge-custom-bonus{font-size:13px;color:var(--color-modal-text);padding:10px 14px;background:#5eead40f;border:1px solid rgba(94,234,212,.2);border-radius:10px;line-height:1.5}.recharge-custom-bonus strong{color:var(--color-modal-accent-credit);font-weight:700}.recharge-custom-amount{display:flex;flex-direction:column;gap:10px;margin-top:4px}.recharge-amount-input-wrapper{display:inline-flex;align-items:center;align-self:flex-start;width:240px;max-width:100%;padding:0 16px;background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:var(--color-input-radius, 4px);transition:border-color .15s ease,box-shadow .15s ease}.recharge-amount-input-wrapper:focus-within{border-color:var(--color-input-border-focus);box-shadow:var(--color-input-focus-shadow)}.recharge-amount-prefix{font-size:20px;font-weight:600;line-height:1;color:var(--color-input-placeholder);margin-right:8px}.recharge-amount-input{flex:1;min-width:0;color:var(--color-input-text);font-size:20px;font-weight:600;line-height:1;padding:14px 0;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.recharge-amount-input::placeholder{color:var(--color-input-placeholder);font-size:inherit;font-weight:inherit}.recharge-amount-input::-webkit-outer-spin-button,.recharge-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.recharge-amount-hint{font-size:13px;color:var(--color-modal-text-muted);text-align:left;line-height:1.6}.recharge-agreement-link{color:#60a5fad9;text-decoration:none;transition:color .15s ease}.recharge-agreement-link:hover{color:#60a5fa;text-decoration:underline}.recharge-error{font-size:13px;color:#ef4444;text-align:center}.recharge-pay-button{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;padding:18px;background:linear-gradient(135deg,#1677ff,#0050b3);border:1px solid var(--color-modal-border);border-radius:14px;color:var(--color-text-primary);font-size:18px;font-weight:600;letter-spacing:.5px;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1);box-shadow:0 4px 12px #1677ff4d}.recharge-pay-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 24px #1677ff66;background:linear-gradient(135deg,#3c8dff,#1677ff)}.recharge-pay-button:disabled{opacity:.5;cursor:not-allowed}.recharge-alipay-icon{width:32px;height:32px}.recharge-loading{display:flex;align-items:center;gap:8px}.recharge-child-notice{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px 16px 8px;text-align:center}.recharge-child-notice-icon svg{width:56px;height:56px;color:#f59e0b;opacity:.9}.recharge-child-notice-title{font-size:20px;font-weight:600;color:var(--color-text-primary)}.recharge-child-notice-desc{font-size:14px;line-height:1.7;color:var(--color-text-icon)}.recharge-child-notice-desc strong{color:var(--color-modal-accent-credit);font-weight:600}.recharge-child-notice-button{margin-top:8px;width:100%;padding:14px;background:var(--color-modal-secondary-btn-bg);border:1px solid var(--color-modal-secondary-btn-border);border-radius:12px;color:var(--color-text-secondary);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.recharge-child-notice-button:hover{background:var(--color-bg-active);border-color:var(--color-modal-surface-border-hover);color:var(--color-text-primary)}.recharge-waiting{display:flex;flex-direction:column;align-items:center;gap:16px;padding:8px 0}.recharge-waiting-icon svg{width:48px;height:48px;color:#f59e0b;animation:pulse 2s infinite}.recharge-waiting-text{font-size:18px;font-weight:600;color:var(--color-text-primary)}.recharge-waiting-hint{font-size:14px;color:var(--color-modal-text-muted);text-align:center}.recharge-waiting-order{font-size:12px;color:var(--color-modal-text-muted);font-family:monospace}.recharge-check-button{width:100%;padding:12px;background:linear-gradient(135deg,#1677ff,#0958d9);border:none;border-radius:12px;color:var(--color-text-primary);font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.recharge-check-button:hover{transform:translateY(-1px);box-shadow:0 4px 16px #1677ff66}.recharge-cancel-button{background:transparent;border:1px solid var(--color-modal-secondary-btn-border);border-radius:12px;color:var(--color-text-icon);padding:10px;width:100%;font-size:14px;cursor:pointer;transition:all .2s}.recharge-cancel-button:hover{border-color:var(--color-modal-surface-border-hover);color:var(--color-text-primary)}.recharge-success{display:flex;flex-direction:column;align-items:center;gap:16px;padding:8px 0}.recharge-success-icon svg{width:56px;height:56px;color:#10b981}.recharge-success-text{font-size:20px;font-weight:600;color:#10b981}.recharge-success-hint{font-size:14px;color:var(--color-modal-text-muted)}.recharge-done-button{width:100%;padding:12px;background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:12px;color:#10b981;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s}.recharge-done-button:hover{background:#10b98140}.recharge-qrcode-wrapper{display:flex;justify-content:center;gap:20px}.recharge-qrcode-item{display:flex;flex-direction:column;align-items:center;gap:8px}.recharge-qrcode-placeholder{width:140px;height:140px;background:var(--color-bg-subtle);border:1px dashed var(--color-modal-upload-border);border-radius:12px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-modal-text-muted);gap:12px}.recharge-qrcode-placeholder svg{width:48px;height:48px;opacity:.5}.recharge-qrcode-placeholder span{font-size:13px}.recharge-qrcode-image{width:140px;height:140px;border-radius:12px;object-fit:contain;background:#fff;padding:4px;cursor:pointer;transition:transform .15s ease}.recharge-qrcode-image:hover{transform:scale(1.05)}.recharge-qrcode-label{font-size:13px;color:var(--color-modal-text-muted)}.recharge-info{background:var(--color-modal-tab-track);border:1px solid var(--color-modal-border);border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px}.recharge-info-item{display:flex;align-items:flex-start;font-size:15px;line-height:1.6}.recharge-info-label{color:var(--color-modal-text-muted);min-width:70px;flex-shrink:0}.recharge-info-value{color:var(--color-text-primary);word-break:break-all}.recharge-info-highlight{margin-top:4px;padding-top:12px;border-top:1px dashed var(--color-modal-border)}.recharge-info-highlight .recharge-info-value{color:var(--color-modal-accent-credit);font-weight:500}.recharge-info-tip{margin-top:8px;font-size:12px;color:#ef4444;text-align:center}.recharge-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-modal-lightbox-overlay);display:flex;align-items:center;justify-content:center;z-index:1100;cursor:zoom-out;animation:fadeIn .2s ease-out}.recharge-preview-image{max-width:90vw;max-height:90vh;border-radius:12px;background:#fff;padding:8px;box-shadow:0 20px 60px #0009;animation:scaleIn .25s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.auth-manager{display:flex;flex-direction:column;gap:16px}.auth-manager-empty{padding:32px 16px;text-align:center;color:#ffffff8c;font-size:14px}.auth-manager-intro{margin:0;color:#ffffffa6;font-size:13px;line-height:1.6}.auth-manager-error{padding:10px 12px;background:#ef44441f;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:13px}.auth-manager-list{display:flex;flex-direction:column;gap:12px}.auth-row{display:flex;align-items:center;gap:16px;padding:16px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px}.auth-row-text{flex:1;min-width:0}.auth-row-title{display:flex;align-items:center;gap:8px;color:#fff;font-size:14px;font-weight:500}.auth-row-saving{font-size:12px;color:#6366f1d9;font-weight:400}.auth-row-subtitle{margin-top:4px;color:#ffffff8c;font-size:12px;line-height:1.5}.auth-row-loading{width:14px;height:14px;border:2px solid rgba(255,255,255,.2);border-top-color:#ffffffb3;border-radius:50%;animation:auth-row-spin .8s linear infinite}@keyframes auth-row-spin{to{transform:rotate(360deg)}}[data-theme=light] .auth-manager-empty{color:#00000080}[data-theme=light] .auth-manager-intro{color:#0009}[data-theme=light] .auth-manager-error{color:#dc2626}[data-theme=light] .auth-row{background:#00000005;border-color:#00000014}[data-theme=light] .auth-row-title{color:#111}[data-theme=light] .auth-row-subtitle{color:#00000080}[data-theme=light] .auth-row-loading{border-color:#00000026;border-top-color:#0009}.child-manager{width:100%}.child-add-btn{width:100%;padding:16px;border:1px dashed rgba(255,255,255,.15);border-radius:16px;background:#ffffff05;color:#fff9;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;margin-bottom:24px;display:flex;align-items:center;justify-content:center;gap:8px}.child-add-btn:hover{border-color:#ffffff4d;color:#fff;background:#ffffff0d}.child-add-form{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;margin-bottom:24px}.child-add-form-title{font-size:16px;font-weight:600;color:#fff;margin-bottom:20px}.child-add-row{display:flex;gap:12px;margin-bottom:16px}.child-input{flex:1;padding:12px 16px;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#0003;color:#fff;font-size:14px;outline:none;transition:all .2s}.child-input:focus{border-color:#5eead4;background:#0006}.child-input::placeholder{color:#ffffff4d}.child-send-code-btn{padding:0 20px;border:1px solid rgba(94,234,212,.3);border-radius:12px;background:#5eead40d;color:#5eead4;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s}.child-send-code-btn:hover:not(:disabled){background:#5eead426;border-color:#5eead480}.child-send-code-btn:disabled{opacity:.5;cursor:not-allowed;border-color:#ffffff1a;color:#ffffff80;background:#ffffff0d}.child-add-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:24px}.child-cancel-btn{padding:10px 24px;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:transparent;color:#fff9;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.child-cancel-btn:hover{color:#fff;background:#ffffff0d}.child-confirm-btn{padding:10px 24px;border:none;border-radius:10px;background:#5eead4;color:#000;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.child-confirm-btn:hover:not(:disabled){background:#2dd4bf;transform:translateY(-1px)}.child-confirm-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.child-empty{text-align:center;color:#fff6;font-size:14px;padding:48px 0;background:#ffffff05;border-radius:16px;border:1px dashed rgba(255,255,255,.08)}.child-table{display:flex;flex-direction:column;min-width:100%}.child-table-header,.child-table-row{display:grid;grid-template-columns:minmax(260px,2.2fr) 110px minmax(100px,.9fr) 180px 100px 80px;align-items:center;gap:16px;padding:14px 4px}.child-table-header{font-size:13px;color:#ffffff73;font-weight:500;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:12px;margin-bottom:4px}.child-table-row{border-bottom:1px solid rgba(255,255,255,.04);font-size:14px;color:#ffffffd9;transition:background .15s}.child-table-row:hover{background:#ffffff06}.child-table-row:last-child{border-bottom:none}.child-col-name{color:#fff;font-weight:500;min-width:0;display:flex;align-items:center;gap:6px}.child-name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.child-name-alias{margin-left:2px;color:#ffffff80;font-weight:400;font-size:13px}.child-alias-edit-btn{flex-shrink:0;width:22px;height:22px;padding:0;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:#ffffff59;border-radius:4px;cursor:pointer;transition:color .15s,background .15s}.child-alias-edit-btn:hover{color:#fff;background:#ffffff14}.child-alias-edit{display:flex;align-items:center;gap:4px;width:100%;min-width:0}.child-alias-edit-prefix{flex-shrink:0;color:#fff;font-weight:500;font-size:14px;max-width:40%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.child-alias-input{flex:1;min-width:0;height:26px;padding:0 8px;border:1px solid rgba(94,234,212,.45);border-radius:5px;background:#00000059;color:#fff;font-size:13px;outline:none;transition:border-color .15s,box-shadow .15s}.child-alias-input:focus{border-color:#5eead4bf;box-shadow:0 0 0 2px #5eead42e}.child-alias-input::placeholder{color:#ffffff4d}.child-col-time{font-size:13px;color:#ffffff8c;font-family:monospace}.child-col-used{font-family:monospace;font-weight:500;color:#86efac}.child-col-used.quota-over{color:#fca5a5}.child-col-quota{font-family:monospace;min-width:0}.child-col-toggle{display:flex;align-items:center}.child-col-actions{display:flex;align-items:center;justify-content:flex-start;flex-wrap:nowrap}.child-action-link{display:inline-flex;align-items:center;gap:4px;padding:0;background:transparent;border:none;color:#ffffffa6;font-size:13px;cursor:pointer;transition:color .15s;white-space:nowrap}.child-action-link:hover{color:#fff}.child-action-link.danger:hover{color:#f87171}.child-action-link svg{flex-shrink:0}.child-summary-realname{font-size:12px;color:#ffffff73;font-weight:400;margin-left:4px}.quota-switch{position:relative;display:inline-block;width:36px;height:20px;cursor:pointer}.quota-switch input{opacity:0;width:0;height:0;position:absolute}.quota-switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffff1f;border-radius:999px;transition:background .2s}.quota-switch-slider:before{content:"";position:absolute;height:14px;width:14px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .2s;box-shadow:0 1px 3px #00000040}.quota-switch input:checked+.quota-switch-slider{background:#6366f1}.quota-switch input:checked+.quota-switch-slider:before{transform:translate(16px)}.quota-switch input:disabled+.quota-switch-slider{opacity:.5;cursor:not-allowed}.quota-cell-edit-icon{margin-left:6px;opacity:.75}.quota-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:16px;padding:0;margin:-8px 0 8px;flex-wrap:wrap}.quota-toolbar-left,.quota-toolbar-right{display:flex;align-items:center;gap:10px}.quota-toolbar-left:empty{display:none}.quota-month-label{font-size:13px;color:#ffffff80}.quota-month-select{padding:6px 12px;border:1px solid rgba(255,255,255,.12);border-radius:8px;background:#00000040;color:#fff;font-size:13px;font-family:monospace;outline:none;cursor:pointer}.quota-month-select:focus{border-color:#5eead4}.quota-cell-btn{display:inline-flex;align-items:center;background:transparent;border:none;color:#818cf8;padding:2px 0;font-family:monospace;font-size:14px;font-weight:500;cursor:pointer;transition:color .15s}.quota-cell-btn:hover{color:#a5b4fc}.quota-cell-na{color:#ffffff59;font-size:13px}.quota-edit-inline{display:inline-flex;align-items:center;gap:4px;flex-wrap:nowrap;white-space:nowrap}.quota-edit-input{flex:1;min-width:0;width:100%;height:26px;padding:0 8px;border:1px solid rgba(94,234,212,.45);border-radius:5px;background:#00000059;color:#fff;font-size:13px;font-family:monospace;text-align:right;outline:none;transition:border-color .15s,box-shadow .15s;-moz-appearance:textfield}.quota-edit-input:focus{border-color:#5eead4bf;box-shadow:0 0 0 2px #5eead42e}.quota-edit-input::-webkit-outer-spin-button,.quota-edit-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quota-edit-icon-btn{flex-shrink:0;width:26px;height:26px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;cursor:pointer;transition:background .15s,border-color .15s,color .15s,opacity .15s}.quota-edit-icon-btn:disabled{opacity:.5;cursor:not-allowed}.quota-edit-icon-btn.confirm{border:1px solid rgba(94,234,212,.45);background:#5eead41f;color:#5eead4}.quota-edit-icon-btn.confirm:hover:not(:disabled){background:#5eead438;border-color:#5eead4a6}.quota-edit-icon-btn.cancel{border:1px solid rgba(255,255,255,.18);background:transparent;color:#fff9}.quota-edit-icon-btn.cancel:hover:not(:disabled){border-color:#ffffff59;color:#fff}.quota-over{color:#fca5a5!important}.child-summary-list{display:flex;flex-direction:column;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:16px;overflow:hidden}.child-summary-header{display:flex;align-items:center;padding:12px 20px;background:#ffffff0a;border-bottom:1px solid rgba(255,255,255,.06);font-size:12px;color:#fff6;font-weight:500}.child-summary-item{border-bottom:1px solid rgba(255,255,255,.04)}.child-summary-item:last-child{border-bottom:none}.child-summary-row{display:flex;align-items:center;padding:14px 20px;transition:background .15s}.child-summary-row:hover{background:#ffffff0a}.child-summary-row.expanded{background:#ffffff08}.child-summary-col-name{flex:1;min-width:0;display:flex;align-items:center;gap:10px;font-size:14px;color:#fff;font-weight:500}.child-summary-col{width:100px;text-align:right;font-size:14px;font-family:monospace;font-weight:500;color:#fff9;flex-shrink:0}.child-summary-col-action{width:64px;text-align:right;flex-shrink:0}.child-summary-header .child-summary-col,.child-summary-header .child-summary-col-action{font-family:inherit;font-weight:500}.child-summary-net{color:#fff}.child-badge{font-size:11px;padding:2px 8px;border-radius:6px;background:#5eead41a;color:#5eead4;font-weight:600;border:1px solid rgba(94,234,212,.2);flex-shrink:0}.child-badge-unbound{background:#94a3b81f;color:#94a3b8;border-color:#94a3b840}.detail-toggle-btn{padding:4px 12px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:transparent;color:#ffffff80;font-size:12px;cursor:pointer;transition:all .15s}.detail-toggle-btn:hover{color:#fff;border-color:#ffffff40;background:#ffffff0d}.detail-panel{background:#0003;padding:0 20px 16px}.detail-loading,.detail-empty{text-align:center;color:#ffffff59;font-size:13px;padding:20px 0}.detail-table-header{display:flex;align-items:center;padding:8px 0;font-size:11px;color:#ffffff59;border-bottom:1px solid rgba(255,255,255,.06)}.detail-row{display:flex;align-items:center;padding:10px 0;font-size:13px;border-bottom:1px solid rgba(255,255,255,.03)}.detail-row:last-of-type{border-bottom:none}.detail-col-time{width:120px;color:#ffffff80;font-family:monospace;font-size:12px;flex-shrink:0}.detail-col-type{width:60px;font-size:12px;font-weight:500;flex-shrink:0}.detail-col-type.deduct{color:#fca5a5}.detail-col-type.refund{color:#86efac}.detail-col-model{flex:1;color:#fff6;font-size:12px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-col-amount{width:90px;text-align:right;font-family:monospace;font-weight:500;flex-shrink:0}.detail-col-amount.deduct{color:#fca5a5}.detail-col-amount.refund{color:#86efac}.detail-pagination{display:flex;align-items:center;justify-content:center;gap:16px;padding-top:12px;margin-top:4px;border-top:1px solid rgba(255,255,255,.06)}.detail-page-btn{padding:4px 14px;border:1px solid rgba(255,255,255,.12);border-radius:6px;background:transparent;color:#ffffff80;font-size:12px;cursor:pointer;transition:all .15s}.detail-page-btn:hover:not(:disabled){color:#fff;border-color:#ffffff40;background:#ffffff0d}.detail-page-btn:disabled{opacity:.3;cursor:not-allowed}.detail-page-info{font-size:12px;color:#fff6;font-family:monospace}[data-theme=light] .child-add-btn{border-color:#00000026;background:#00000005;color:#0000008c}[data-theme=light] .child-add-btn:hover{border-color:#0000004d;color:#111;background:#0000000a}[data-theme=light] .child-add-form{background:#00000005;border-color:#00000014}[data-theme=light] .child-add-form-title{color:#111}[data-theme=light] .child-input{border-color:#0000001f;background:#f5f5f5;color:#111}[data-theme=light] .child-input:focus{border-color:#0d9488;background:#fff}[data-theme=light] .child-input::placeholder{color:#0000004d}[data-theme=light] .child-send-code-btn:disabled{border-color:#0000001a;color:#00000059;background:#0000000a}[data-theme=light] .child-cancel-btn{border-color:#0000001f;color:#0000008c}[data-theme=light] .child-cancel-btn:hover{color:#111;background:#0000000a}[data-theme=light] .child-empty{color:#0006;background:#00000005;border-color:#00000014}[data-theme=light] .child-table-header{color:#00000073;border-bottom-color:#00000014}[data-theme=light] .child-table-row{border-bottom-color:#0000000d;color:#000c}[data-theme=light] .child-table-row:hover{background:#00000005}[data-theme=light] .child-col-name{color:#111}[data-theme=light] .child-name-alias{color:#00000073}[data-theme=light] .child-alias-edit-btn{color:#0000004d}[data-theme=light] .child-alias-edit-btn:hover{color:#111;background:#0000000f}[data-theme=light] .child-alias-edit-prefix{color:#111}[data-theme=light] .child-alias-input{background:#f5f5f5;color:#111}[data-theme=light] .child-alias-input::placeholder{color:#0000004d}[data-theme=light] .child-col-time{color:#00000080}[data-theme=light] .child-col-used{color:#0d9488}[data-theme=light] .child-col-used.quota-over{color:#dc2626}[data-theme=light] .child-action-link{color:#0000008c}[data-theme=light] .child-action-link:hover{color:#111}[data-theme=light] .child-action-link.danger:hover{color:#dc2626}[data-theme=light] .child-summary-realname{color:#0006}[data-theme=light] .quota-switch-slider{background:#00000026}[data-theme=light] .quota-month-label{color:#00000080}[data-theme=light] .quota-month-select{border-color:#0000001f;background:#f5f5f5;color:#111}[data-theme=light] .quota-cell-btn{color:#4f46e5}[data-theme=light] .quota-cell-btn:hover{color:#6366f1}[data-theme=light] .quota-cell-na{color:#00000059}[data-theme=light] .quota-edit-input{background:#f5f5f5;color:#111}[data-theme=light] .quota-edit-icon-btn.cancel{border-color:#00000026;color:#0000008c}[data-theme=light] .quota-edit-icon-btn.cancel:hover:not(:disabled){border-color:#0000004d;color:#111}[data-theme=light] .quota-over{color:#dc2626!important}[data-theme=light] .child-summary-list{background:transparent;border-color:#00000014}[data-theme=light] .child-summary-header{background:#00000008;border-bottom-color:#0000000f;color:#00000073}[data-theme=light] .child-summary-item{border-bottom-color:#0000000d}[data-theme=light] .child-summary-row:hover,[data-theme=light] .child-summary-row.expanded{background:#00000005}[data-theme=light] .child-summary-col-name{color:#111}[data-theme=light] .child-summary-col{color:#0009}[data-theme=light] .child-summary-net{color:#111}[data-theme=light] .detail-toggle-btn{border-color:#0000001f;color:#00000080}[data-theme=light] .detail-toggle-btn:hover{color:#111;border-color:#00000040;background:#0000000a}[data-theme=light] .detail-panel{background:#00000005}[data-theme=light] .detail-loading,[data-theme=light] .detail-empty{color:#00000059}[data-theme=light] .detail-table-header{color:#00000059;border-bottom-color:#0000000f}[data-theme=light] .detail-row{border-bottom-color:#0000000a}[data-theme=light] .detail-col-time{color:#00000080}[data-theme=light] .detail-col-type.deduct{color:#dc2626}[data-theme=light] .detail-col-type.refund{color:#16a34a}[data-theme=light] .detail-col-model{color:#0006}[data-theme=light] .detail-col-amount.deduct{color:#dc2626}[data-theme=light] .detail-col-amount.refund{color:#16a34a}[data-theme=light] .detail-pagination{border-top-color:#0000000f}[data-theme=light] .detail-page-btn{border-color:#0000001f;color:#00000080}[data-theme=light] .detail-page-btn:hover:not(:disabled){color:#111;border-color:#00000040;background:#0000000a}[data-theme=light] .detail-page-info{color:#0006}.inv-manager{display:flex;flex-direction:column;gap:16px}.inv-section{background:#1a1a1a;border-radius:12px;padding:20px}.inv-title{font-size:15px;font-weight:600;color:#e5e5e5;margin-bottom:14px;display:flex;align-items:center;gap:8px}.inv-count{font-size:12px;font-weight:500;color:#999;background:#333;padding:1px 8px;border-radius:10px}.inv-code-display{display:flex;align-items:stretch;background:#1e1e1e;border:1px solid #333;border-radius:8px;overflow:hidden;width:fit-content;box-shadow:0 2px 8px #0003}.inv-code-copy-icon{display:flex;align-items:center;justify-content:center;width:38px;background:#1a1a1a;border:none;border-right:1px solid #333;color:#888;cursor:pointer;transition:color .2s ease,background .2s ease}.inv-code-copy-icon:hover{color:#5eead4;background:#222}.inv-code-copy-icon.copied{color:#10b981}.inv-code-label{display:flex;align-items:center;padding:0 16px;background:#2a2a2a;font-size:13px;color:#999;border-right:1px solid #333;font-weight:500;letter-spacing:1px}.inv-code-text{padding:10px 24px;font-size:20px;font-weight:700;letter-spacing:4px;color:#5eead4;font-family:SF Mono,Menlo,Monaco,monospace;display:flex;align-items:center;justify-content:center;background:#1a1a1a}.inv-copy-btn{background:#6366f1;border:none;color:#fff;padding:0 24px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.inv-copy-btn:hover{background:#4f46e5}.inv-copy-btn.copied{background:#10b981}.inv-code-empty{display:flex;flex-direction:column;align-items:center;gap:12px}.inv-code-hint{font-size:13px;color:#777;text-align:center;line-height:1.6}.inv-generate-btn{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;color:#fff;padding:10px 28px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:opacity .2s}.inv-generate-btn:hover{opacity:.9}.inv-generate-btn:disabled{opacity:.5;cursor:not-allowed}.inv-error{color:#ef4444;font-size:13px;margin-top:8px;text-align:center}.inv-empty{color:#666;font-size:13px;text-align:center;padding:16px 0}.inv-list{display:flex;flex-direction:column;gap:1px}.inv-item{display:flex;align-items:center;justify-content:space-between;padding:10px 0;border-bottom:1px solid #222}.inv-item:last-child{border-bottom:none}.inv-item-info{display:flex;align-items:center;gap:8px}.inv-item-name{font-size:14px;color:#ddd}.inv-item-role{font-size:11px;padding:1px 6px;border-radius:4px;background:#333;color:#999}.inv-role-parent{background:#6366f126;color:#818cf8}.inv-item-time{font-size:12px;color:#666}.inv-header-mode{background:transparent;padding:0;border-radius:0}.inv-header-mode .inv-title{display:none}.inv-header-mode .inv-code-empty{flex-direction:row;justify-content:space-between;background:#ffffff08;border:1px dashed rgba(255,255,255,.15);border-radius:8px;padding:12px 16px;align-items:center}.inv-header-mode .inv-code-hint{text-align:left;margin:0;font-size:12px}.inv-list-mode{padding:0;background:transparent}.inv-list-header-stats{font-size:14px;color:#999;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #222}.inv-count-highlight{color:#5eead4;font-weight:600;font-size:16px;margin:0 4px}.inv-month-bar{display:flex;align-items:center;gap:10px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #222}.inv-month-label{font-size:13px;color:#999}.inv-month-picker{background:#1e1e1e;border:1px solid #333;color:#ddd;padding:6px 10px;border-radius:6px;font-size:13px;color-scheme:dark}.inv-month-loading{font-size:12px;color:#666}.inv-monthly-list{display:flex;flex-direction:column;gap:1px}.inv-monthly-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #222}.inv-monthly-row:last-child{border-bottom:none}.inv-monthly-info{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}.inv-monthly-numbers{display:flex;align-items:center;gap:18px;flex:0 0 auto}.inv-monthly-cell{display:flex;flex-direction:column;align-items:flex-end;gap:2px;min-width:56px}.inv-monthly-cell-label{font-size:11px;color:#666}.inv-monthly-deduct{font-size:14px;color:#f87171;font-variant-numeric:tabular-nums}.inv-monthly-refund{font-size:14px;color:#34d399;font-variant-numeric:tabular-nums}.inv-monthly-net{font-size:14px;color:#5eead4;font-weight:600;font-variant-numeric:tabular-nums}.inv-monthly-summary{margin-top:12px;padding-top:12px;border-top:1px solid #222;font-size:13px;color:#999;text-align:right}.inv-monthly-summary strong{color:#ddd;font-weight:600}@media (max-width: 640px){.inv-monthly-numbers{gap:12px}.inv-monthly-cell{min-width:48px}}.inv-secondary-toggle{font-size:11px;padding:1px 8px;border-radius:4px;border:1px solid rgba(99,102,241,.4);background:#6366f11f;color:#a5b4fc;cursor:pointer;transition:background .15s ease}.inv-secondary-toggle:hover{background:#6366f138}.inv-secondary-toggle.expanded{background:#6366f14d;color:#c7d2fe}.inv-secondary-panel{margin:4px 0 8px 16px;padding:6px 12px;border-left:2px solid rgba(99,102,241,.35);background:#6366f10a;border-radius:0 6px 6px 0}.inv-secondary-row,.inv-secondary-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 0;border-bottom:1px solid #1d1d1d}.inv-secondary-row:last-child,.inv-secondary-item:last-child{border-bottom:none}.inv-secondary-empty{font-size:12px;color:#666;padding:8px 0}.ent-manager{display:flex;flex-direction:column;gap:16px}.ent-empty{padding:24px;text-align:center;color:#888;font-size:14px}.ent-empty-state{background:#1a1a1a;border-radius:12px;padding:28px 24px;display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.ent-empty-hint{font-size:13px;color:#999;line-height:1.6;max-width:420px;margin:0}.ent-card{background:#1a1a1a;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px}.ent-card-header{display:flex;align-items:center;justify-content:space-between}.ent-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:#10b981;background:#10b9811f;border:1px solid rgba(16,185,129,.3);padding:3px 12px;border-radius:12px}.ent-info-row{display:flex;gap:16px;font-size:14px;align-items:flex-start}.ent-info-row-images{flex-direction:column;gap:10px}.ent-info-label{flex:0 0 120px;color:#888;font-size:13px}.ent-info-value{color:#e5e5e5;word-break:break-all}.ent-info-images{display:flex;flex-wrap:wrap;gap:10px}.ent-form{background:#1a1a1a;border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:18px}.ent-form-title{font-size:16px;font-weight:600;color:#e5e5e5}.ent-field{display:flex;flex-direction:column;gap:8px}.ent-field-label{font-size:13px;color:#aaa}.ent-input{background:#111;border:1px solid #333;border-radius:8px;padding:10px 12px;color:#e5e5e5;font-size:14px;outline:none;transition:border-color .2s ease}.ent-input:focus{border-color:#5eead4}.ent-input::placeholder{color:#555}.ent-uploads{display:flex;flex-wrap:wrap;gap:12px}.ent-thumb{position:relative;width:92px;height:92px;border-radius:8px;overflow:hidden;border:1px solid #333;background:#111}.ent-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ent-thumb-readonly{cursor:zoom-in}.ent-thumb-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;color:#777}.ent-thumb-remove{position:absolute;top:4px;right:4px;width:20px;height:20px;border:none;border-radius:50%;background:#000000a6;color:#fff;font-size:15px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.ent-thumb-remove:hover{background:#ef4444}.ent-upload-btn{width:92px;height:92px;border:1px dashed #444;border-radius:8px;background:transparent;color:#888;font-size:13px;cursor:pointer;transition:border-color .2s ease,color .2s ease}.ent-upload-btn:hover:not(:disabled){border-color:#5eead4;color:#5eead4}.ent-upload-btn:disabled{opacity:.6;cursor:not-allowed}.ent-form-actions{display:flex;justify-content:flex-end;gap:12px}.ent-btn-primary{background:#5eead4;color:#0a0a0a;border:none;border-radius:8px;padding:10px 22px;font-size:14px;font-weight:600;cursor:pointer;transition:opacity .2s ease}.ent-btn-primary:hover:not(:disabled){opacity:.88}.ent-btn-primary:disabled{opacity:.5;cursor:not-allowed}.ent-btn-secondary{background:#2a2a2a;color:#ccc;border:1px solid #333;border-radius:8px;padding:10px 22px;font-size:14px;cursor:pointer}.ent-btn-secondary:hover:not(:disabled){background:#333}.ent-btn-link{background:none;border:none;color:#5eead4;font-size:13px;cursor:pointer;padding:0}.ent-btn-link:hover{text-decoration:underline}.ent-error{color:#f87171;font-size:13px;margin:0}.video-history-container{display:flex;flex-direction:column;gap:32px;padding:24px 24px 200px;max-width:var(--content-max-width, 800px);margin:0 auto;width:100%}.history-group{display:flex;flex-direction:column;gap:4px}.history-date-header{font-family:PingFang SC,arial,tahoma,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0;padding-bottom:8px}.history-list{display:flex;flex-direction:column;gap:25px}.history-item{display:flex;flex-direction:column;gap:4px;width:100%;max-width:1024px}.history-item-info{display:flex;flex-direction:column;gap:8px}.history-item-header{display:flex;flex-direction:row;gap:16px;color:#9ca3af;font-size:14px;align-items:center}.history-text-content{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.history-thumbnails{display:flex;flex-direction:row;align-items:center;flex-shrink:0;padding:4px 8px;position:relative}.history-thumbnails.clickable{cursor:pointer}.history-thumbnail-edit-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#00000080;border-radius:6px;opacity:0;transition:opacity .2s ease;pointer-events:none}.history-thumbnail-edit-overlay svg{width:20px;height:20px;color:var(--color-text-primary)}.history-thumbnails.clickable:hover .history-thumbnail-edit-overlay{opacity:1}.history-thumbnail-wrapper{position:relative;flex-shrink:0;width:38px;height:50px;transition:transform .3s cubic-bezier(.34,1.4,.64,1)}.history-thumbnail-wrapper:nth-child(2n){transform:rotate(3deg)}.history-thumbnail-wrapper:nth-child(odd){transform:rotate(-3deg)}.history-thumbnail-wrapper:not(:first-child){margin-left:-12px;transition:margin-left .3s cubic-bezier(.34,1.4,.64,1)}.history-thumbnails:hover .history-thumbnail-wrapper:not(:first-child){margin-left:4px}.history-thumbnails:hover .history-thumbnail-wrapper{transform:rotate(0)!important}.history-thumbnail{width:100%;height:100%;border-radius:4px;object-fit:cover;background-color:#374151;border:1px solid #fff;display:block;box-shadow:-2px 0 6px #0006}.history-thumbnail-audio{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:#d1d5db;font-size:12px;line-height:1}.history-thumbnail-audio svg{width:24px;height:24px}.history-thumbnail-audio span{font-size:11px;color:#9ca3af}.history-speech-header{display:flex;flex-direction:column;gap:10px;width:100%}.history-speech-params{display:flex;flex-wrap:wrap;gap:6px}.history-speech-param-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:6px;font-size:12px;line-height:1.3;color:#ffffffd1;background:#ffffff0f;border:1px solid var(--color-modal-border);white-space:nowrap}.history-speech-player-wrap{margin-top:4px;width:420px;max-width:100%}.history-speech-player{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#27272abf;border:1px solid rgba(255,255,255,.06);border-radius:10px}.history-speech-player audio{display:none}.history-speech-play-btn{width:32px;height:32px;border-radius:50%;border:none;background:#a855f733;color:#a855f7;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .15s}.history-speech-play-btn:hover{background:#a855f759}.history-speech-player-center{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.history-speech-filename{font-size:12px;font-weight:500;color:#ffffffbf;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-speech-progress-row{display:flex;align-items:center;gap:8px}.history-speech-time{font-size:11px;color:#fff6;font-variant-numeric:tabular-nums;flex-shrink:0;-webkit-user-select:none;user-select:none}.history-speech-progress{flex:1;height:4px;background:var(--color-bg-hover);border-radius:2px;cursor:pointer;position:relative}.history-speech-progress-fill{height:100%;background:linear-gradient(90deg,#a855f7,#c084fc);border-radius:2px;position:relative}.history-speech-progress:hover .history-speech-progress-fill:after{content:"";position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#c084fc;box-shadow:0 0 4px #a855f799}.history-speech-download-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:#ffffff0f;color:#ffffffa6;cursor:pointer;flex-shrink:0;transition:background .15s,color .15s}.history-speech-download-btn:hover{background:var(--color-bg-hover);color:#ffffffe6}.history-speech-status-capsule{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border-radius:999px;background:#27272ad9;border:1px solid var(--color-modal-border)}.history-speech-status-spinner{width:12px;height:12px;border:2px solid rgba(168,85,247,.25);border-top-color:#a855f7;border-radius:50%;animation:history-speech-status-spin .8s linear infinite;flex-shrink:0}@keyframes history-speech-status-spin{to{transform:rotate(360deg)}}.history-speech-status-text{font-size:12px;line-height:1;color:#ffffffb8;white-space:nowrap}.history-item--speech .history-item-info{margin-bottom:8px}.history-thumbnail-badge{position:absolute;bottom:2px;right:2px;width:16px;height:16px;background-color:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-text-primary)}.history-thumbnail-badge svg{width:8px;height:8px}.history-thumbnail-badge-role{background-color:#9333eacc}.history-thumbnail-badge-role svg{width:10px;height:10px}.history-thumbnail-asset-loading{display:flex;align-items:center;justify-content:center;background:#1e1e28cc;color:#fff6}.history-thumbnail-loading-spinner{width:14px;height:14px;border:2px solid rgba(255,255,255,.15);border-top-color:var(--color-modal-text-muted);border-radius:50%;animation:history-thumb-spin .8s linear infinite}@keyframes history-thumb-spin{to{transform:rotate(360deg)}}.history-prompt-container{display:flex;align-items:flex-start;gap:8px;position:relative}.history-prompt-hover{flex:0 1 auto;min-width:0;max-width:100%;display:block;position:static}.history-prompt{color:#f9fbfc;color-scheme:light;font-family:PingFang SC,arial,tahoma,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:14px;font-weight:500;-webkit-font-smoothing:antialiased;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;width:max-content;max-width:100%;word-break:break-all;line-height:1.5}.history-prompt-popover{display:none;position:absolute;top:0;left:0;right:0;z-index:20;padding:0 14px 12px;max-height:220px;overflow-y:auto;background:#14161cfa;color:#f9fbfc;font-family:PingFang SC,arial,tahoma,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:14px;font-weight:500;line-height:1.5;white-space:pre-wrap;word-break:break-word;border-radius:8px;border:1px solid var(--color-modal-border);box-shadow:0 12px 32px #00000073;-webkit-user-select:text;user-select:text;cursor:text}.history-prompt-hover:hover .history-prompt-popover{display:block}.history-prompt-chip{display:inline-flex;align-items:center;gap:4px;padding:4px;margin:0 2px;border-radius:5px;font-size:inherit;font-weight:500;line-height:1.4;vertical-align:middle;background:var(--color-bg-active);color:#f3f4f6e6;-webkit-user-select:none;user-select:none;white-space:nowrap}.history-prompt-chip[data-kind=图片]{background:#60a5fa2e;color:#93c5fd}.history-prompt-chip[data-kind=视频]{background:#a855f72e;color:#c4b5fd}.history-prompt-chip[data-kind=音频]{background:#22c55e2e;color:#86efac}.history-prompt-chip-thumb{width:18px;height:18px;border-radius:3px;object-fit:cover;flex-shrink:0;background:#ffffff0f}.history-prompt-chip-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:3px;background:#ffffff14;font-size:11px;flex-shrink:0}.history-prompt-chip-label{font-size:inherit;line-height:1.4}.history-copy-btn{background:none;border:none;color:#9ca3af;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:color .2s,background-color .2s;flex-shrink:0;margin-top:2px}.history-copy-btn:hover{color:var(--color-text-primary);background-color:#374151}.history-copy-btn svg{width:16px;height:16px}.history-ref-download-btn{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;margin-top:2px;padding:4px 10px;font-size:13px;color:#e0e7ff;background:#3b82f633;border:1px solid rgba(59,130,246,.45);border-radius:6px;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.history-ref-download-btn:hover:not(:disabled){background:#3b82f659;border-color:#60a5fab3;color:#f8fafc}.history-ref-download-btn:disabled{opacity:.65;cursor:not-allowed}.history-ref-download-btn svg{flex-shrink:0}.history-footer{display:flex;align-items:center;justify-content:space-between;margin-top:2px;width:100%;max-width:532px}.history-meta-container{display:flex;align-items:center;gap:12px}.history-meta{color:#6b7280;display:flex;align-items:center;gap:4px;font-size:13px;white-space:nowrap}.history-video-wrapper{width:100%;max-width:532px;aspect-ratio:16 / 9;background-color:#1f2937;background-image:radial-gradient(ellipse at center,#2a3444,#1f2937 70%);border-radius:8px;overflow:hidden;position:relative;isolation:isolate}.history-video-wrapper.expired{aspect-ratio:auto;height:80px}.history-video{width:100%;height:100%;display:block;outline:none;margin:0;padding:0;border:none;border-radius:8px}.history-video-placeholder{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:14px}.history-video-placeholder.failed{color:#ef4444}.history-video-placeholder.expired{background-color:#1f2937;color:#9ca3af;flex-direction:column;gap:8px}.expired-text{font-size:14px;font-weight:500}.history-retention-tip{display:flex;align-items:center;gap:4px;margin-left:auto;font-size:12px;color:#fbbf24;background-color:#fbbf241a;padding:4px 8px;border-radius:6px;white-space:nowrap}.history-retention-tip svg{width:14px;height:14px;flex-shrink:0}.history-video-placeholder.processing{background:linear-gradient(135deg,#1e293b,#3b82f6,#8b5cf6,#1e293b);animation:gradient-animation 8s ease infinite;align-items:flex-start;justify-content:flex-start}.history-video-loading.canvas-gen-loading--compact .canvas-gen-loading__text{position:absolute;right:0;bottom:0;left:0;top:0;display:flex;align-items:center;justify-content:center;gap:10px;font-size:16px;font-weight:400;color:#fffffff2}.history-video-loading.canvas-gen-loading--compact .canvas-gen-loading__spinner{display:none}@keyframes gradient-animation{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.processing-badge{background-color:#0006;color:var(--color-text-primary);padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:1px solid rgba(255,255,255,.1)}.history-actions{display:flex;gap:12px}.history-action-btn{display:flex;align-items:center;gap:5px;background-color:#374151;color:var(--color-text-primary);border:none;padding:5px 10px;border-radius:6px;font-size:12px;font-weight:400;cursor:pointer;transition:background-color .2s}.history-action-btn:hover{background-color:#4b5563}.history-action-btn svg{width:13px;height:13px}.history-action-btn.icon-only{padding:8px}.history-loading,.history-end,.history-empty{text-align:center;padding:24px;color:#6b7280;font-size:14px}.history-image-grid{display:flex;flex-wrap:wrap;gap:8px;width:100%}.history-image-item{position:relative;border-radius:8px;overflow:hidden;background:var(--color-modal-bg);cursor:pointer;flex:0 0 auto}.history-image-item img{display:block;max-width:400px;max-height:350px;width:auto;height:auto;min-height:120px;background:linear-gradient(90deg,#1f2937 25%,#2a3444,#1f2937 75%);background-size:200% 100%;animation:img-skeleton 1.5s ease-in-out infinite}@keyframes img-skeleton{0%{background-position:200% 0}to{background-position:-200% 0}}.history-image-actions{position:absolute;top:8px;right:8px;display:flex;gap:6px;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:5}.history-image-item:hover .history-image-actions{opacity:1;pointer-events:auto}.history-image-action-btn{width:32px;height:32px;border-radius:8px;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);border:none;cursor:pointer;text-decoration:none;padding:0;transition:background .15s ease}.history-image-action-btn:hover{background:#000000bf}.history-image-node-toolbar{position:absolute;right:8px;bottom:8px;transform:translateY(6px);display:flex;align-items:center;gap:6px;padding:4px;border-radius:8px;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;pointer-events:none;transition:opacity .18s ease,transform .18s ease;z-index:5}.history-image-item:hover .history-image-node-toolbar{opacity:1;transform:translateY(0);pointer-events:auto}.history-image-node-toolbar-item{border:none;background:transparent;color:var(--color-text-primary);font-size:13px;line-height:1.2;font-weight:500;padding:4px;border-radius:8px;display:flex;align-items:center;gap:6px;cursor:pointer;transition:background .15s ease,color .15s ease;flex-shrink:0;white-space:nowrap;position:relative}.history-image-node-toolbar-item svg{color:#f9fafb;flex-shrink:0}.history-image-node-toolbar-item:hover{background:#ffffff29;color:var(--color-text-primary)}.history-image-node-toolbar-label{white-space:nowrap}.history-image-node-toolbar-tooltip{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%,4px);padding:6px 10px;border-radius:10px;background:#141418f2;border:1px solid rgba(255,255,255,.12);box-shadow:0 8px 20px #00000052;color:#f9fafb;font-size:12px;font-weight:500;line-height:1;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease}.history-image-node-toolbar-item:hover .history-image-node-toolbar-tooltip,.history-image-node-toolbar-item:focus-visible .history-image-node-toolbar-tooltip{opacity:1;transform:translate(-50%)}.history-image-error{display:flex;align-items:flex-start;gap:6px;padding:10px 12px;border-radius:8px;background:#ef444414;border:1px solid rgba(239,68,68,.2);color:#f87171;font-size:13px;line-height:1.5;max-width:532px}.history-image-error svg{flex-shrink:0;margin-top:2px}.image-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:var(--color-modal-lightbox-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;cursor:pointer;animation:lightbox-fade-in .2s ease}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.image-lightbox-img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px;cursor:default;box-shadow:var(--color-modal-shadow)}.image-lightbox-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border-radius:50%;background:var(--color-bg-active);border:none;color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.image-lightbox-close:hover{background:var(--color-bg-hover)}.image-lightbox-download{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:8px 20px;border-radius:8px;background:var(--color-bg-hover);color:var(--color-text-primary);font-family:inherit;font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:background .15s ease;border:1px solid var(--color-border-strong)}.image-lightbox-download:hover{background:var(--color-bg-hover)}.history-video-overlay-btn{width:32px;height:32px;border-radius:8px;border:none;background:#0000008c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease}.history-video-overlay-btn:hover{background:#000000bf}.history-video-overlay-btn.disabled{opacity:.45;cursor:not-allowed}.history-video-overlay-btn.disabled:hover{background:#0000008c}.fps-boost-modal.app-modal-panel{overflow:hidden}.fps-boost-modal .app-modal-body{padding:0 24px}.fps-boost-modal .app-modal-footer{padding:0;border-top:none}.fps-boost-body{padding:8px 0 16px;display:flex;flex-direction:column;gap:24px}.fps-boost-row{display:flex;align-items:center;gap:16px}.fps-boost-label{font-size:15px;font-weight:500;color:var(--color-text-secondary);min-width:72px;flex-shrink:0}.fps-boost-value{font-size:16px;font-weight:600;color:var(--color-text-primary)}.fps-boost-options{display:flex;gap:12px}.fps-boost-option{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:10px;border:1.5px solid var(--color-border-strong);background:var(--color-bg-faint);color:var(--color-text-secondary);font-size:14px;font-weight:500;cursor:pointer;transition:border-color .15s ease,background .15s ease,color .15s ease}.fps-boost-option:hover{border-color:var(--color-border-focus);background:var(--color-bg-hover)}.fps-boost-option.active{border-color:var(--color-accent-primary);background:var(--color-accent-primary-soft);color:var(--color-text-primary)}.fps-boost-radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--color-border-strong);position:relative;flex-shrink:0;transition:border-color .15s ease}.fps-boost-radio.checked{border-color:var(--color-accent-primary)}.fps-boost-radio.checked:after{content:"";position:absolute;top:3px;left:3px;width:6px;height:6px;border-radius:50%;background:var(--color-accent-primary)}.fps-boost-error{margin:0 0 8px;padding:8px 12px;border-radius:8px;background:var(--color-state-error-bg);color:var(--color-state-error-text);font-size:13px}.fps-boost-hint{font-size:12px;color:var(--color-state-warning);margin-right:auto;align-self:center}.fps-boost-cost{font-size:13px;color:var(--color-text-muted);margin-right:12px;align-self:center}.fps-boost-footer{padding:16px 24px 20px;display:flex;justify-content:flex-end;width:100%;box-sizing:border-box}.fps-boost-submit{padding:10px 28px;border-radius:10px;border:none;background:var(--color-state-success-gradient);color:var(--color-on-success);font-size:15px;font-weight:600;cursor:pointer;transition:background .15s ease,transform .1s ease}.fps-boost-submit:hover{filter:brightness(1.05)}.fps-boost-submit:active{transform:scale(.97)}.fps-boost-submit:disabled{opacity:.5;cursor:not-allowed;transform:none}.history-inline-error{display:inline-flex;align-items:center;gap:8px;margin-top:10px;padding:10px 12px;border-radius:8px;background:#ffffff0a;color:#d1d5db;font-size:13px;line-height:1.4;width:fit-content;max-width:100%;align-self:flex-start}.history-inline-error-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#9ca3af}.history-inline-error-text{word-break:break-word}[data-theme=light] .history-item-header{color:var(--color-neutral-text-regular)}[data-theme=light] .history-thumbnail{border-color:var(--color-neutral-border-1);background-color:var(--color-neutral-border-3);box-shadow:0 1px 4px #00000014}[data-theme=light] .history-thumbnail-audio{color:var(--color-neutral-text-regular)}[data-theme=light] .history-thumbnail-audio span{color:var(--color-neutral-text-secondary)}[data-theme=light] .history-thumbnail-asset-loading{background:var(--color-neutral-border-4);color:var(--color-neutral-text-placeholder)}[data-theme=light] .history-thumbnail-loading-spinner{border-color:var(--color-neutral-border-2);border-top-color:var(--color-neutral-text-secondary)}[data-theme=light] .history-prompt{color:var(--color-neutral-text-primary)}[data-theme=light] .history-prompt-popover{background:var(--color-neutral-white);color:var(--color-neutral-text-primary);border:1px solid var(--color-neutral-border-1);box-shadow:0 2px 12px #0000001a}[data-theme=light] .history-prompt-chip{background:var(--color-neutral-border-4);color:var(--color-neutral-text-regular);border:1px solid var(--color-neutral-border-2)}[data-theme=light] .history-prompt-chip[data-kind=图片]{background:#2563eb14;color:#2563eb;border-color:#2563eb2e}[data-theme=light] .history-prompt-chip[data-kind=视频]{background:#9333ea14;color:#9333ea;border-color:#9333ea2e}[data-theme=light] .history-prompt-chip[data-kind=音频]{background:#67c23a1a;color:#67c23a;border-color:#67c23a38}[data-theme=light] .history-prompt-chip-thumb{background:var(--color-neutral-border-3)}[data-theme=light] .history-prompt-chip-icon{background:var(--color-neutral-border-3);color:var(--color-neutral-text-secondary)}[data-theme=light] .history-copy-btn{color:var(--color-neutral-text-secondary)}[data-theme=light] .history-copy-btn:hover{color:var(--color-neutral-text-primary);background-color:var(--color-neutral-border-4)}[data-theme=light] .history-ref-download-btn{color:#2563eb;background:#2563eb14;border-color:#2563eb38}[data-theme=light] .history-ref-download-btn:hover:not(:disabled){background:#2563eb1f;border-color:#2563eb59;color:#1d4ed8}[data-theme=light] .history-action-btn{background:#7c3aed14;color:#6d28d9;border:1px solid rgba(124,58,237,.22)}[data-theme=light] .history-action-btn:hover{background:#7c3aed24;border-color:#7c3aed5c;color:#5b21b6}[data-theme=light] .history-inline-error{background:#dc262614;color:#991b1b;border:1px solid rgba(220,38,38,.18)}[data-theme=light] .history-inline-error-icon{color:#dc2626}[data-theme=light] .history-speech-param-tag{color:var(--color-neutral-text-regular);background:var(--color-neutral-border-4);border-color:var(--color-neutral-border-1)}[data-theme=light] .history-video-overlay-btn{color:#fff}.custom-video-player{position:relative;width:100%;height:100%;overflow:hidden;border-radius:inherit;background:transparent;cursor:pointer;isolation:isolate}.custom-video-player-video{display:block;width:100%;height:100%;object-fit:contain;outline:none;margin:0;padding:0;border:none;background:transparent}.custom-video-player:fullscreen,.custom-video-player:-webkit-full-screen{background:#000}.custom-video-player:fullscreen .custom-video-player-video,.custom-video-player:-webkit-full-screen .custom-video-player-video{background:#000}.custom-video-player-top-actions{position:absolute;right:8px;top:8px;z-index:5;display:flex;align-items:center;gap:6px;opacity:0;pointer-events:none;transition:opacity .15s ease}.custom-video-player-top-actions.is-visible{opacity:1;pointer-events:auto}.custom-video-player-icon-btn{width:32px;height:32px;border-radius:8px;border:none;background:var(--canvas-color-overlay, var(--canvas-color-overlay, rgba(0, 0, 0, .55)));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s ease}.custom-video-player-icon-btn:hover{background:#000000bf}.custom-video-player-center-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;border:none;background:var(--canvas-color-overlay, var(--canvas-color-overlay, rgba(0, 0, 0, .55)));-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0 0 0 4px;z-index:4;transition:background .15s,transform .15s}.custom-video-player-center-play:hover{background:#000000bf;transform:translate(-50%,-50%) scale(1.06)}.custom-video-player-controls{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:8px;padding:8px 8px 6px;background:linear-gradient(transparent,#000000b3);z-index:3}.custom-video-player-play-btn{width:30px;height:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:none;background:transparent;color:#fff;cursor:pointer;padding:0;border-radius:50%;transition:background .15s}.custom-video-player-play-btn:hover{background:var(--canvas-color-border-focus)}.custom-video-player-time{font-size:13px;color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums;margin-left:-4px}[data-theme=light] .custom-video-player-time{color:#ffffffd9}.custom-video-player-progress{flex:1;height:8px;background:var(--canvas-color-border-strong, rgba(255, 255, 255, .12));border-radius:4px;cursor:pointer;position:relative;touch-action:none}.custom-video-player-progress:before{content:"";position:absolute;left:0;right:0;top:-12px;bottom:-12px}.custom-video-player-progress-fill{height:100%;background:var(--canvas-color-accent-primary, var(--canvas-color-accent-primary, #3b82f6));border-radius:4px;transition:width .1s linear;pointer-events:none}.custom-video-player-progress-thumb{position:absolute;top:50%;width:16px;height:16px;margin-left:-8px;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #00000040,0 1px 3px #0006;transform:translateY(-50%) scale(0);transition:transform .12s ease;pointer-events:none}.custom-video-player-progress:hover .custom-video-player-progress-thumb,.custom-video-player-progress.is-seeking .custom-video-player-progress-thumb{transform:translateY(-50%) scale(1)}.custom-video-player-progress.is-seeking .custom-video-player-progress-fill{transition:none}.custom-video-player:fullscreen .custom-video-player-video,.custom-video-player:-webkit-full-screen .custom-video-player-video{width:100vw;height:100vh;object-fit:contain}.canvas-gen-loading{padding:8px;display:flex;flex-direction:column;gap:8px;background:var(--canvas-color-bg-surface, var(--canvas-color-bg-surface, rgba(30, 30, 34, .42)));border-radius:9px}.canvas-gen-loading--compact{padding:0;gap:0;width:100%;height:100%;border-radius:0;background:transparent}.canvas-gen-loading__placeholder{position:relative;width:100%;aspect-ratio:16 / 9;border-radius:8px;overflow:hidden;background:var(--canvas-color-bg-faint, var(--canvas-color-bg-faint, rgba(255, 255, 255, .04)))}.canvas-gen-loading--compact .canvas-gen-loading__placeholder{height:100%;border-radius:0}.canvas-gen-loading__bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:.55;filter:blur(10px) saturate(1.05);transform:scale(1.08)}.canvas-gen-loading__bg-blur{position:absolute;top:0;right:0;bottom:0;left:0;background:#12121447}.canvas-gen-loading__shimmer{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,var(--canvas-color-bg-subtle, var(--canvas-color-bg-subtle, rgba(255, 255, 255, .06))) 40%,var(--canvas-color-border-strong, rgba(255, 255, 255, .12)) 50%,var(--canvas-color-bg-subtle, var(--canvas-color-bg-subtle, rgba(255, 255, 255, .06))) 60%,transparent 100%);animation:canvas-gen-loading-shimmer 1.8s ease-in-out infinite}@keyframes canvas-gen-loading-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.canvas-gen-loading__estimate{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2;pointer-events:none;max-width:calc(100% - 16px);padding:7px 14px;border-radius:999px;border:1px solid var(--canvas-color-gen-estimate-border, var(--canvas-color-border-node, rgba(255, 255, 255, .22)));background:var(--canvas-color-gen-estimate-bg, rgba(18, 18, 20, .78));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 8px 22px var(--canvas-color-shadow, rgba(0, 0, 0, .38));color:var(--canvas-color-gen-estimate-text, var(--canvas-color-text-primary, #fff));font-size:12px;font-weight:600;line-height:1.2;letter-spacing:.2px;text-align:center;white-space:nowrap;box-sizing:border-box}.canvas-gen-loading__text{display:flex;align-items:center;justify-content:center;gap:6px;font-size:12px;color:var(--canvas-color-text-muted, rgba(255, 255, 255, .45));padding:4px 0}.canvas-gen-loading--compact .canvas-gen-loading__text{position:absolute;left:12px;top:12px;padding:0;color:var(--canvas-color-text-secondary, rgba(255, 255, 255, .85));z-index:3}.canvas-gen-loading__spinner{width:14px;height:14px;border:2px solid var(--canvas-color-border-focus);border-top-color:var(--canvas-color-state-success, #4caf50);border-radius:50%;animation:canvas-gen-loading-spin .8s linear infinite}@keyframes canvas-gen-loading-spin{to{transform:rotate(360deg)}}.team-space-dropdown{position:relative;display:inline-flex;align-items:center;pointer-events:auto}.team-space-dropdown.loading-placeholder{width:140px;height:32px;background:#ffffff0a;border-radius:10px}.team-space-dropdown.error{font-size:12px;color:#fca5a5;padding:6px 10px}.team-space-trigger{display:inline-flex;align-items:center;gap:6px;background:#ffffff0f;border:1px solid rgba(255,255,255,.1);border-radius:10px;padding:6px 10px;color:#ffffffd9;font-size:13px;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);max-width:220px;transition:background .15s}.team-space-trigger:hover{background:#ffffff1a}.team-space-trigger>svg:first-child{flex-shrink:0;color:#fff9}.team-space-trigger-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-space-chevron{flex-shrink:0;color:#ffffff80;transition:transform .2s}.team-space-dropdown.open .team-space-chevron{transform:rotate(180deg)}.team-space-menu{position:absolute;top:calc(100% + 6px);right:0;min-width:220px;max-width:300px;max-height:320px;overflow-y:auto;background:#14141af2;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:4px;z-index:30;box-shadow:0 12px 32px #0006;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);display:flex;flex-direction:column;gap:2px;pointer-events:auto}.team-space-option{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;background:transparent;border:none;border-radius:6px;color:#ffffffd9;font-size:13px;cursor:pointer;text-align:left}.team-space-option:hover:not(.disabled){background:#ffffff14}.team-space-option.active{background:#6366f140;color:#fff}.team-space-option.disabled{color:#ffffff59;cursor:not-allowed}.team-space-option-label{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-space-option-tag{flex-shrink:0;font-size:11px;color:#fff6;padding:1px 6px;border:1px solid rgba(255,255,255,.15);border-radius:999px}[data-theme=light] .team-space-dropdown.loading-placeholder{background:#0000000a}[data-theme=light] .team-space-trigger{background:#fff;border-color:#e0e0e0;color:#111}[data-theme=light] .team-space-trigger:hover{background:#f5f5f5}[data-theme=light] .team-space-trigger>svg:first-child{color:#00000073}[data-theme=light] .team-space-chevron{color:#0006}[data-theme=light] .team-space-menu{background:#fff;border-color:#e0e0e0;box-shadow:0 8px 24px #0000001a}[data-theme=light] .team-space-option{color:#000c}[data-theme=light] .team-space-option:hover:not(.disabled){background:#0000000d}[data-theme=light] .team-space-option.active{background:#6366f11a;color:#4f46e5}[data-theme=light] .team-space-option.disabled{color:#0000004d}[data-theme=light] .team-space-option-tag{color:#0006;border-color:#00000026}.alm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-modal-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:alm-fade-in .2s ease}@keyframes alm-fade-in{0%{opacity:0}to{opacity:1}}.alm-panel{background:var(--color-modal-bg);border:1px solid var(--color-modal-border);border-radius:16px;width:960px;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;box-shadow:var(--color-modal-shadow);animation:alm-slide-up .25s cubic-bezier(.16,1,.3,1)}@keyframes alm-slide-up{0%{transform:translateY(20px) scale(.98);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.alm-header{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;border-bottom:1px solid var(--color-modal-border)}.alm-header-left{display:flex;align-items:center;gap:8px}.alm-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary);letter-spacing:.5px}.alm-tip-wrap{position:relative;display:flex;align-items:center}.alm-tip-icon{color:var(--color-text-muted);cursor:help;transition:color .15s ease}.alm-tip-wrap:hover .alm-tip-icon{color:#c4b5fd}.alm-tip-tooltip{display:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);width:320px;padding:12px 14px;font-size:13px;line-height:1.6;color:var(--color-modal-menu-text);background:var(--color-modal-menu-bg);border:1px solid var(--color-modal-menu-border);border-radius:8px;box-shadow:0 8px 24px var(--color-shadow);z-index:10;pointer-events:none}.alm-tip-wrap:hover .alm-tip-tooltip{display:block}.alm-header-right{display:flex;align-items:center;gap:10px}.alm-search{position:relative;display:flex;align-items:center;padding:0 10px;height:32px;width:220px;background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:8px}.alm-search-icon{color:var(--color-text-muted);flex-shrink:0;margin-right:6px}.alm-search-input{flex:1;min-width:0;color:var(--color-input-text);font-size:13px;padding:0}.alm-search-input::placeholder{color:var(--color-input-placeholder)}.alm-search-clear{background:var(--color-modal-surface-hover-bg);border:none;color:var(--color-text-muted);cursor:pointer;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-left:6px;transition:all .15s ease}.alm-search-clear:hover{background:var(--color-modal-surface-border-hover);color:var(--color-text-primary)}.alm-search-submit{height:32px;padding:0 14px;font-size:13px;font-weight:500;color:var(--color-text-primary);background:var(--color-modal-action-btn-bg);border:1px solid var(--color-modal-action-btn-border);border-radius:8px;cursor:pointer;transition:all .15s ease}.alm-search-submit:hover:not(:disabled){background:var(--color-modal-action-btn-hover-bg);border-color:var(--color-modal-surface-border-hover);color:var(--color-text-primary)}.alm-search-submit:disabled{opacity:.5;cursor:not-allowed}.alm-search-submit-icon{width:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;color:var(--color-modal-search-icon-btn)}.alm-search-submit-icon:hover:not(:disabled){color:var(--color-text-primary)}.alm-close{background:var(--color-bg-subtle);border:none;color:var(--color-text-muted);cursor:pointer;padding:6px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.alm-close:hover{color:var(--color-text-primary);background:var(--color-bg-hover);transform:scale(1.05)}.alm-tabs{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 24px 4px}.alm-tabs-list{display:flex;align-items:center;flex-wrap:wrap;gap:4px;flex:1;min-width:0}.alm-bulk-actions{display:flex;align-items:center;gap:10px;flex-shrink:0;animation:alm-hint-in .2s ease}.alm-bulk-count{font-size:13px;color:#c4b5fd;font-weight:500;white-space:nowrap}.alm-bulk-delete{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;font-size:13px;font-weight:500;color:#fca5a5;background:#dc26261f;border:1px solid rgba(220,38,38,.3);border-radius:8px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.alm-bulk-delete:hover:not(:disabled){color:var(--color-text-primary);background:#dc2626b3;border-color:#dc2626cc}.alm-bulk-delete:disabled{opacity:.6;cursor:not-allowed}.alm-tab{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;font-size:14px;font-weight:500;color:var(--color-text-muted);background:transparent;border:1px solid transparent;border-radius:8px;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.alm-tab:hover{color:var(--color-modal-tab-hover-text)}.alm-tab-active{color:var(--color-text-primary);background:var(--color-modal-surface-active-bg);border-color:var(--color-modal-surface-active-border)}.alm-tab-active:hover{color:var(--color-text-primary);background:var(--color-modal-tab-active-hover-bg)}.alm-tab-name{line-height:1}.alm-ctx-menu{position:fixed;z-index:10000;min-width:140px;padding:4px;background:var(--color-modal-menu-bg);border:1px solid var(--color-modal-menu-border);border-radius:8px;box-shadow:0 8px 24px var(--color-shadow-strong);animation:alm-ctx-in .1s ease}@keyframes alm-ctx-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.alm-ctx-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 12px;font-size:13px;color:var(--color-modal-menu-text);background:transparent;border:none;border-radius:6px;cursor:pointer;text-align:left;transition:background .12s ease,color .12s ease}.alm-ctx-item:hover{background:var(--color-modal-menu-hover-bg)}.alm-ctx-item-danger{color:#f87171}.alm-ctx-item-danger:hover{background:#dc26262e;color:#fca5a5}.alm-tab-add{color:var(--color-text-muted);padding:0 10px}.alm-tab-add:hover{color:var(--color-modal-tab-hover-text);background:var(--color-bg-subtle)}.alm-body{overflow-y:auto;padding:10px 24px 20px;position:relative}.alm-body::-webkit-scrollbar{width:8px}.alm-body::-webkit-scrollbar-track{background:transparent}.alm-body::-webkit-scrollbar-thumb{background:var(--color-bg-active);border-radius:4px}.alm-body::-webkit-scrollbar-thumb:hover{background:var(--color-bg-hover)}.alm-error{color:#ff6b6b;font-size:14px;margin-bottom:16px;text-align:center;background:#ff6b6b1a;padding:10px;border-radius:8px}.alm-limit-hint{text-align:center;font-size:13px;color:#facc15;background:#facc151a;padding:8px 16px;border-radius:8px;margin-bottom:12px;animation:alm-hint-in .25s ease}@keyframes alm-hint-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.alm-grid-wrap{position:relative}.alm-grid-loading .alm-grid{opacity:.3;pointer-events:none}.alm-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;transition:opacity .15s ease}.alm-card-item{display:flex;flex-direction:column;gap:6px;min-width:0}.alm-card-name{font-size:12px;color:var(--color-modal-card-name-text);line-height:1.4;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 2px}.alm-card-name-placeholder{visibility:hidden}.alm-card{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;cursor:pointer;border:2px solid transparent;transition:all .2s ease;background:var(--color-modal-card-bg);box-shadow:0 4px 12px var(--color-shadow)}.alm-card:hover{border-color:var(--color-modal-card-hover-border);transform:translateY(-2px);box-shadow:0 8px 20px #0000004d}.alm-card-selected{border-color:#8b5cf6}.alm-card-selected:hover{border-color:#9f75ff}.alm-card-disabled{opacity:.4;cursor:default;pointer-events:none;filter:grayscale(.5)}.alm-card-deleting{opacity:.4;pointer-events:none}.alm-card-actions{position:absolute;bottom:6px;right:6px;display:flex;gap:4px;opacity:0;transition:opacity .15s ease;z-index:2}.alm-card:hover .alm-card-actions{opacity:1}.alm-action-btn{width:28px;height:28px;border-radius:6px;border:none;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#ddd;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.alm-action-btn:hover{background:var(--color-modal-lightbox-overlay);color:var(--color-text-primary);transform:scale(1.1)}.alm-action-delete:hover{background:#dc2626d9;color:var(--color-text-primary)}.alm-rename-btn{position:absolute;bottom:6px;left:6px;width:28px;height:28px;border-radius:6px;border:none;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#ddd;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:all .15s ease;z-index:2}.alm-card:hover .alm-rename-btn{opacity:1}.alm-rename-btn:hover{background:#8b5cf6d9;color:var(--color-text-primary);transform:scale(1.1)}.alm-thumb{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s ease}.alm-card:hover .alm-thumb{transform:scale(1.05)}.alm-type-tag{position:absolute;top:8px;left:8px;font-size:12px;font-weight:500;padding:3px 8px;border-radius:6px;background:#000000a6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#eee;line-height:1.4;pointer-events:none}.alm-check{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:50%;background:#8b5cf6;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d;animation:alm-pop-in .2s cubic-bezier(.175,.885,.32,1.275)}@keyframes alm-pop-in{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}.alm-added-tag{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;font-weight:500;padding:6px 14px;border-radius:6px;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:var(--color-text-primary);box-shadow:0 4px 12px #0000004d}.alm-card-upload{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:2px dashed var(--color-modal-upload-border);background:var(--color-modal-upload-bg);box-shadow:none}.alm-card-upload:hover{border-color:var(--color-modal-upload-hover-border);background:var(--color-modal-upload-hover-bg);transform:translateY(-2px);box-shadow:0 8px 20px #0003}.alm-card-uploading{pointer-events:none;border-style:solid;border-color:#8b5cf666;background:#8b5cf60d}.alm-upload-icon{color:var(--color-text-muted);transition:color .2s ease,transform .2s ease}.alm-card-upload:hover .alm-upload-icon{color:var(--color-text-primary);transform:translateY(-2px)}.alm-upload-label{font-size:14px;font-weight:500;color:var(--color-text-muted);transition:color .2s ease}.alm-card-upload:hover .alm-upload-label{color:var(--color-text-primary)}.alm-upload-progress{display:flex;flex-direction:column;align-items:center;gap:8px}.alm-upload-spinner{width:24px;height:24px;border:2.5px solid rgba(139,92,246,.3);border-top-color:#8b5cf6;border-radius:50%;animation:alm-spin .8s linear infinite}@keyframes alm-spin{to{transform:rotate(360deg)}}.alm-upload-text{font-size:12px;color:var(--color-text-secondary);font-weight:500}.alm-upload-error{display:flex;flex-direction:column;align-items:center;gap:6px}.alm-upload-error-icon{width:24px;height:24px;border-radius:50%;background:#ff6b6b;color:var(--color-text-primary);font-size:14px;font-weight:700;display:flex;align-items:center;justify-content:center}.alm-upload-hint{font-size:12px;color:var(--color-modal-upload-hint);margin-top:-4px}.alm-card-upload:hover .alm-upload-hint{color:var(--color-modal-upload-hint-hover)}.alm-batch-progress{display:flex;flex-direction:column;gap:6px;margin-bottom:14px;padding:10px 12px;background:#8b5cf60f;border:1px solid rgba(139,92,246,.15);border-radius:10px}.alm-batch-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px;border-radius:6px;background:var(--color-modal-batch-item-bg);font-size:13px;min-height:32px}.alm-batch-item-error{background:#ff6b6b14}.alm-batch-name{color:var(--color-text-secondary);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex-shrink:1}.alm-batch-status{display:flex;align-items:center;gap:6px;color:#a78bfa;font-size:12px;white-space:nowrap;flex-shrink:0}.alm-batch-spinner{width:14px;height:14px;border:2px solid rgba(139,92,246,.3);border-top-color:#8b5cf6;border-radius:50%;animation:alm-spin .8s linear infinite;flex-shrink:0}.alm-batch-error{color:#ff6b6b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1;min-width:0;text-align:right}.alm-loading,.alm-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:var(--color-text-muted);font-size:14px;z-index:1;pointer-events:none}.alm-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-top:1px solid var(--color-modal-footer-border);background:var(--color-modal-footer-bg);border-radius:0 0 16px 16px;gap:16px}.alm-footer-left{display:flex;align-items:center;gap:16px;min-width:0}.alm-footer-info{font-size:13px;color:var(--color-text-muted);white-space:nowrap}.alm-pagination{display:flex;align-items:center;gap:4px}.alm-page-btn{min-width:32px;height:32px;padding:0 6px;font-size:13px;font-weight:500;color:var(--color-text-secondary);background:var(--color-modal-surface-bg);border:1px solid var(--color-modal-surface-border);border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease}.alm-page-btn:hover:not(:disabled){color:var(--color-text-primary);background:var(--color-bg-hover);border-color:var(--color-modal-surface-border-hover)}.alm-page-btn:disabled{opacity:.3;cursor:not-allowed}.alm-page-active{color:var(--color-text-primary);background:#8b5cf6;border-color:#8b5cf6}.alm-page-active:hover:not(:disabled){background:#7c3aed;border-color:#7c3aed}.alm-page-ellipsis{width:28px;text-align:center;color:var(--color-modal-page-ellipsis);font-size:14px;-webkit-user-select:none;user-select:none}.alm-confirm{padding:8px 32px;font-size:15px;font-weight:600;color:var(--color-text-primary);background:#8b5cf6;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #8b5cf64d}.alm-confirm:hover:not(:disabled){background:#7c3aed;transform:translateY(-1px);box-shadow:0 6px 16px #8b5cf666}.alm-confirm:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #8b5cf64d}.alm-confirm:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.alm-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-modal-overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1200;animation:alm-fade-in .15s ease}.alm-confirm-dialog{background:var(--color-modal-bg);border:1px solid var(--color-modal-border);border-radius:16px;padding:32px 36px 28px;width:360px;display:flex;flex-direction:column;align-items:center;gap:12px;box-shadow:var(--color-modal-shadow);animation:alm-slide-up .2s cubic-bezier(.16,1,.3,1)}.alm-confirm-icon{width:56px;height:56px;border-radius:14px;background:#dc26261f;border:1px solid rgba(220,38,38,.25);display:flex;align-items:center;justify-content:center;color:#f87171;margin-bottom:4px}.alm-confirm-title{margin:0;font-size:18px;font-weight:600;color:var(--color-text-primary)}.alm-confirm-desc{margin:0;font-size:14px;color:var(--color-text-muted);text-align:center;line-height:1.6}.alm-confirm-actions{display:flex;gap:12px;margin-top:8px;width:100%}.alm-confirm-cancel{flex:1;padding:10px 0;font-size:14px;font-weight:500;color:var(--color-text-secondary);background:var(--color-modal-secondary-btn-bg);border:1px solid var(--color-modal-secondary-btn-border);border-radius:8px;cursor:pointer;transition:all .2s ease}.alm-confirm-cancel:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.alm-confirm-ok{flex:1;padding:10px 0;font-size:14px;font-weight:600;color:var(--color-text-primary);background:#dc2626;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #dc26264d}.alm-confirm-ok:hover{background:#b91c1c;box-shadow:0 6px 16px #dc262666;transform:translateY(-1px)}.alm-confirm-ok:active{transform:translateY(0)}.alm-rename-dialog{background:var(--color-modal-bg);border:1px solid var(--color-modal-border);border-radius:16px;padding:28px 32px 24px;width:400px;max-width:92vw;display:flex;flex-direction:column;gap:12px;box-shadow:var(--color-modal-shadow);animation:alm-slide-up .2s cubic-bezier(.16,1,.3,1)}.alm-rename-input{width:100%;padding:0 var(--color-input-padding-x, 12px);height:var(--color-input-height, 40px);font-size:14px;color:var(--color-input-text);background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:var(--color-input-radius, 4px);outline:none;transition:border-color .15s ease,box-shadow .15s ease;box-sizing:border-box}.alm-rename-input:hover:not(:disabled):not(:focus){border-color:var(--color-input-border-hover)}.alm-rename-input:focus{border-color:var(--color-input-border-focus);box-shadow:var(--color-input-focus-shadow)}.alm-rename-input::placeholder{color:var(--color-input-placeholder)}.alm-rename-counter{font-size:12px;color:var(--color-modal-rename-counter);text-align:right;margin-top:-4px}.alm-rename-label{font-size:12px;color:var(--color-text-muted);margin-top:4px;margin-bottom:-4px}.alm-rename-select{width:100%;padding:10px 12px;font-size:14px;color:var(--color-text-primary);background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:8px;outline:none;cursor:pointer;transition:border-color .15s ease,background .15s ease;box-sizing:border-box}.alm-rename-select:focus{border-color:var(--color-input-border-focus);background:var(--color-input-bg)}.alm-rename-select:disabled{opacity:.6;cursor:not-allowed}.alm-rename-select option{background:var(--color-modal-menu-bg);color:var(--color-text-primary)}.alm-rename-dialog .alm-confirm-actions{justify-content:flex-end;width:auto}.alm-rename-dialog .alm-confirm-cancel,.alm-rename-dialog .alm-confirm-agree{flex:0 0 auto;min-width:96px;padding:10px 20px}.alm-rename-dialog .alm-confirm-agree{color:var(--color-text-primary);background:var(--color-modal-action-btn-bg);border:1px solid var(--color-modal-action-btn-border);box-shadow:none}.alm-rename-dialog .alm-confirm-agree:hover:not(:disabled){background:var(--color-modal-action-btn-hover-bg);border-color:var(--color-modal-surface-border-hover);box-shadow:none}.alm-rename-dialog .alm-confirm-agree:disabled{opacity:.45;background:var(--color-modal-surface-active-bg);border-color:var(--color-modal-surface-active-border)}.alm-agreement-dialog{background:var(--color-modal-bg);border:1px solid var(--color-modal-border);border-radius:16px;width:560px;max-width:92vw;max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--color-modal-shadow);animation:alm-slide-up .2s cubic-bezier(.16,1,.3,1)}.alm-agreement-header{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--color-modal-border)}.alm-agreement-title{margin:0;font-size:17px;font-weight:600;color:var(--color-text-primary)}.alm-agreement-body{flex:1;overflow-y:auto;padding:20px 24px}.alm-agreement-intro{margin:0 0 16px;font-size:14px;color:#7eb8da;line-height:1.7}.alm-agreement-section{margin:16px 0 8px;font-size:15px;font-weight:600;color:var(--color-text-primary)}.alm-agreement-list{margin:0;padding-left:20px;list-style:disc}.alm-agreement-list li{font-size:14px;color:var(--color-modal-agreement-list-text);line-height:1.7;margin-bottom:6px}.alm-agreement-checkbox{display:flex;align-items:flex-start;gap:8px;margin-top:20px;cursor:pointer;font-size:14px;color:var(--color-text-secondary);line-height:1.5}.alm-agreement-checkbox input[type=checkbox]{margin-top:3px;accent-color:#8b5cf6;width:16px;height:16px;flex-shrink:0}.alm-agreement-footer{display:flex;gap:12px;padding:16px 24px;border-top:1px solid var(--color-modal-footer-border);justify-content:flex-end}.alm-agreement-footer .alm-confirm-cancel{flex:none;padding:10px 20px}.alm-confirm-agree{padding:10px 24px;font-size:14px;font-weight:600;color:var(--color-text-primary);background:#8b5cf6;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #8b5cf64d}.alm-confirm-agree:hover:not(:disabled){background:#7c3aed;box-shadow:0 6px 16px #8b5cf666}.alm-confirm-agree:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.alm-preview-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-modal-lightbox-overlay);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1100;animation:alm-fade-in .15s ease}.alm-preview-close{position:absolute;top:20px;right:20px;background:var(--color-bg-active);border:none;color:var(--color-text-secondary);cursor:pointer;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:1}.alm-preview-close:hover{background:var(--color-bg-hover);color:var(--color-text-primary);transform:scale(1.1)}.alm-preview-content{max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.alm-preview-media{max-width:90vw;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:var(--color-modal-shadow)}.alm-panel{position:relative}.alm-panel-dragover{outline:2px dashed rgba(120,170,255,.65);outline-offset:-8px}.alm-drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#141c2cb8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:16px;display:flex;align-items:center;justify-content:center;z-index:50;pointer-events:none;animation:alm-fade-in .12s ease}.alm-drop-overlay-inner{display:flex;flex-direction:column;align-items:center;gap:12px;color:#ffffffeb;font-size:14px;padding:24px 36px;border:1.5px dashed rgba(160,196,255,.7);border-radius:12px;background:#28345099}.alm-thumb-audio{background:linear-gradient(135deg,#2c2f38,#3a3f4d);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.alm-card:hover .alm-thumb-audio{transform:none}.alm-preview-audio{display:flex;flex-direction:column;align-items:center;gap:18px;padding:36px 48px;background:#2a2d35;border-radius:12px;box-shadow:var(--color-modal-shadow);color:var(--color-text-secondary);min-width:360px;max-width:90vw}.alm-preview-audio-name{font-size:14px;word-break:break-all;text-align:center;max-width:480px}.alm-preview-audio-player{width:100%;outline:none}[data-theme=light] .canvas-handle:hover:after,[data-theme=light] .canvas-handle:focus-visible:after,[data-theme=light] .react-flow__node:hover .canvas-handle:after,[data-theme=light] .react-flow__node.selected .canvas-handle:after,[data-theme=light] .react-flow__handle.canvas-handle.connectingto:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><line x1='2' y1='6' x2='10' y2='6' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/><line x1='6' y1='2' x2='6' y2='10' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/></svg>")}.canvas-projects{width:100%;height:100%;overflow-y:auto;padding:40px 0}.canvas-projects-section{width:100%;max-width:1400px;margin:0 auto 48px;padding:0 48px;box-sizing:border-box}.canvas-projects-heading-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.canvas-projects-heading{font-size:18px;font-weight:600;color:var(--canvas-color-text-primary);margin:0}.canvas-projects-list-error{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:10px 14px;border-radius:10px;background:#f443361f;border:1px solid rgba(244,67,54,.25);color:#ffb4b4f2;font-size:13px}.canvas-projects-retry{margin-left:auto;padding:4px 12px;border-radius:6px;border:1px solid var(--canvas-color-border-strong);background:var(--canvas-color-border-default);color:var(--canvas-color-text-primary);font-size:12px;cursor:pointer}.canvas-projects-retry:hover{background:var(--canvas-color-border-strong)}.canvas-projects-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;width:240px;height:240px;border-radius:14px;background:#ffffff05;border:1px solid var(--canvas-color-bg-subtle);color:var(--canvas-color-text-subtle);font-size:12px}.canvas-projects-loading-spinner{width:22px;height:22px;border:2px solid var(--canvas-color-bg-active);border-top-color:#4caf50d9;border-radius:50%;animation:canvas-projects-spin .65s linear infinite}@keyframes canvas-projects-spin{to{transform:rotate(360deg)}}.canvas-projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,280px));gap:20px;width:100%}.canvas-project-new{border:0;background:transparent;text-align:left;font:inherit;color:inherit}.canvas-project-new:disabled{cursor:wait;opacity:.75}.canvas-project-new-cover{background:#16181c}.canvas-project-new-cover-img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-select:none;user-select:none;transition:transform .3s ease}.canvas-project-new:hover .canvas-project-new-cover-img,.canvas-project-new:focus-visible .canvas-project-new-cover-img{transform:scale(1.04)}.canvas-project-new-info{align-items:stretch;justify-content:center;padding:0 2px}.canvas-project-new-cta{display:inline-flex;align-items:center;justify-content:center;gap:6px;width:100%;height:32px;border-radius:8px;background:var(--canvas-color-state-success-gradient);color:var(--canvas-color-on-success);font-size:13px;font-weight:500;letter-spacing:.2px;transition:filter .15s,color .15s}.canvas-project-new:hover .canvas-project-new-cta,.canvas-project-new:focus-visible .canvas-project-new-cta{filter:brightness(1.03)}.canvas-projects-empty{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;aspect-ratio:4 / 3;border-radius:14px;background:#ffffff0f;border:1px solid var(--canvas-color-border-default);color:var(--canvas-color-text-muted);font-size:12px}.canvas-project-card{position:relative;box-sizing:border-box;display:flex;flex-direction:column;aspect-ratio:4 / 3;padding:12px 12px 0;background:#ffffff0b;border-radius:14px;cursor:pointer;transition:box-shadow .15s,background .15s}.canvas-project-card:hover,.canvas-project-card.is-menu-open{background:#ffffff12;box-shadow:0 14px 32px #0006}.canvas-project-card:focus-visible{outline:none;box-shadow:0 0 0 2px #4caf5059}.canvas-project-cover{position:relative;width:100%;aspect-ratio:256 / 142;display:flex;align-items:center;justify-content:center;border-radius:8px;overflow:hidden;--cover-art-bg-base: #232427;--cover-art-glow-a: rgba(118, 200, 232, .06);--cover-art-glow-b: rgba(76, 175, 80, .05);--cover-art-grid: rgba(255, 255, 255, .05);--cover-art-node-a: rgba(255, 255, 255, .16);--cover-art-node-b: rgba(255, 255, 255, .04);--cover-art-line-a: rgba(118, 200, 232, .45);--cover-art-line-b: rgba(76, 175, 80, .45);--cover-art-stroke: rgba(255, 255, 255, .18);--cover-art-detail: rgba(255, 255, 255, .22);--cover-art-dot: rgba(255, 255, 255, .55);background:radial-gradient(120% 120% at 30% 20%,var(--cover-art-glow-a),rgba(255,255,255,0) 55%),radial-gradient(120% 120% at 80% 90%,var(--cover-art-glow-b),rgba(255,255,255,0) 55%),var(--cover-art-bg-base);color:var(--canvas-color-border-node)}.canvas-project-cover-art{display:block;width:100%;height:100%;opacity:.92;transform-origin:center;transition:opacity .2s ease,transform .3s ease}.canvas-project-card:hover .canvas-project-cover-art,.canvas-project-card.is-menu-open .canvas-project-cover-art{opacity:1;transform:scale(1.04)}.canvas-project-cover-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;transform-origin:center;transition:transform .3s ease}.canvas-project-card:hover .canvas-project-cover-img,.canvas-project-card.is-menu-open .canvas-project-cover-img{transform:scale(1.04)}.canvas-project-menu-trigger{position:absolute;top:20px;right:20px;width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:var(--canvas-color-overlay);color:var(--canvas-color-text-secondary);cursor:pointer;opacity:0;pointer-events:none;transform:translateY(-2px);transition:opacity .15s,transform .15s,background .15s;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.canvas-project-card:hover .canvas-project-menu-trigger,.canvas-project-card:focus-within .canvas-project-menu-trigger,.canvas-project-card.is-menu-open .canvas-project-menu-trigger{opacity:1;pointer-events:auto;transform:translateY(0)}.canvas-project-menu-trigger:hover{background:#000000c7}.canvas-project-menu-trigger:disabled{cursor:wait;opacity:.5}.canvas-project-menu{position:absolute;top:54px;right:20px;min-width:132px;padding:4px;border-radius:10px;background:#1f1f22;border:1px solid var(--canvas-color-border-default);box-shadow:0 14px 32px #00000073;z-index:5;display:flex;flex-direction:column;gap:1px;animation:canvas-project-menu-in .12s ease-out}@keyframes canvas-project-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.canvas-project-menu-item{display:flex;align-items:center;width:100%;padding:8px 12px;border:0;background:transparent;color:var(--canvas-color-text-secondary);font-size:13px;text-align:left;border-radius:6px;cursor:pointer;transition:background .12s,color .12s}.canvas-project-menu-item:hover:not(:disabled){background:var(--canvas-color-border-default)}.canvas-project-menu-item.is-danger{color:#f87171}.canvas-project-menu-item.is-danger:hover:not(:disabled){background:#f871711f;color:#fecaca}.canvas-project-menu-item:disabled{opacity:.5;cursor:not-allowed}.canvas-project-info{flex:1;display:flex;flex-direction:column;justify-content:center;gap:2px;padding:0 2px}.canvas-project-title{font-size:14px;font-weight:400;color:var(--canvas-color-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:.1px;line-height:1.4}.canvas-project-meta{font-size:12px;color:var(--canvas-color-text-muted);line-height:1.5}.canvas-rename-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--canvas-color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:canvas-rename-fade .12s ease-out}@keyframes canvas-rename-fade{0%{opacity:0}to{opacity:1}}.canvas-rename-dialog{box-sizing:border-box;width:min(92vw,400px);padding:22px 24px 20px;border-radius:12px;background:var(--color-modal-bg);border:1px solid var(--color-modal-border);box-shadow:var(--color-modal-shadow);color:var(--color-text-primary);animation:canvas-rename-pop .16s ease-out}@keyframes canvas-rename-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.canvas-rename-title{margin:0 0 16px;font-size:15px;font-weight:500;color:var(--color-modal-title);letter-spacing:.2px}.canvas-rename-input{box-sizing:border-box;display:block;width:100%;height:var(--color-input-height, 40px);padding:0 var(--color-input-padding-x, 12px);border-radius:var(--color-input-radius, 4px);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-input-text);font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.canvas-rename-input::placeholder{color:var(--color-input-placeholder)}.canvas-rename-input:hover:not(:disabled):not(:focus){border-color:var(--color-input-border-hover)}.canvas-rename-input:focus{border-color:var(--color-input-border-focus);box-shadow:var(--color-input-focus-shadow)}.canvas-rename-input:disabled{opacity:.6;cursor:wait}.canvas-rename-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.canvas-rename-btn{height:32px;min-width:64px;padding:0 14px;border-radius:6px;font-size:13px;font-weight:400;cursor:pointer;border:1px solid transparent;transition:background .12s,border-color .12s,color .12s}.canvas-rename-btn-cancel{background:transparent;border-color:var(--color-modal-btn-ghost-border);color:var(--color-modal-btn-ghost-text)}.canvas-rename-btn-cancel:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong);color:var(--color-text-primary)}.canvas-rename-btn-confirm{background:var(--color-modal-btn-primary-bg);color:var(--color-on-success);font-weight:500}.canvas-rename-btn-confirm:hover:not(:disabled){background:var(--color-modal-btn-primary-hover)}.canvas-rename-btn:disabled{opacity:.45;cursor:not-allowed}.canvas-rename-btn-confirm:disabled{background:var(--color-state-success-bg);color:var(--color-text-muted)}[data-theme=light] .canvas-project-card{background:#fff;box-shadow:0 2px 12px #0000001a}[data-theme=light] .canvas-project-card:hover,[data-theme=light] .canvas-project-card.is-menu-open{background:#fff;box-shadow:0 2px 4px #0000001f,0 0 6px #0000000a}[data-theme=light] .canvas-project-card:focus-visible{box-shadow:0 2px 12px #0000001a,0 0 0 2px #67c23a59}[data-theme=light] .canvas-project-cover{--cover-art-bg-base: #f5f7fa;--cover-art-glow-a: rgba(37, 99, 235, .07);--cover-art-glow-b: rgba(103, 194, 58, .06);--cover-art-grid: rgba(0, 0, 0, .06);--cover-art-node-a: rgba(0, 0, 0, .07);--cover-art-node-b: rgba(0, 0, 0, .025);--cover-art-line-a: rgba(37, 99, 235, .38);--cover-art-line-b: rgba(103, 194, 58, .38);--cover-art-stroke: rgba(0, 0, 0, .1);--cover-art-detail: rgba(0, 0, 0, .14);--cover-art-dot: rgba(0, 0, 0, .32)}[data-theme=light] .canvas-project-new-cover{background:#eef1f5}[data-theme=light] .canvas-projects-empty{background:#fff;border-color:#00000014;color:var(--canvas-color-text-muted);box-shadow:0 2px 12px #0000000f}[data-theme=light] .canvas-project-menu-trigger{background:#ffffffeb;color:var(--canvas-color-text-primary);box-shadow:0 1px 4px #0000001f}[data-theme=light] .canvas-project-menu{background:#fff;border-color:var(--canvas-color-border-default);box-shadow:0 14px 32px #0000001f}[data-theme=light] .canvas-project-menu-trigger:hover{background:#fff;color:var(--canvas-color-text-primary);box-shadow:0 2px 8px #00000029}.director-confirm-dialog-message{margin:0;font-size:14px;line-height:1.65;color:var(--color-modal-text)}.director-confirm-dialog-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;min-width:72px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:400;cursor:pointer;border:none;transition:background .12s,color .12s,opacity .12s}.director-confirm-dialog-btn svg{width:15px;height:15px;flex-shrink:0}.director-confirm-dialog-btn--cancel{background:transparent;color:var(--color-text-secondary)}.director-confirm-dialog-btn--cancel:hover:not(:disabled){color:var(--color-text-primary)}.director-confirm-dialog-btn--confirm{font-weight:500;color:var(--color-on-success)}.director-confirm-dialog-btn--confirm-danger{background:var(--color-modal-btn-danger-bg)}.director-confirm-dialog-btn--confirm-danger:hover:not(:disabled){background:var(--color-modal-btn-danger-hover)}.director-confirm-dialog-btn--confirm-primary{background:var(--color-modal-btn-primary-bg)}.director-confirm-dialog-btn--confirm-primary:hover:not(:disabled){background:var(--color-modal-btn-primary-hover)}.director-confirm-dialog-btn:disabled{opacity:.45;cursor:not-allowed}.director-project-new-cover{display:flex;align-items:center;justify-content:center;background:radial-gradient(100% 100% at 20% 0%,rgba(45,212,191,.2),transparent 55%),radial-gradient(100% 100% at 100% 100%,rgba(99,102,241,.18),transparent 50%),#171a1f}.director-project-new-glyph{display:flex;color:#ffffff59}.director-project-new-glyph svg{width:56px;height:56px}.director-script-card-cover{background:radial-gradient(120% 120% at 30% 20%,#2dd4bf14,#fff0 55%),radial-gradient(120% 120% at 80% 90%,#6366f112,#fff0 55%),var(--cover-art-bg-base, #232427)}.director-script-cover-art{opacity:.88}[data-theme=light] .director-project-new-cover{background:radial-gradient(100% 100% at 20% 0%,rgba(45,212,191,.16),transparent 55%),radial-gradient(100% 100% at 100% 100%,rgba(99,102,241,.12),transparent 50%),var(--cover-art-bg-base, #f5f7fa)}[data-theme=light] .director-project-new-glyph{color:#00000047}[data-theme=light] .director-script-card-cover{background:radial-gradient(120% 120% at 30% 20%,#2dd4bf24,#fff0 55%),radial-gradient(120% 120% at 80% 90%,#6366f11a,#fff0 55%),var(--cover-art-bg-base, #f5f7fa)}[data-theme=light] .director-script-cover-art{opacity:1}.director-script-settings{display:flex;flex-direction:column;gap:20px;color:#ffffffeb}.director-script-settings-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.director-script-settings-title{margin:0;font-size:18px;font-weight:600;color:#4caf50;letter-spacing:.02em}.director-script-settings-dialog-title{font-size:18px!important;font-weight:600!important;color:#4caf50!important;letter-spacing:.02em!important}.director-script-settings-estimate{margin:0;font-size:12px;color:#94a3b8bf;white-space:nowrap;padding-top:4px}.director-script-settings-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.director-script-settings-grid-2{display:grid;grid-template-columns:1.4fr .6fr;gap:14px;align-items:end}.director-script-settings-grid-2--equal{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.director-script-settings-field{display:flex;flex-direction:column;gap:6px;min-width:0}.director-script-settings-label{font-size:13px;font-weight:500;color:#ffffffe6}.director-script-settings-hint{margin:0;font-size:11px;line-height:1.45;color:#94a3b8b8}.director-script-settings-select{width:100%}.director-script-settings-select .app-select-trigger{min-height:42px;height:auto;padding-top:11px;padding-bottom:11px}.director-script-settings-audio{display:flex;flex-direction:column;gap:8px}.director-script-settings-toggle-row{display:flex;align-items:center;justify-content:flex-start;min-height:42px}.director-script-settings-workflows-title{margin:0 0 10px;font-size:14px;font-weight:600;color:#ffffffeb}.director-script-settings-workflow-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.director-script-settings-workflow-card{display:flex;gap:12px;align-items:flex-start;text-align:left;padding:14px 14px 14px 12px;border-radius:12px;border:1px solid rgba(255,255,255,.08);background:#1a1a1a;cursor:pointer;transition:border-color .18s,background .18s}.director-script-settings-workflow-card:hover:not(:disabled){border-color:#4caf5047;background:#222}.director-script-settings-workflow-card.is-selected{border-color:#4caf50a6;background:#4caf500f}.director-script-settings-workflow-card:disabled{opacity:.55;cursor:not-allowed}.director-script-settings-workflow-icon{flex-shrink:0;width:36px;height:36px;border-radius:8px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;display:flex;align-items:center;justify-content:center;color:#4caf50d9}.director-script-settings-workflow-icon svg{width:18px;height:18px}.director-script-settings-workflow-text{min-width:0}.director-script-settings-workflow-name{margin:0 0 4px;font-size:13px;font-weight:600;color:#ffffffeb}.director-script-settings-workflow-desc{margin:0;font-size:11px;line-height:1.5;color:#94a3b8c7}.director-script-settings-name-block{display:flex;flex-direction:column;gap:6px}.director-script-settings-name-input{width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#1e1e1e;color:#ffffffe6;font-size:14px;padding:10px 14px}.director-script-settings-name-input:focus{outline:none;border-color:#4caf5080}.director-script-settings-name-input:disabled{opacity:.55}@media (max-width: 720px){.director-script-settings-grid-3,.director-script-settings-grid-2,.director-script-settings-workflow-grid{grid-template-columns:1fr}}.login-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;animation:login-overlay-fade .18s ease-out}@keyframes login-overlay-fade{0%{opacity:0}to{opacity:1}}.login-modal-card{position:relative;width:100%;max-width:420px;background:var(--color-bg-panel);border:1px solid var(--color-border-default);border-radius:16px;padding:40px 36px 32px;box-shadow:0 20px 60px var(--color-shadow-strong);color:var(--color-text-primary);display:flex;flex-direction:column;align-items:center;box-sizing:border-box;animation:login-card-pop .22s cubic-bezier(.2,.9,.3,1.2)}@keyframes login-card-pop{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.login-theme-toggle{position:absolute;top:12px;left:12px;z-index:2}.login-close{position:absolute;top:12px;right:12px;width:32px;height:32px;border:none;background:transparent;color:var(--color-text-muted);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:color .2s,background .2s;z-index:2}.login-close:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.login-header{display:flex;flex-direction:column;align-items:center;width:100%}.login-logo{display:flex;align-items:center;gap:8px;margin-top:4px;color:var(--color-text-tertiary)}.login-logo-icon{flex-shrink:0;width:28px;height:28px;display:block}.login-logo-text{font-size:18px;font-weight:500;color:inherit;letter-spacing:1px}.login-title{text-align:center;margin-top:20px;margin-bottom:32px}.login-title h1{font-size:22px;font-weight:600;line-height:1.5;color:var(--color-text-primary);margin:0}.login-form-wrapper{width:100%;display:flex;flex-direction:column;align-items:center}.login-tabs{display:flex;gap:24px;margin-bottom:20px;width:100%;justify-content:center}.login-tab{background:none;border:none;color:var(--color-text-muted);font-size:14px;cursor:pointer;padding:4px 0;position:relative;transition:color .2s}.login-tab.active{color:var(--color-text-primary)}.login-tab.active:after{content:"";position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--color-text-primary);border-radius:1px}.login-tab:hover{color:var(--color-text-tertiary)}.login-tab.active:hover{color:var(--color-text-primary)}.login-form{width:100%;display:flex;flex-direction:column;gap:12px}.input-group{display:flex;align-items:center;height:48px;padding:0 16px;box-sizing:border-box}.input-prefix{color:var(--color-text-muted);font-size:14px;white-space:nowrap;margin-right:8px;padding-right:8px;border-right:1px solid var(--color-border-strong);-webkit-user-select:none;user-select:none}.input-group input{flex:1;min-width:0;color:var(--color-input-text);font-size:14px;height:100%;padding:0}.input-clear{background:none;border:none;color:var(--color-text-subtle);font-size:16px;cursor:pointer;padding:0 0 0 8px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:color .2s}.input-clear:hover{color:var(--color-text-muted)}.input-suffix-text{color:var(--color-text-muted);font-size:13px;white-space:nowrap;padding-left:8px;-webkit-user-select:none;user-select:none;flex-shrink:0}.input-suffix-btn{background:none;border:none;color:var(--color-text-muted);font-size:13px;cursor:pointer;white-space:nowrap;padding:4px 0;transition:color .2s}.input-suffix-btn:hover{color:var(--color-text-tertiary)}.login-btn{width:100%;height:48px;margin-top:12px;border:none;border-radius:24px;background:var(--color-brand);color:var(--color-text-on-light);font-size:15px;font-weight:500;cursor:pointer;transition:opacity .2s,transform .1s,background .2s,filter .2s}.login-btn:hover:not(:disabled){opacity:.9;transform:translateY(-1px);background:var(--color-brand-hover)}[data-theme=light] .login-btn:not(:disabled){background:var(--color-state-success-gradient);color:var(--color-on-success)}[data-theme=light] .login-btn:hover:not(:disabled){background:var(--color-state-success-gradient);filter:brightness(1.03);opacity:1}.login-error{color:var(--color-state-error);font-size:13px;margin-top:4px}.login-btn:disabled,.input-suffix-btn:disabled{opacity:.5;cursor:not-allowed}.input-group input:disabled{color:var(--color-text-disabled)}.login-footer{margin-top:24px;text-align:center;width:100%}.login-footer p{font-size:11px;color:var(--color-text-subtle);line-height:1.6;margin:0}.login-footer a{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.login-footer a:hover{color:var(--color-text-tertiary)}.invitation-code-group{border-style:dashed}.invitation-code-group:focus-within{border-style:dashed}.invitation-code-group input{letter-spacing:4px;font-size:15px;text-transform:none}@media (max-width: 480px){.login-modal-card{padding:32px 24px 24px}.login-title h1{font-size:20px}}[data-theme=dark] .home-layout{--home-hero-glow: rgba(99, 102, 241, .08);--home-prompt-box-bg: rgba(15, 23, 23, .82);--home-prompt-focus-border: rgba(255, 255, 255, .2);--home-scroll-btn-bg: rgba(55, 65, 81, .9);--home-scroll-btn-text: #e5e7eb;--home-settings-popup-bg: #232323;--home-type-switcher-bg: #1a1a24;--home-video-gen-title: #c7d2fe;--home-video-gen-detail: rgba(199, 210, 254, .5);--home-profile-tab-indicator: #6366f1;--home-prompt-submit-tooltip-bg: #2a2a3a}[data-theme=light] .home-layout{--home-hero-glow: rgba(99, 102, 241, .05);--home-prompt-box-bg: var(--color-bg-panel);--home-prompt-focus-border: var(--color-border-focus);--home-scroll-btn-bg: var(--color-bg-elevated);--home-scroll-btn-text: var(--color-text-primary);--home-settings-popup-bg: var(--color-bg-panel);--home-type-switcher-bg: var(--color-bg-panel);--home-video-gen-title: var(--color-accent-primary);--home-video-gen-detail: var(--color-text-muted);--home-profile-tab-indicator: var(--color-accent-primary);--home-prompt-submit-tooltip-bg: var(--color-bg-panel);--home-sidebar-pill-bg: #ffffff;--home-sidebar-pill-border: #d8dee8;--home-sidebar-pill-shadow: 0 10px 24px rgba(31, 41, 55, .06);--home-sidebar-btn-hover-bg: #f4f6f8;--home-sidebar-btn-active-bg: #f0f2f5;--home-sidebar-btn-icon: #5f6b7a;--home-sidebar-btn-active-icon: #0f172a}.home-top-chrome{position:fixed;top:16px;right:16px;display:inline-flex;align-items:center;gap:8px;z-index:100}[data-theme] .home-top-chrome .home-top-theme-toggle,[data-theme] .home-top-chrome .home-top-theme-toggle:hover{width:38px;height:38px;border-radius:12px;background:transparent;border:none}[data-theme] .home-top-chrome .home-top-theme-toggle{color:var(--color-text-secondary)}[data-theme] .home-top-chrome .home-top-theme-toggle:hover{color:var(--color-text-primary)}.home-top-settings-wrapper{position:relative;display:inline-flex}.home-top-settings-wrapper .home-top-settings-popup{top:calc(100% + 8px);bottom:auto;left:auto;right:0}.home-top-settings-popup:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.home-top-credit-pill{display:inline-flex;align-items:center;gap:4px;height:32px;padding:0 10px;border:none;border-radius:16px;background:var(--color-inverted-btn-bg);color:var(--color-inverted-btn-fg);font-size:14px;font-weight:600;cursor:pointer;transition:transform .15s,opacity .15s}.home-top-credit-pill:hover{transform:translateY(-1px);opacity:.92}.home-top-credit-pill svg{width:20px;height:20px;color:#5eead4}.home-top-credit-num{letter-spacing:.3px}.home-top-credit-recharge{margin-left:0;padding-left:4px;border-left:1px solid var(--color-inverted-btn-border);font-weight:500;opacity:.85}.home-top-avatar{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;padding:0;border-radius:50%;background:var(--color-bg-elevated);border:1px solid var(--color-border-default);color:var(--color-text-secondary);cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.home-top-avatar svg{width:20px;height:20px}.home-top-avatar:hover{transform:scale(1.05);border-color:var(--color-border-strong)}.home-top-avatar.active{border-color:var(--color-credit);box-shadow:0 0 0 2px var(--color-credit)}.home-top-login-btn{display:inline-flex;align-items:center;gap:6px;height:38px;padding:0 16px;border:none;border-radius:19px;background:var(--color-brand);color:var(--color-text-on-light);font-size:14px;font-weight:500;cursor:pointer;box-shadow:0 4px 12px var(--color-brand-soft);transition:background .2s,transform .2s,box-shadow .2s}.home-top-login-btn svg{width:18px;height:18px}.home-top-login-btn:hover{background:var(--color-brand-hover);transform:translateY(-1px);box-shadow:0 6px 16px var(--color-brand-ring)}.home-layout{display:flex;height:100vh;width:100vw;overflow:hidden;background:var(--color-bg-page);color:var(--color-text-primary)}.home-help-wrap{position:relative;display:inline-flex}.home-help-btn{width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background:transparent;border:none;border-radius:12px;cursor:pointer;transition:color .15s}.home-help-btn:hover{background:transparent;color:var(--color-text-primary)}.home-help-tip{position:absolute;top:calc(100% + 8px);right:0;padding:6px 10px;font-size:12px;line-height:1.4;color:var(--color-text-primary);background:var(--color-bg-panel);border:1px solid var(--color-border-default);border-radius:8px;white-space:nowrap;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity .15s ease,transform .15s ease;box-shadow:0 4px 16px var(--color-shadow-strong)}.home-help-wrap:hover .home-help-tip,.home-help-btn:focus-visible+.home-help-tip{opacity:1;transform:translateY(0)}.home-help-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:140px;padding:6px;background:var(--color-bg-panel);border:1px solid var(--color-border-default);border-radius:10px;box-shadow:0 8px 24px var(--color-shadow-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.home-help-menu:before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px}.home-help-menu-item{display:block;padding:8px 12px;font-size:13px;color:var(--color-text-secondary);text-decoration:none;border-radius:7px;cursor:pointer;transition:background .12s,color .12s}.home-help-menu-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.home-help-community{position:relative}.home-help-community-qr{position:absolute;top:50%;right:calc(100% + 12px);transform:translateY(-50%) scale(.96);transform-origin:right center;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;background:var(--color-bg-panel);border:1px solid var(--color-border-strong);border-radius:12px;box-shadow:0 8px 28px var(--color-shadow-strong);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .15s ease,transform .15s ease,visibility .15s;z-index:20}.home-help-community-qr:after{content:"";position:absolute;top:0;bottom:0;right:-12px;width:12px}.home-help-community-qr img{width:160px;height:160px;display:block;border-radius:8px;background:var(--color-text-primary)}.home-help-community-qr span{font-size:12px;color:var(--color-text-tertiary);white-space:nowrap}.home-help-community:hover .home-help-community-qr{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(-50%) scale(1)}.home-top-wechat{display:inline-flex;align-items:center;padding:0}.home-top-wechat .home-help-community-qr{top:calc(100% + 8px);right:auto;left:50%;transform:translate(-50%) scale(.96);transform-origin:top center}.home-top-wechat .home-help-community-qr:after{top:-8px;bottom:auto;right:0;left:0;width:auto;height:8px}.home-top-wechat:hover .home-help-community-qr{transform:translate(-50%) scale(1)}.sidebar{width:90px;min-width:64px;display:flex;flex-direction:column;align-items:center;padding:8px 0 20px;z-index:10;position:relative}.sidebar-logo{width:56px;height:56px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--color-text-primary)}.sidebar-logo svg{width:56px;height:56px;display:block}.sidebar-pill{display:flex;flex-direction:column;align-items:center;gap:12px;padding:10px 8px;background:var(--home-sidebar-pill-bg, var(--color-bg-subtle));border:1px solid var(--home-sidebar-pill-border, transparent);box-shadow:var(--home-sidebar-pill-shadow, none);border-radius:20px;margin:auto 0}.sidebar-btn{width:40px;height:40px;border:none;background:transparent;color:var(--color-text-icon-muted);cursor:pointer;display:flex;align-items:center;justify-content:center;border-radius:12px;transition:all .2s;position:relative}.sidebar-btn:hover{color:var(--color-text-secondary);background:var(--home-sidebar-btn-hover-bg, var(--color-bg-subtle))}.sidebar-btn[data-tooltip]:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 4px);top:50%;transform:translateY(-50%) translate(-4px);white-space:nowrap;font-size:13px;font-weight:500;color:var(--color-tooltip-text);background:var(--color-tooltip-bg);border-radius:6px;padding:6px 10px;pointer-events:none;opacity:0;transition:opacity .18s ease,transform .18s ease;z-index:100;box-shadow:0 2px 8px var(--color-shadow)}.sidebar-btn[data-tooltip]:hover:after{opacity:1;transform:translateY(-50%) translate(0)}.sidebar-btn.active{color:var(--home-sidebar-btn-active-icon, var(--color-brand));background:var(--home-sidebar-btn-active-bg, var(--color-bg-active))}[data-theme=light] .sidebar-btn{color:var(--home-sidebar-btn-icon)}.sidebar-btn svg{width:24px;height:24px}.main-content{flex:1;display:flex;flex-direction:column;align-items:center;overflow-y:auto;position:relative}.main-content:before{content:"";position:fixed;top:-200px;left:50%;transform:translate(-50%);width:800px;height:600px;background:radial-gradient(ellipse,var(--home-hero-glow) 0%,transparent 70%);pointer-events:none;z-index:0}.hero-section{display:flex;flex-direction:column;align-items:center;padding-top:16vh;width:100%;max-width:850px;position:relative;z-index:1}.hero-title{font-size:36px;font-weight:600;color:var(--color-text-primary);margin-bottom:32px;letter-spacing:1px;text-align:center;width:100%}.prompt-box{width:100%;background:var(--home-prompt-box-bg);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-radius:20px;padding:10px;transition:padding .3s ease,border-radius .3s ease,background .3s ease,backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease,border-color .3s ease}.home-layout .prompt-textarea,.home-layout .mention-input-editor,.home-layout .mention-box-editor,.home-layout .home-voice-editor{border:none!important;background:transparent!important;box-shadow:none!important;outline:none}.home-layout .prompt-textarea:focus,.home-layout .mention-input-editor:focus,.home-layout .mention-box-editor:focus,.home-layout .home-voice-editor:focus{border:none!important;box-shadow:none!important}[data-theme=dark] .home-layout .prompt-textarea::placeholder{color:#ffffff40}[data-theme=light] .home-layout .prompt-textarea::placeholder{color:var(--color-text-subtle)}[data-theme=dark] .home-layout .mention-input-placeholder{color:#ffffff40}[data-theme=light] .home-layout .mention-input-placeholder{color:var(--color-text-subtle)}[data-theme=dark] .home-layout .home-voice-editor:empty:before{color:#ffffff40}[data-theme=light] .home-layout .home-voice-editor:empty:before{color:var(--color-text-subtle)}.prompt-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.prompt-tag{font-size:13px;color:var(--color-text-subtle);background:linear-gradient(135deg,var(--color-accent-purple-soft),var(--color-accent-primary-soft));padding:2px 10px;border-radius:4px;border:1px solid var(--color-accent-purple-soft)}.prompt-separator{color:var(--color-border-focus);font-size:13px}.prompt-counter{font-size:13px;color:var(--color-text-subtle)}.prompt-input-area{display:flex;align-items:flex-start;width:100%}.frame-upload-area{display:inline-flex;align-items:center;gap:4px;padding:4px;margin-right:2px;opacity:1;max-height:200px;transition:opacity .25s ease,max-height .3s ease,padding .3s ease,margin .3s ease;flex-shrink:0}.ref-asset-upload{flex-shrink:0;cursor:pointer;margin-left:4px}.ref-asset-frame{width:48px;height:64px;border-radius:6px;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;position:relative}.ref-asset-empty{border:1.5px dashed var(--color-border-focus);background:var(--color-bg-faint);color:var(--color-text-icon-muted);gap:2px;transition:border-color .2s,background .2s}.ref-asset-upload:hover .ref-asset-empty{border-color:var(--color-text-icon-muted);background:var(--color-bg-subtle)}.ref-asset-add-text{font-size:10px;line-height:1}.frame-upload-card{width:48px;height:64px;background:var(--color-bg-faint);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;transition:all .2s}.frame-upload-card:hover{background:var(--color-bg-hover)}.frame-upload-card.first-frame{transform:rotate(-6deg)}.frame-upload-card.last-frame{transform:rotate(6deg)}.frame-upload-plus{font-size:18px;color:var(--color-text-muted);font-weight:300}.frame-upload-text{font-size:12px;color:var(--color-text-muted)}.frame-upload-card.disabled{opacity:.4;cursor:not-allowed}.frame-upload-card.has-image{padding:0;overflow:hidden}.frame-upload-preview{width:100%;height:100%;object-fit:cover;border-radius:8px;display:block}.frame-upload-remove{position:absolute;top:3px;right:3px;width:18px;height:18px;border-radius:50%;border:none;background:#0009;color:var(--color-text-primary);font-size:9px;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;line-height:1;transition:background .2s}.frame-upload-remove:hover{background:#ef4444cc}.frame-upload-card{position:relative}.frame-asset-tag{position:absolute;top:3px;left:3px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:var(--color-text-primary);font-size:8px;line-height:1;padding:2px 4px;border-radius:3px;font-weight:600;letter-spacing:.3px;pointer-events:none;z-index:1}.frame-asset-btn{margin-left:8px}.frame-upload-swap{color:var(--color-text-subtle);display:flex;align-items:center;justify-content:center;margin:0 4px}[data-theme=light] .frame-upload-card:not(.has-image){border:1.5px dashed var(--color-neutral-border-1);background:var(--color-neutral-white)}[data-theme=light] .frame-upload-card:not(.has-image):hover{border-color:var(--color-neutral-text-placeholder);background:var(--color-neutral-border-4)}[data-theme=light] .frame-upload-plus,[data-theme=light] .frame-upload-text{color:var(--color-neutral-text-regular)}[data-theme=light] .ref-asset-empty{border-color:var(--color-neutral-border-1);background:var(--color-neutral-white);color:var(--color-neutral-text-regular)}[data-theme=light] .ref-asset-upload:hover .ref-asset-empty{border-color:var(--color-neutral-text-placeholder);background:var(--color-neutral-border-4)}[data-theme=light] .ref-asset-add-text{color:var(--color-neutral-text-regular)}[data-theme=light] .frame-upload-swap{color:var(--color-neutral-text-secondary)}.prompt-textarea{flex:1;width:100%;min-height:80px;max-height:200px;background:transparent;border:none;outline:none;color:var(--color-text-primary);font-size:14px;font-weight:400;line-height:1.6;resize:none;font-family:inherit;transition:min-height .3s ease,max-height .3s ease,font-size .3s ease,line-height .3s ease,padding .3s ease}.prompt-textarea::placeholder{font-size:15px}.prompt-input-editor-wrap{position:relative;flex:1;width:100%;min-width:0;display:flex;flex-direction:column;cursor:text}.home-layout .prompt-input-editor-wrap .mention-input-editor,.home-layout .prompt-input-editor-wrap .mention-box-editor,.home-layout .prompt-input-editor-wrap .home-voice-editor{min-height:80px}.generate-prompt-wrapper.compact .prompt-input-editor-wrap{cursor:auto}.generate-prompt-wrapper.compact .prompt-input-editor-wrap .mention-input-editor,.generate-prompt-wrapper.compact .prompt-input-editor-wrap .mention-box-editor,.generate-prompt-wrapper.compact .prompt-input-editor-wrap .home-voice-editor{min-height:44px}.home-prompt-typewriter{font-size:14px;line-height:1.6;padding:0}[data-theme=dark] .home-layout .home-prompt-typewriter{--typewriter-placeholder-color: rgba(255, 255, 255, .25)}[data-theme=light] .home-layout .home-prompt-typewriter{--typewriter-placeholder-color: var(--color-text-subtle)}.generate-prompt-wrapper.compact .home-prompt-typewriter{font-size:13px;line-height:22px;padding:0 4px}.prompt-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:10px;min-height:28px;overflow:visible;transition:margin-top .3s ease,min-height .3s ease}.prompt-footer-right{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.prompt-credits{display:flex;align-items:center;gap:4px;color:var(--color-text-icon-muted);font-size:13px;font-weight:500;opacity:1;max-height:40px;transition:opacity .25s ease,max-height .3s ease}.prompt-credits svg{color:var(--color-text-icon-muted)}.prompt-submit-wrap{position:relative;flex-shrink:0}.prompt-submit-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);white-space:nowrap;font-size:14px;line-height:1;color:var(--color-text-primary);background:var(--home-prompt-submit-tooltip-bg);border:none;border-radius:8px;padding:8px 14px;pointer-events:none;opacity:0;transition:opacity .15s;display:flex;align-items:center;justify-content:center}.prompt-submit-wrap:hover .prompt-submit-tooltip{opacity:1}.prompt-submit{flex-shrink:0;width:36px;height:36px;border:1px solid var(--color-inverted-btn-border);border-radius:50%;background:var(--color-inverted-btn-bg);color:var(--color-inverted-btn-fg);cursor:not-allowed;display:flex;align-items:center;justify-content:center;padding:0;opacity:.45;transition:transform .2s,opacity .2s,background .2s,border-color .2s,color .2s}.prompt-submit.active{background:var(--color-inverted-btn-bg);color:var(--color-inverted-btn-fg);border-color:var(--color-inverted-btn-border);cursor:pointer;opacity:1}.prompt-submit.active:hover{background:var(--color-inverted-btn-hover-bg);border-color:var(--color-inverted-btn-hover-border);color:var(--color-inverted-btn-fg);transform:scale(1.04)}.prompt-submit svg{width:26px;height:26px;color:inherit}.type-tabs{display:flex;gap:20px;margin-top:40px}.type-tab{display:flex;align-items:center;gap:8px;padding:8px 20px;border-radius:12px;border:1px solid var(--color-bg-active);background:var(--color-bg-faint);color:var(--color-text-tertiary);font-size:18px;cursor:pointer;transition:all .2s;white-space:nowrap}.type-tab:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.type-tab.active{background:var(--color-bg-active);border-color:var(--color-border-focus);color:var(--color-text-primary)}.type-tab-svg{width:18px;height:18px;flex-shrink:0}.type-tab-icon{width:20px;height:20px;border-radius:4px;display:flex;align-items:center;justify-content:center;font-size:12px}.type-tab-icon.drama{background:linear-gradient(135deg,#f97316,#ef4444)}.type-tab-icon.mv{background:linear-gradient(135deg,#ec4899,#a855f7)}.type-tab-icon.knowledge{background:linear-gradient(135deg,#6366f1,#3b82f6)}.video-gen-status{width:100%;margin-top:20px;border-radius:12px;overflow:hidden}.video-gen-progress{display:flex;align-items:center;gap:14px;padding:16px 20px;background:var(--color-accent-primary-soft);border:1px solid var(--color-accent-primary-soft);border-radius:12px}.video-gen-spinner{width:24px;height:24px;border:2.5px solid rgba(99,102,241,.2);border-top-color:#6366f1;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.video-gen-text{display:flex;flex-direction:column;gap:2px}.video-gen-title{font-size:14px;font-weight:500;color:var(--home-video-gen-title)}.video-gen-detail{font-size:12px;color:var(--home-video-gen-detail)}.video-gen-result{display:flex;flex-direction:column;gap:12px}.video-gen-player{width:100%;max-height:400px;border-radius:12px;background:#000;object-fit:contain}.video-gen-actions{display:flex;gap:10px;justify-content:center}.video-gen-download{padding:8px 20px;border-radius:8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:var(--color-text-primary);font-size:13px;font-weight:500;text-decoration:none;transition:opacity .2s}.video-gen-download:hover{opacity:.85}.video-gen-retry{padding:8px 20px;border-radius:8px;border:1px solid var(--color-border-strong);background:var(--color-bg-subtle);color:var(--color-text-tertiary);font-size:13px;cursor:pointer;transition:all .2s}.video-gen-retry:hover{background:var(--color-bg-active);color:var(--color-text-primary)}.video-gen-error{display:flex;align-items:center;gap:10px;padding:14px 20px;background:var(--color-state-error-bg);border:1px solid var(--color-state-error-bg);border-radius:12px}.video-gen-error-icon{width:22px;height:22px;border-radius:50%;background:#ef444433;color:var(--color-state-error-text);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}.video-gen-error-text{font-size:13px;color:var(--color-state-error-text);flex:1}.prompt-submit.generating{opacity:.7;cursor:wait}.prompt-submit-spinner{width:18px;height:18px;border:2px solid var(--color-shadow);border-top-color:var(--color-inverted-btn-fg);border-radius:50%;animation:spin .7s linear infinite}.generate-section{--content-max-width: 1100px;--prompt-dock-height: 200px;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;position:relative}.generate-section .video-history-container{padding-bottom:calc(var(--prompt-dock-height) + 16px)}.history-search-anchor{position:absolute;top:70px;left:0;right:0;z-index:10;display:flex;justify-content:flex-end;align-items:center;gap:8px;max-width:var(--content-max-width);margin:0 auto;padding:0 24px;pointer-events:none}.history-search-bar{display:flex;align-items:center;gap:6px;background:#18181bf2;border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:6px 12px;min-width:160px;max-width:240px;pointer-events:auto}.history-search-bar:focus-within{border-color:#ffffff2e;box-shadow:none}.history-search-bar svg{width:16px;height:16px;color:#ffffff59;flex-shrink:0}.history-search-bar .history-search-input{flex:1;background:transparent;border:none;outline:none;box-shadow:none;height:auto;min-height:0;padding:0;color:#f3f4f6;font-size:13px;min-width:0}.history-search-bar .history-search-input::placeholder{color:#ffffff4d}.history-search-bar .history-search-input:hover,.history-search-bar .history-search-input:focus{background:transparent;border:none;box-shadow:none;outline:none;color:#f3f4f6}[data-theme=light] .history-search-bar{background:#fff;border-color:#e0e0e0;color-scheme:light}[data-theme=light] .history-search-bar:focus-within{border-color:#bbb}[data-theme=light] .history-search-bar svg{color:#00000059}[data-theme=light] .history-search-bar .history-search-input{color:#111}[data-theme=light] .history-search-bar .history-search-input::placeholder{color:#0000004d}[data-theme=light] .history-search-bar .history-search-input:hover,[data-theme=light] .history-search-bar .history-search-input:focus{color:#111}[data-theme=light] .history-search-clear svg{color:#00000059}[data-theme=light] .history-search-clear:hover svg{color:#000000a6}.history-search-clear{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:0;cursor:pointer}.history-search-clear svg{width:14px;height:14px;color:#fff6}.history-search-clear:hover svg{color:#ffffffb3}.generate-history-wrapper{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column-reverse}.scroll-to-bottom-btn{position:absolute;bottom:calc(var(--prompt-dock-height, 200px) + 16px);right:24px;z-index:15;display:flex;align-items:center;gap:4px;padding:8px 16px;border-radius:20px;border:none;background:var(--home-scroll-btn-bg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--home-scroll-btn-text);font-size:13px;font-weight:500;cursor:pointer;box-shadow:0 2px 12px var(--color-shadow);transition:background .15s ease,transform .15s ease;animation:scroll-btn-in .2s ease}.scroll-to-bottom-btn:hover{background:var(--color-bg-hover)}.scroll-to-bottom-btn:active{transform:scale(.96)}@keyframes scroll-btn-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.generate-prompt-wrapper{position:absolute;bottom:0;left:0;right:0;z-index:10;padding:20px 24px 32px;display:flex;flex-direction:column;align-items:center;width:100%;background:transparent;pointer-events:none;transition:padding .3s ease}.generate-prompt-wrapper>*{pointer-events:auto;width:100%;max-width:850px;transition:max-width .3s ease}.generate-prompt-wrapper.compact{padding:10px 24px 16px;background:transparent}.generate-prompt-wrapper.compact>*{max-width:880px}.generate-prompt-wrapper.compact .prompt-box{padding:8px 12px;border-radius:20px;display:flex;flex-direction:row;align-items:center;gap:8px}.generate-prompt-wrapper.compact .prompt-input-area{flex:1;flex-direction:row;align-items:center;min-width:0;overflow:hidden}.generate-prompt-wrapper.compact .prompt-textarea{flex:1;min-width:0;min-height:44px;max-height:44px;resize:none;font-size:13px;line-height:22px;padding:0 4px;overflow-y:auto}.generate-prompt-wrapper.compact .mention-input-editor{font-size:13px;line-height:22px;min-height:44px;max-height:44px;overflow-y:auto;padding:0 4px}.generate-prompt-wrapper.compact .mention-input-placeholder{font-size:13px;line-height:22px;padding:0 4px}.generate-prompt-wrapper.compact .prompt-footer{margin-top:0;min-height:0;flex-shrink:0;width:auto}.generate-prompt-wrapper.compact .prompt-footer-right{gap:0;margin-left:0}.generate-prompt-wrapper.compact .prompt-footer>*:not(.prompt-footer-right){opacity:0;max-height:0;max-width:0;overflow:hidden;margin:0;padding:0;pointer-events:none}.generate-prompt-wrapper.compact .prompt-credits{opacity:0;max-height:0;max-width:0;overflow:hidden;padding:0;pointer-events:none}.generate-prompt-wrapper.compact .prompt-submit-tooltip{opacity:0;pointer-events:none}.generate-prompt-wrapper.compact .frame-upload-area{padding:2px 0;margin-right:8px}.generate-prompt-wrapper.compact .frame-upload-card{width:36px;height:48px;border-radius:6px}.generate-prompt-wrapper.compact .frame-upload-swap{margin:0 2px}.generate-prompt-wrapper.compact .frame-upload-swap svg{width:12px;height:12px}.generate-prompt-wrapper.compact .frame-upload-plus{font-size:14px}.generate-prompt-wrapper.compact .frame-upload-text{font-size:9px}.generate-prompt-wrapper.compact .video-gen-status{opacity:0;max-height:0;overflow:hidden;pointer-events:none}@keyframes spin{to{transform:rotate(360deg)}}.profile-section{display:flex;justify-content:center;align-items:flex-start;height:100%;width:100%;background:var(--color-bg-page);padding:72px 20px 40px;overflow-y:auto;position:relative}.profile-container{display:flex;flex-direction:column;gap:24px;width:100%;max-width:1100px}.profile-card{position:relative;background:var(--color-bg-faint);border:1px solid var(--color-border-default);border-radius:24px;padding:24px 32px;display:flex;flex-direction:column;box-shadow:0 8px 32px var(--color-shadow)}.profile-header{display:flex;align-items:center;gap:20px;width:100%}.profile-avatar{width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#f97316,#a855f7);display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);flex-shrink:0;box-shadow:0 4px 16px var(--color-shadow)}.profile-info{flex:1;display:flex;flex-direction:column;gap:6px}.profile-name{font-size:20px;font-weight:600;color:var(--color-text-primary);margin:0;display:flex;align-items:center;gap:12px}.profile-id{font-size:13px;color:var(--color-text-muted);margin:0;font-family:monospace;display:flex;align-items:center;gap:12px}.profile-id-item{display:inline-flex;align-items:center;gap:4px}.profile-parent-id{color:#fbbf24b3;font-size:12px}.id-copy-btn{background:none;border:none;padding:2px;cursor:pointer;color:var(--color-text-subtle);display:inline-flex;align-items:center;justify-content:center;border-radius:4px;transition:all .15s}.id-copy-btn svg{width:13px;height:13px}.id-copy-btn:hover{color:var(--color-text-tertiary);background:var(--color-bg-hover)}.id-copy-btn:active{color:var(--color-credit)}.profile-badge{font-size:11px;padding:2px 8px;border-radius:6px;font-weight:500}.profile-badge.child{background:#fbbf2426;color:#fbbf24;border:1px solid rgba(251,191,36,.25)}.profile-badge.parent{background:#5eead426;color:var(--color-credit);border:1px solid rgba(94,234,212,.25)}.profile-stat-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;padding-left:20px;border-left:1px solid var(--color-bg-hover)}.profile-invitation-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--color-bg-hover)}.profile-tabs-container{background:var(--color-bg-faint);border:1px solid var(--color-border-default);border-radius:24px;overflow:hidden;box-shadow:0 8px 32px var(--color-shadow)}.profile-tabs{display:flex;border-bottom:1px solid var(--color-bg-hover);background:var(--color-shadow)}.profile-tab{padding:16px 32px;background:none;border:none;color:var(--color-text-muted);font-size:15px;font-weight:500;cursor:pointer;position:relative;transition:color .2s}.profile-tab:hover{color:var(--color-text-secondary)}.profile-tab.active{color:var(--color-text-primary)}.profile-tab.active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--home-profile-tab-indicator)}.profile-tab-content{padding:24px 32px}.stat-value{font-size:28px;font-weight:600;color:var(--color-credit);font-family:monospace;line-height:1}.stat-label{font-size:12px;color:var(--color-text-icon-muted)}.settings-popup{position:absolute;bottom:0;left:calc(100% + 10px);background:var(--home-settings-popup-bg);border:1px solid var(--color-bg-active);border-radius:12px;padding:8px;min-width:140px;box-shadow:0 4px 20px var(--color-shadow-strong);z-index:100;display:flex;flex-direction:column;gap:4px}.settings-popup-item{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:none;background:transparent;color:var(--color-text-secondary);font-size:14px;border-radius:8px;cursor:pointer;transition:all .2s;white-space:nowrap}.settings-popup-item:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.settings-popup-item.text-danger{color:var(--color-state-error)}.settings-popup-item.text-danger:hover{background:var(--color-state-error-bg);color:var(--color-state-error-text)}.settings-popup-item svg{width:16px;height:16px}.settings-popup-divider{height:1px;background:var(--color-bg-active);margin:4px 0}.settings-popup-footer{padding:8px 12px;font-size:11px;color:var(--color-text-muted);line-height:1.5;white-space:normal;width:200px}.settings-popup-footer a{color:var(--color-text-muted);text-decoration:none;transition:color .2s}.settings-popup-footer a:hover{color:var(--color-text-secondary)}.prompt-footer-left{display:flex;align-items:center;gap:6px;min-width:0;overflow:visible}.type-switcher{position:relative;flex-shrink:0}.type-switcher-btn{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 6px;border-radius:8px;border:1px solid var(--color-bg-active);background:var(--color-bg-faint);color:var(--color-text-secondary);font-size:14px;cursor:pointer;transition:background .15s,border-color .15s,color .15s;white-space:nowrap;font-family:inherit;line-height:1;box-sizing:border-box}.type-switcher-btn:hover{background:var(--color-bg-active);border-color:var(--color-border-strong);color:var(--color-text-primary)}.type-switcher-icon{width:16px;height:16px;flex-shrink:0}.type-switcher-chevron{width:8px;height:8px;opacity:.6;flex-shrink:0;transition:transform .15s}.type-switcher-btn[aria-expanded=true] .type-switcher-chevron,.type-switcher-btn.open .type-switcher-chevron{transform:rotate(180deg);opacity:.9}.generate-prompt-wrapper .type-switcher-dropdown{top:auto;bottom:calc(100% + 6px)}.type-switcher-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:160px;background:var(--home-type-switcher-bg);border:1px solid var(--color-border-strong);border-radius:12px;padding:4px;z-index:100;box-shadow:0 8px 24px var(--color-shadow-strong)}.type-switcher-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--color-text-tertiary);font-size:13px;cursor:pointer;transition:all .15s ease;font-family:inherit}.type-switcher-option:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.type-switcher-option.active{color:var(--color-text-primary)}.type-switcher-option-icon{width:18px;height:18px;flex-shrink:0}.type-switcher-check{margin-left:auto;color:var(--color-accent-primary);flex-shrink:0}.image-gen-result{margin-top:16px}.image-gen-result-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.image-gen-result-item{position:relative;border-radius:12px;overflow:hidden;background:var(--color-bg-faint);border:1px solid var(--color-border-default)}.image-gen-result-item img{width:100%;display:block}.image-gen-download{position:absolute;bottom:8px;right:8px;width:32px;height:32px;border-radius:8px;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;color:var(--color-text-primary);opacity:0;transition:opacity .15s ease;text-decoration:none}.image-gen-result-item:hover .image-gen-download{opacity:1}.image-gen-download:hover{background:#000c}[data-theme=light] .profile-section{background:#f2f2f2}[data-theme=light] .profile-card,[data-theme=light] .profile-tabs-container{background:#fff;border-color:#e5e5e5;box-shadow:none}[data-theme=light] .profile-tabs{background:transparent;border-bottom-color:#e5e5e5}[data-theme=light] .profile-tab{color:#999}[data-theme=light] .profile-tab:hover{color:#333}[data-theme=light] .profile-tab.active{color:#111}[data-theme=light] .profile-tab.active:after{background:#111}[data-theme=light] .profile-avatar{background:linear-gradient(135deg,#e0e0e0,#c8c8c8);color:#555;box-shadow:none}[data-theme=light] .profile-name{color:#111}[data-theme=light] .profile-id{color:#888}[data-theme=light] .profile-stat-right{border-left-color:#e5e5e5}[data-theme=light] .profile-invitation-section{border-top-color:#e5e5e5}[data-theme=light] .stat-value{color:#111}[data-theme=light] .stat-label{color:#999}[data-theme=light] .profile-tab-content{background:#fff}.app-loading{position:relative;min-height:0;min-width:0}.app-loading-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;background:#000000b8;pointer-events:auto}.app-loading-spinner{width:42px;height:42px;border:3px solid rgba(64,158,255,.18);border-top-color:#409eff;border-radius:50%;animation:app-loading-spin .85s linear infinite}@keyframes app-loading-spin{to{transform:rotate(360deg)}}[data-theme=dark]{--color-bg-page: #09090b;--color-bg-elevated: rgba(24, 24, 27, .85);--color-bg-panel: rgba(39, 39, 42, .97);--color-bg-surface: rgba(30, 30, 34, .42);--color-bg-surface-solid: rgba(30, 30, 34, .95);--color-bg-subtle: rgba(255, 255, 255, .06);--color-bg-faint: rgba(255, 255, 255, .04);--color-bg-hover: rgba(255, 255, 255, .08);--color-bg-active: rgba(255, 255, 255, .1);--color-bg-inset: rgba(0, 0, 0, .35);--color-input-bg: rgba(255, 255, 255, .06);--color-input-border: rgba(255, 255, 255, .1);--color-input-border-hover: rgba(255, 255, 255, .18);--color-input-border-focus: rgba(59, 130, 246, .85);--color-input-text: rgba(255, 255, 255, .94);--color-input-placeholder: rgba(255, 255, 255, .45);--color-input-radius: 4px;--color-input-height: 40px;--color-input-padding-x: 12px;--color-input-focus-shadow: 0 0 0 2px rgba(59, 130, 246, .18);--color-input-disabled-bg: rgba(255, 255, 255, .03);--color-input-disabled-text: rgba(255, 255, 255, .38);--color-bg-input: var(--color-input-bg);--color-border-default: rgba(255, 255, 255, .08);--color-border-subtle: rgba(255, 255, 255, .06);--color-border-strong: rgba(255, 255, 255, .12);--color-border-focus: rgba(255, 255, 255, .15);--color-border-node: rgba(255, 255, 255, .22);--color-border-node-inset: rgba(255, 255, 255, .12);--color-text-body: #e0e0e0;--color-text-primary: #fff;--color-text-secondary: rgba(255, 255, 255, .85);--color-text-tertiary: rgba(255, 255, 255, .72);--color-text-muted: rgba(255, 255, 255, .45);--color-text-subtle: rgba(255, 255, 255, .35);--color-text-faint: rgba(255, 255, 255, .28);--color-text-disabled: rgba(255, 255, 255, .38);--color-text-icon: rgba(255, 255, 255, .6);--color-text-icon-muted: rgba(255, 255, 255, .4);--color-text-on-light: #1a1a1a;--color-accent-primary: #3b82f6;--color-accent-primary-soft: rgba(59, 130, 246, .18);--color-accent-focus: rgba(96, 165, 250, .72);--color-accent-focus-ring: rgba(59, 130, 246, .18);--color-accent-purple: #a855f7;--color-accent-purple-soft: rgba(168, 85, 247, .15);--color-brand: #9afc6d;--color-brand-hover: #b3ff85;--color-brand-soft: rgba(154, 252, 109, .3);--color-brand-ring: rgba(154, 252, 109, .45);--color-credit: #5eead4;--color-vip: #76c543;--color-vip-bg: #1e2c19;--color-vip-border: rgba(118, 197, 67, .35);--color-state-success: #4caf50;--color-state-success-bright: #4ade80;--color-state-success-bg: rgba(76, 175, 80, .12);--color-state-success-ring: rgba(76, 175, 80, .2);--color-state-success-gradient: #4caf50;--color-on-success: #fff;--color-state-error: #ef4444;--color-state-error-bg: rgba(239, 68, 68, .12);--color-state-error-text: #fca5a5;--color-state-warning: #f59e0b;--color-overlay: rgba(0, 0, 0, .55);--color-overlay-heavy: rgba(0, 0, 0, .85);--color-shadow: rgba(0, 0, 0, .38);--color-shadow-strong: rgba(0, 0, 0, .5);--color-modal-overlay: rgba(0, 0, 0, .55);--color-modal-overlay-heavy: rgba(0, 0, 0, .7);--color-modal-bg: #1c1d20;--color-modal-bg-wide: #121212;--color-modal-bg-elevated: rgba(39, 39, 42, .97);--color-modal-border: rgba(255, 255, 255, .08);--color-modal-border-subtle: rgba(255, 255, 255, .06);--color-modal-shadow: 0 24px 60px rgba(0, 0, 0, .55);--color-modal-title: rgba(255, 255, 255, .92);--color-modal-text: rgba(255, 255, 255, .62);--color-modal-text-muted: rgba(255, 255, 255, .5);--color-modal-close: rgba(255, 255, 255, .55);--color-modal-close-hover-bg: rgba(255, 255, 255, .06);--color-modal-close-hover: rgba(255, 255, 255, .92);--color-modal-tab-track: rgba(0, 0, 0, .2);--color-modal-tab-active-bg: rgba(255, 255, 255, .1);--color-modal-input-bg: var(--color-input-bg);--color-modal-input-border: var(--color-input-border);--color-modal-input-text: var(--color-input-text);--color-modal-input-placeholder: var(--color-input-placeholder);--color-modal-btn-ghost-border: rgba(255, 255, 255, .12);--color-modal-btn-ghost-text: rgba(255, 255, 255, .7);--color-modal-btn-primary-bg: #4caf50;--color-modal-btn-primary-hover: #5cb85e;--color-modal-btn-danger-bg: #e85d5d;--color-modal-btn-danger-hover: #ef6b6b;--color-modal-lightbox-overlay: rgba(0, 0, 0, .85);--color-modal-lightbox-control-bg: rgba(255, 255, 255, .1);--color-modal-lightbox-control-hover: rgba(255, 255, 255, .2);--color-modal-surface-bg: rgba(255, 255, 255, .06);--color-modal-surface-border: rgba(255, 255, 255, .12);--color-modal-surface-border-hover: rgba(255, 255, 255, .25);--color-modal-surface-hover-bg: rgba(255, 255, 255, .08);--color-modal-surface-active-bg: #3a3a3a;--color-modal-surface-active-border: rgba(255, 255, 255, .12);--color-modal-menu-bg: #2a2a2a;--color-modal-menu-border: rgba(255, 255, 255, .1);--color-modal-menu-text: #e0e0e0;--color-modal-menu-hover-bg: rgba(255, 255, 255, .08);--color-modal-upload-border: rgba(255, 255, 255, .15);--color-modal-upload-bg: rgba(255, 255, 255, .02);--color-modal-upload-hover-border: rgba(255, 255, 255, .4);--color-modal-upload-hover-bg: rgba(255, 255, 255, .06);--color-modal-secondary-btn-bg: rgba(255, 255, 255, .06);--color-modal-secondary-btn-border: rgba(255, 255, 255, .12);--color-modal-action-btn-bg: #4a4a4a;--color-modal-action-btn-border: rgba(255, 255, 255, .15);--color-modal-action-btn-hover-bg: #5a5a5a;--color-modal-card-bg: #181818;--color-modal-card-name-text: #bbbbbb;--color-modal-card-hover-border: rgba(255, 255, 255, .3);--color-modal-preset-bg: linear-gradient(180deg, rgba(255, 255, 255, .03) 0%, rgba(255, 255, 255, .01) 100%);--color-modal-preset-bg-active: linear-gradient(180deg, rgba(94, 234, 212, .12) 0%, rgba(94, 234, 212, .03) 100%);--color-modal-preset-active-border: #5eead4;--color-modal-preset-active-shadow: 0 8px 24px rgba(94, 234, 212, .15), 0 0 0 1px #5eead4 inset;--color-modal-accent-credit: #5eead4;--color-modal-footer-bg: rgba(0, 0, 0, .1);--color-modal-footer-border: rgba(255, 255, 255, .08);--color-modal-batch-item-bg: rgba(255, 255, 255, .03);--color-modal-upload-hint: #666666;--color-modal-upload-hint-hover: #999999;--color-modal-page-ellipsis: #666666;--color-modal-tab-hover-text: #e0e0e0;--color-modal-tab-active-hover-bg: #444444;--color-modal-search-icon-btn: #d0d0d0;--color-modal-rename-counter: #777777;--color-modal-agreement-list-text: #bbbbbb;--color-glass-border: rgba(255, 255, 255, .08);--color-scrollbar-track: rgba(255, 255, 255, .08);--color-scrollbar-thumb: rgba(255, 255, 255, .9);--color-tooltip-bg: #e8e8e8;--color-tooltip-text: #1a1a1a;--color-select-trigger-bg: #1a1a1c;--color-select-trigger-border: rgba(255, 255, 255, .1);--color-select-trigger-border-hover: rgba(255, 255, 255, .18);--color-select-trigger-border-active: rgba(59, 130, 246, .85);--color-select-trigger-text: rgba(255, 255, 255, .88);--color-select-trigger-placeholder: rgba(255, 255, 255, .45);--color-select-trigger-chevron: rgba(255, 255, 255, .55);--color-select-trigger-focus-ring: rgba(59, 130, 246, .28);--color-select-trigger-open-shadow: 0 0 0 2px rgba(59, 130, 246, .32);--color-select-menu-bg: #262626;--color-select-menu-border: rgba(255, 255, 255, .08);--color-select-menu-shadow: 0 8px 28px rgba(0, 0, 0, .45);--color-select-option-text: rgba(255, 255, 255, .78);--color-select-option-hover-bg: rgba(255, 255, 255, .06);--color-select-option-hover-text: rgba(255, 255, 255, .92);--color-select-option-selected-bg: rgba(255, 255, 255, .12);--color-select-option-selected-text: #ffffff;--color-select-option-disabled-text: rgba(255, 255, 255, .28);--color-select-radius: 8px;--color-inverted-btn-bg: #ffffff;--color-inverted-btn-fg: #1a1a1a;--color-inverted-btn-border: #ffffff;--color-inverted-btn-hover-bg: #f4f4f5;--color-inverted-btn-hover-border: #f4f4f5}[data-theme=light]{--color-neutral-text-primary: #303133;--color-neutral-text-regular: #606266;--color-neutral-text-secondary: #909399;--color-neutral-text-placeholder: #c0c4cc;--color-neutral-border-1: #dcdfe6;--color-neutral-border-2: #e4e7ed;--color-neutral-border-3: #ebeef5;--color-neutral-border-4: #f2f6fc;--color-neutral-black: #000000;--color-neutral-white: #ffffff;--color-bg-page: #f4f4f5;--color-bg-elevated: rgba(255, 255, 255, .92);--color-bg-panel: var(--color-neutral-white);--color-bg-surface: rgba(255, 255, 255, .78);--color-bg-surface-solid: rgba(255, 255, 255, .95);--color-bg-subtle: var(--color-neutral-border-4);--color-bg-faint: var(--color-neutral-border-3);--color-bg-hover: var(--color-neutral-border-3);--color-bg-active: var(--color-neutral-border-2);--color-bg-inset: var(--color-neutral-border-3);--color-input-bg: var(--color-neutral-white);--color-input-border: var(--color-neutral-border-1);--color-input-border-hover: var(--color-neutral-text-placeholder);--color-input-border-focus: #2563eb;--color-input-text: var(--color-neutral-text-regular);--color-input-placeholder: var(--color-neutral-text-placeholder);--color-input-radius: 4px;--color-input-height: 40px;--color-input-padding-x: 15px;--color-input-focus-shadow: 0 0 0 2px rgba(37, 99, 235, .15);--color-input-disabled-bg: var(--color-neutral-border-4);--color-input-disabled-text: var(--color-neutral-text-placeholder);--color-bg-input: var(--color-input-bg);--color-border-default: var(--color-neutral-border-1);--color-border-subtle: var(--color-neutral-border-2);--color-border-strong: var(--color-neutral-border-1);--color-border-focus: var(--color-neutral-text-secondary);--color-border-node: var(--color-neutral-border-1);--color-border-node-inset: var(--color-neutral-border-3);--color-text-body: var(--color-neutral-text-regular);--color-text-primary: var(--color-neutral-text-primary);--color-text-secondary: var(--color-neutral-text-regular);--color-text-tertiary: var(--color-neutral-text-secondary);--color-text-muted: var(--color-neutral-text-secondary);--color-text-subtle: var(--color-neutral-text-placeholder);--color-text-faint: var(--color-neutral-text-placeholder);--color-text-disabled: var(--color-neutral-text-placeholder);--color-text-icon: var(--color-neutral-text-secondary);--color-text-icon-muted: var(--color-neutral-text-placeholder);--color-text-on-light: var(--color-neutral-text-primary);--color-accent-primary: #2563eb;--color-accent-primary-soft: rgba(37, 99, 235, .12);--color-accent-focus: rgba(37, 99, 235, .72);--color-accent-focus-ring: rgba(37, 99, 235, .15);--color-accent-purple: #9333ea;--color-accent-purple-soft: rgba(147, 51, 234, .1);--color-brand: #67c23a;--color-brand-hover: #85ce61;--color-brand-soft: rgba(103, 194, 58, .32);--color-brand-ring: rgba(103, 194, 58, .42);--color-credit: #0d9488;--color-vip: #5daf34;--color-vip-bg: rgba(103, 194, 58, .14);--color-vip-border: rgba(103, 194, 58, .38);--color-state-success: #67c23a;--color-state-success-bright: #67c23a;--color-state-success-bg: rgba(103, 194, 58, .18);--color-state-success-ring: rgba(103, 194, 58, .3);--color-state-success-gradient: linear-gradient(134.86deg, #67c23a 9.43%, #85ce61 93.37%);--color-on-success: var(--color-neutral-text-primary);--color-state-error: #dc2626;--color-state-error-bg: rgba(220, 38, 38, .1);--color-state-error-text: #dc2626;--color-state-warning: #d97706;--color-overlay: rgba(0, 0, 0, .35);--color-overlay-heavy: rgba(0, 0, 0, .55);--color-shadow: rgba(0, 0, 0, .12);--color-shadow-strong: rgba(0, 0, 0, .2);--color-modal-overlay: rgba(0, 0, 0, .35);--color-modal-overlay-heavy: rgba(0, 0, 0, .45);--color-modal-bg: var(--color-neutral-white);--color-modal-bg-wide: var(--color-neutral-white);--color-modal-bg-elevated: var(--color-neutral-white);--color-modal-border: var(--color-neutral-border-1);--color-modal-border-subtle: var(--color-neutral-border-2);--color-modal-shadow: 0 24px 48px rgba(0, 0, 0, .12), 0 0 0 1px var(--color-neutral-border-3) inset;--color-modal-title: var(--color-neutral-text-primary);--color-modal-text: var(--color-neutral-text-regular);--color-modal-text-muted: var(--color-neutral-text-secondary);--color-modal-close: var(--color-neutral-text-secondary);--color-modal-close-hover-bg: var(--color-neutral-border-4);--color-modal-close-hover: var(--color-neutral-text-primary);--color-modal-tab-track: var(--color-neutral-border-4);--color-modal-tab-active-bg: var(--color-neutral-white);--color-modal-input-bg: var(--color-input-bg);--color-modal-input-border: var(--color-input-border);--color-modal-input-text: var(--color-input-text);--color-modal-input-placeholder: var(--color-input-placeholder);--color-modal-btn-ghost-border: var(--color-neutral-border-1);--color-modal-btn-ghost-text: var(--color-neutral-text-regular);--color-modal-btn-primary-bg: var(--color-state-success);--color-modal-btn-primary-hover: var(--color-state-success-bright);--color-modal-btn-danger-bg: #dc2626;--color-modal-btn-danger-hover: #ef4444;--color-modal-lightbox-overlay: rgba(0, 0, 0, .72);--color-modal-lightbox-control-bg: rgba(255, 255, 255, .12);--color-modal-lightbox-control-hover: rgba(255, 255, 255, .22);--color-modal-surface-bg: var(--color-neutral-white);--color-modal-surface-border: var(--color-neutral-border-1);--color-modal-surface-border-hover: var(--color-neutral-text-placeholder);--color-modal-surface-hover-bg: var(--color-neutral-border-4);--color-modal-surface-active-bg: var(--color-neutral-border-4);--color-modal-surface-active-border: var(--color-neutral-border-1);--color-modal-menu-bg: var(--color-neutral-white);--color-modal-menu-border: var(--color-neutral-border-1);--color-modal-menu-text: var(--color-neutral-text-regular);--color-modal-menu-hover-bg: var(--color-neutral-border-4);--color-modal-upload-border: var(--color-neutral-border-1);--color-modal-upload-bg: var(--color-neutral-white);--color-modal-upload-hover-border: var(--color-neutral-text-placeholder);--color-modal-upload-hover-bg: var(--color-neutral-border-4);--color-modal-secondary-btn-bg: var(--color-neutral-white);--color-modal-secondary-btn-border: var(--color-neutral-border-1);--color-modal-action-btn-bg: var(--color-neutral-border-4);--color-modal-action-btn-border: var(--color-neutral-border-1);--color-modal-action-btn-hover-bg: var(--color-neutral-border-3);--color-modal-card-bg: var(--color-neutral-border-4);--color-modal-card-name-text: var(--color-neutral-text-secondary);--color-modal-preset-bg: var(--color-neutral-white);--color-modal-preset-bg-active: rgba(103, 194, 58, .1);--color-modal-preset-active-border: var(--color-brand);--color-modal-preset-active-shadow: 0 8px 24px rgba(103, 194, 58, .15), 0 0 0 1px var(--color-brand) inset;--color-modal-accent-credit: var(--color-brand);--color-modal-footer-bg: var(--color-neutral-border-4);--color-modal-footer-border: var(--color-neutral-border-2);--color-modal-batch-item-bg: var(--color-neutral-white);--color-modal-upload-hint: var(--color-neutral-text-secondary);--color-modal-upload-hint-hover: var(--color-neutral-text-regular);--color-modal-page-ellipsis: var(--color-neutral-text-secondary);--color-modal-tab-hover-text: var(--color-neutral-text-regular);--color-modal-tab-active-hover-bg: var(--color-neutral-border-3);--color-modal-search-icon-btn: var(--color-neutral-text-secondary);--color-modal-rename-counter: var(--color-neutral-text-secondary);--color-modal-agreement-list-text: var(--color-neutral-text-regular);--color-glass-border: var(--color-neutral-border-2);--color-scrollbar-track: var(--color-neutral-border-3);--color-scrollbar-thumb: var(--color-neutral-text-placeholder);--color-tooltip-bg: var(--color-neutral-text-primary);--color-tooltip-text: var(--color-neutral-white);--color-select-trigger-bg: var(--color-neutral-white);--color-select-trigger-border: var(--color-neutral-border-1);--color-select-trigger-border-hover: var(--color-neutral-text-placeholder);--color-select-trigger-border-active: #2563eb;--color-select-trigger-text: var(--color-neutral-text-regular);--color-select-trigger-placeholder: var(--color-neutral-text-placeholder);--color-select-trigger-chevron: var(--color-neutral-text-placeholder);--color-select-trigger-focus-ring: rgba(37, 99, 235, .15);--color-select-trigger-open-shadow: none;--color-select-menu-bg: var(--color-neutral-white);--color-select-menu-border: var(--color-neutral-border-2);--color-select-menu-shadow: 0 2px 12px rgba(0, 0, 0, .1);--color-select-option-text: var(--color-neutral-text-regular);--color-select-option-hover-bg: var(--color-neutral-border-4);--color-select-option-hover-text: var(--color-neutral-text-primary);--color-select-option-selected-bg: #ecf5ff;--color-select-option-selected-text: var(--color-neutral-text-primary);--color-select-option-disabled-text: var(--color-neutral-text-placeholder);--color-select-radius: 6px;--color-inverted-btn-bg: var(--color-neutral-text-primary);--color-inverted-btn-fg: var(--color-neutral-white);--color-inverted-btn-border: var(--color-neutral-text-primary);--color-inverted-btn-hover-bg: var(--color-neutral-text-regular);--color-inverted-btn-hover-border: var(--color-neutral-text-regular)}html:not([data-theme]){color-scheme:dark}html[data-theme=dark]{color-scheme:dark}html[data-theme=light]{color-scheme:light}[data-theme=dark]{--canvas-elements-sidebar-width: 280px;--canvas-elements-sidebar-ease: cubic-bezier(.22, 1, .36, 1);--canvas-elements-sidebar-duration: .28s;--canvas-color-bg-page: var(--color-bg-page);--canvas-color-bg-elevated: var(--color-bg-elevated);--canvas-color-bg-panel: var(--color-bg-panel);--canvas-color-bg-surface: var(--color-bg-surface);--canvas-color-bg-surface-solid: var(--color-bg-surface-solid);--canvas-color-bg-subtle: var(--color-bg-subtle);--canvas-color-bg-faint: var(--color-bg-faint);--canvas-color-bg-hover: var(--color-bg-hover);--canvas-color-bg-active: var(--color-bg-active);--canvas-color-bg-input: var(--color-bg-input);--canvas-color-bg-inset: var(--color-bg-inset);--canvas-color-input-bg: var(--color-input-bg);--canvas-color-input-border: var(--color-input-border);--canvas-color-input-border-hover: var(--color-input-border-hover);--canvas-color-input-border-focus: var(--color-input-border-focus);--canvas-color-input-text: var(--color-input-text);--canvas-color-input-placeholder: var(--color-input-placeholder);--canvas-color-input-radius: var(--color-input-radius);--canvas-color-input-focus-shadow: var(--color-input-focus-shadow);--canvas-color-border-default: var(--color-border-default);--canvas-color-border-subtle: var(--color-border-subtle);--canvas-color-border-strong: var(--color-border-strong);--canvas-color-border-focus: var(--color-border-focus);--canvas-color-border-node: var(--color-border-node);--canvas-color-border-node-inset: var(--color-border-node-inset);--canvas-color-text-body: var(--color-text-body);--canvas-color-text-primary: var(--color-text-primary);--canvas-color-text-secondary: var(--color-text-secondary);--canvas-color-text-tertiary: var(--color-text-tertiary);--canvas-color-text-muted: var(--color-text-muted);--canvas-color-text-subtle: var(--color-text-subtle);--canvas-color-text-faint: var(--color-text-faint);--canvas-color-text-disabled: var(--color-text-disabled);--canvas-color-text-icon: var(--color-text-icon);--canvas-color-text-icon-muted: var(--color-text-icon-muted);--canvas-color-accent-primary: var(--color-accent-primary);--canvas-color-accent-primary-soft: var(--color-accent-primary-soft);--canvas-color-accent-focus: var(--color-accent-focus);--canvas-color-accent-focus-ring: var(--color-accent-focus-ring);--canvas-color-accent-purple: var(--color-accent-purple);--canvas-color-accent-purple-soft: var(--color-accent-purple-soft);--canvas-color-state-success: var(--color-state-success);--canvas-color-state-success-bright: var(--color-state-success-bright);--canvas-color-state-success-bg: var(--color-state-success-bg);--canvas-color-state-success-ring: var(--color-state-success-ring);--canvas-color-state-success-gradient: var(--color-state-success-gradient);--canvas-color-on-success: var(--color-on-success);--canvas-color-state-error: var(--color-state-error);--canvas-color-state-error-bg: var(--color-state-error-bg);--canvas-color-state-warning: var(--color-state-warning);--canvas-color-overlay: var(--color-overlay);--canvas-color-overlay-heavy: var(--color-overlay-heavy);--canvas-color-shadow: var(--color-shadow);--canvas-color-shadow-strong: var(--color-shadow-strong);--canvas-color-glass-border: var(--color-glass-border);--canvas-color-scrollbar-track: var(--color-scrollbar-track);--canvas-color-scrollbar-thumb: var(--color-scrollbar-thumb);--canvas-color-select-trigger-bg: var(--color-select-trigger-bg);--canvas-color-select-trigger-border: var(--color-select-trigger-border);--canvas-color-select-trigger-border-hover: var(--color-select-trigger-border-hover);--canvas-color-select-trigger-border-active: var(--color-select-trigger-border-active);--canvas-color-select-trigger-text: var(--color-select-trigger-text);--canvas-color-select-trigger-placeholder: var(--color-select-trigger-placeholder);--canvas-color-select-trigger-chevron: var(--color-select-trigger-chevron);--canvas-color-select-trigger-focus-ring: var(--color-select-trigger-focus-ring);--canvas-color-select-trigger-open-shadow: var(--color-select-trigger-open-shadow);--canvas-color-select-menu-bg: var(--color-select-menu-bg);--canvas-color-select-menu-border: var(--color-select-menu-border);--canvas-color-select-menu-shadow: var(--color-select-menu-shadow);--canvas-color-select-option-text: var(--color-select-option-text);--canvas-color-select-option-hover-bg: var(--color-select-option-hover-bg);--canvas-color-select-option-hover-text: var(--color-select-option-hover-text);--canvas-color-select-option-selected-bg: var(--color-select-option-selected-bg);--canvas-color-select-option-selected-text: var(--color-select-option-selected-text);--canvas-color-select-option-disabled-text: var(--color-select-option-disabled-text);--canvas-color-select-radius: var(--color-select-radius);--canvas-color-flow-bg: #09090b;--canvas-color-flow-dot: rgba(255, 255, 255, .08);--canvas-color-minimap-bg: rgba(24, 24, 27, .9);--canvas-color-minimap-mask: rgba(0, 0, 0, .6);--canvas-color-handle-idle-bg: var(--canvas-color-bg-panel);--canvas-color-handle-border: var(--canvas-color-text-faint);--canvas-color-handle-hover-surface: rgba(20, 20, 24, .95);--canvas-color-handle-hover-border: var(--canvas-color-text-secondary);--canvas-color-handle-glow-1: var(--canvas-color-text-subtle);--canvas-color-handle-glow-2: var(--canvas-color-text-faint);--canvas-color-handle-glow-3: var(--canvas-color-border-strong);--canvas-color-handle-valid-border: rgba(56, 189, 248, .85);--canvas-color-handle-valid-glow-1: rgba(56, 189, 248, .32);--canvas-color-handle-valid-glow-2: rgba(56, 189, 248, .32);--canvas-color-handle-valid-glow-3: rgba(56, 189, 248, .18);--canvas-color-edge-hover-stroke: var(--canvas-color-state-success);--canvas-color-link-stroke: var(--canvas-color-border-focus);--canvas-color-handle-cross-filter: none;--canvas-color-edge-label-bg: rgba(24, 24, 27, .75);--canvas-color-edge-label-text: var(--canvas-color-text-icon);--canvas-color-edge-label-border: transparent;--canvas-color-link-thumb-border: var(--canvas-color-border-focus);--canvas-color-link-thumb-badge-bg: rgba(0, 0, 0, .7);--canvas-color-link-thumb-badge-text: var(--canvas-color-text-primary);--canvas-color-link-thumb-remove-bg: rgba(220, 38, 38, .92);--canvas-color-link-thumb-remove-bg-hover: rgba(239, 68, 68, 1);--canvas-color-link-thumb-remove-border: rgba(255, 255, 255, .72);--canvas-color-link-thumb-remove-text: #ffffff;--canvas-color-link-tip-bg: rgba(15, 23, 42, .95);--canvas-color-link-tip-border: rgba(148, 163, 184, .35);--canvas-color-link-tip-text: rgba(226, 232, 240, .95);--canvas-color-voice-slider-track: var(--canvas-color-border-default);--canvas-color-preset-item-bg: rgba(39, 39, 42, .9);--canvas-color-preset-item-bg-hover: rgba(63, 63, 70, .95);--canvas-color-preset-item-text: var(--canvas-color-text-secondary);--canvas-color-preset-item-text-hover: var(--canvas-color-text-primary);--canvas-color-quick-chip-bg: rgba(30, 41, 59, .8);--canvas-color-quick-chip-bg-hover: rgba(51, 65, 85, .95);--canvas-color-quick-chip-text: rgba(226, 232, 240, .92);--canvas-color-floating-panel-border: rgba(148, 163, 184, .25);--canvas-color-floating-panel-shadow: rgba(0, 0, 0, .4);--canvas-color-agent-panel-bg: rgb(32, 30, 32);--canvas-color-agent-panel-shadow: rgba(0, 0, 0, .25);--canvas-color-agent-trigger-bg: rgba(64, 184, 85, .98);--canvas-color-agent-trigger-border: rgba(24, 79, 37, .18);--canvas-color-agent-trigger-text: #fff;--canvas-color-agent-heading-text: #f4f4f5;--canvas-color-agent-input-text: #f4f4f5;--canvas-color-agent-model-text: #d4d4d8;--canvas-color-agent-model-text-active: #f4f4f5;--canvas-color-agent-menu-bg: #232326;--canvas-color-agent-user-bubble-bg: #2f9e6b;--canvas-color-agent-user-bubble-text: #ffffff;--canvas-color-agent-send-idle-bg: rgba(255, 255, 255, .1);--canvas-color-agent-send-idle-text: #0d0d0d;--canvas-color-agent-send-active-bg: linear-gradient(180deg, #b8f786 0%, #9afc6d 100%);--canvas-color-agent-send-active-bg-hover: linear-gradient(180deg, #c5fa92 0%, #a8fc7a 100%);--canvas-color-agent-send-active-text: #0d0d0d;--canvas-color-agent-stop-bg: rgba(255, 255, 255, .85);--canvas-color-agent-stop-text: #1a1a1a;--canvas-color-agent-stop-hover-bg: #fff;--canvas-color-agent-link: #86efac;--canvas-color-agent-accent: rgba(154, 252, 109, .75);--canvas-color-agent-model-dot: linear-gradient(180deg, #b8f786 0%, #9afc6d 100%);--canvas-color-agent-model-check: #9afc6d;--canvas-color-agent-focus-ring: rgba(154, 252, 109, .35);--canvas-color-agent-tooltip-bg: rgba(20, 20, 24, .96);--canvas-color-agent-md-heading: rgba(255, 255, 255, .94);--canvas-color-agent-session-bg: #27272a;--canvas-color-agent-session-border: #3f3f46;--canvas-color-agent-session-text: #a1a1aa;--canvas-color-agent-session-text-hover: #e4e4e7;--canvas-color-agent-session-meta: #71717a;--canvas-color-agent-session-active-bg: rgba(64, 184, 85, .12);--canvas-color-agent-session-active-bg-hover: rgba(64, 184, 85, .18);--canvas-color-agent-session-active-text: #86efac;--canvas-color-overview-sidebar-bg: #1a1a1e;--canvas-color-overview-tabs-track: #1a1a1f;--canvas-color-overview-tab-indicator: rgb(93, 158, 82);--canvas-color-overview-tab-active-text: #ffffff;--canvas-color-overview-accent: rgb(93, 158, 82);--canvas-color-overview-accent-text: #ffffff;--canvas-color-gen-estimate-bg: rgba(18, 18, 20, .78);--canvas-color-gen-estimate-border: var(--canvas-color-border-node);--canvas-color-gen-estimate-text: var(--canvas-color-text-primary);--canvas-color-workbench-bg: rgba(20, 20, 22, .97);--canvas-color-workbench-border: var(--canvas-color-border-default);--canvas-color-workbench-accent-border: rgba(96, 165, 250, .35);--canvas-color-workbench-chip-bg: rgba(40, 40, 44, .85);--canvas-color-workbench-chip-bg-hover: rgba(60, 60, 64, .9);--canvas-color-workbench-segment-active-bg: var(--canvas-color-border-strong);--canvas-color-workbench-accent-active-bg: rgba(96, 165, 250, .12);--canvas-color-workbench-accent-active-border: rgba(96, 165, 250, .55);--canvas-color-workbench-primary-bg: var(--canvas-color-text-primary);--canvas-color-workbench-primary-text: #111111;--canvas-color-workbench-primary-muted: rgba(17, 17, 17, .72);--canvas-color-workbench-primary-hover: #f1f1f1;--canvas-color-multi-angle-bg: rgba(20, 20, 22, .97);--canvas-color-multi-angle-border: var(--canvas-color-border-default);--canvas-color-multi-angle-segment-track: var(--canvas-color-bg-faint);--canvas-color-multi-angle-segment-active-bg: var(--canvas-color-border-strong);--canvas-color-multi-angle-segment-active-shadow: none;--canvas-color-multi-angle-chip-bg: rgba(40, 40, 44, .85);--canvas-color-multi-angle-chip-bg-hover: rgba(60, 60, 64, .9);--canvas-color-multi-angle-stage-bg: var(--canvas-color-bg-faint);--canvas-color-multi-angle-primary-bg: #f4f4f5;--canvas-color-multi-angle-primary-text: #18181b;--canvas-color-multi-angle-primary-hover: #e4e4e7;--canvas-color-multi-angle-primary-muted: rgba(24, 24, 27, .65);--canvas-color-multi-angle-orbit: #9ca3af;--canvas-color-multi-angle-camera: #d1d5db;--canvas-color-multi-angle-camera-edge: #e5e7eb;--canvas-color-multi-angle-link: #a1a1aa;--canvas-color-context-menu-bg: #2c2c2c;--canvas-color-context-menu-border: var(--canvas-color-border-subtle);--canvas-color-context-menu-shadow: 0 12px 40px var(--canvas-color-overlay);--canvas-color-context-menu-compact-shadow: 0 8px 32px rgba(0, 0, 0, .45);--canvas-color-context-menu-divider: #444444;--canvas-color-context-menu-row-hover: var(--canvas-color-border-default)}[data-theme=light]{--canvas-elements-sidebar-width: 280px;--canvas-elements-sidebar-ease: cubic-bezier(.22, 1, .36, 1);--canvas-elements-sidebar-duration: .28s;--canvas-color-bg-page: var(--color-bg-page);--canvas-color-bg-elevated: var(--color-bg-elevated);--canvas-color-bg-panel: var(--color-bg-panel);--canvas-color-bg-surface: var(--color-bg-surface);--canvas-color-bg-surface-solid: var(--color-bg-surface-solid);--canvas-color-bg-subtle: var(--color-bg-subtle);--canvas-color-bg-faint: var(--color-bg-faint);--canvas-color-bg-hover: var(--color-bg-hover);--canvas-color-bg-active: var(--color-bg-active);--canvas-color-bg-input: var(--color-bg-input);--canvas-color-bg-inset: var(--color-bg-inset);--canvas-color-input-bg: var(--color-input-bg);--canvas-color-input-border: var(--color-input-border);--canvas-color-input-border-hover: var(--color-input-border-hover);--canvas-color-input-border-focus: var(--color-input-border-focus);--canvas-color-input-text: var(--color-input-text);--canvas-color-input-placeholder: var(--color-input-placeholder);--canvas-color-input-radius: var(--color-input-radius);--canvas-color-input-focus-shadow: var(--color-input-focus-shadow);--canvas-color-border-default: var(--color-border-default);--canvas-color-border-subtle: var(--color-border-subtle);--canvas-color-border-strong: var(--color-border-strong);--canvas-color-border-focus: var(--color-border-focus);--canvas-color-border-node: var(--color-border-node);--canvas-color-border-node-inset: var(--color-border-node-inset);--canvas-color-text-body: var(--color-text-body);--canvas-color-text-primary: var(--color-text-primary);--canvas-color-text-secondary: var(--color-text-secondary);--canvas-color-text-tertiary: var(--color-text-tertiary);--canvas-color-text-muted: var(--color-text-muted);--canvas-color-text-subtle: var(--color-text-subtle);--canvas-color-text-faint: var(--color-text-faint);--canvas-color-text-disabled: var(--color-text-disabled);--canvas-color-text-icon: var(--color-text-icon);--canvas-color-text-icon-muted: var(--color-text-icon-muted);--canvas-color-accent-primary: var(--color-accent-primary);--canvas-color-accent-primary-soft: var(--color-accent-primary-soft);--canvas-color-accent-focus: var(--color-accent-focus);--canvas-color-accent-focus-ring: var(--color-accent-focus-ring);--canvas-color-accent-purple: var(--color-accent-purple);--canvas-color-accent-purple-soft: var(--color-accent-purple-soft);--canvas-color-state-success: var(--color-state-success);--canvas-color-state-success-bright: var(--color-state-success-bright);--canvas-color-state-success-bg: var(--color-state-success-bg);--canvas-color-state-success-ring: var(--color-state-success-ring);--canvas-color-state-success-gradient: var(--color-state-success-gradient);--canvas-color-on-success: var(--color-on-success);--canvas-color-state-error: var(--color-state-error);--canvas-color-state-error-bg: var(--color-state-error-bg);--canvas-color-state-warning: var(--color-state-warning);--canvas-color-overlay: var(--color-overlay);--canvas-color-overlay-heavy: var(--color-overlay-heavy);--canvas-color-shadow: var(--color-shadow);--canvas-color-shadow-strong: var(--color-shadow-strong);--canvas-color-glass-border: var(--color-glass-border);--canvas-color-scrollbar-track: var(--color-scrollbar-track);--canvas-color-scrollbar-thumb: var(--color-scrollbar-thumb);--canvas-color-select-trigger-bg: var(--color-select-trigger-bg);--canvas-color-select-trigger-border: var(--color-select-trigger-border);--canvas-color-select-trigger-border-hover: var(--color-select-trigger-border-hover);--canvas-color-select-trigger-border-active: var(--color-select-trigger-border-active);--canvas-color-select-trigger-text: var(--color-select-trigger-text);--canvas-color-select-trigger-placeholder: var(--color-select-trigger-placeholder);--canvas-color-select-trigger-chevron: var(--color-select-trigger-chevron);--canvas-color-select-trigger-focus-ring: var(--color-select-trigger-focus-ring);--canvas-color-select-trigger-open-shadow: var(--color-select-trigger-open-shadow);--canvas-color-select-menu-bg: var(--color-select-menu-bg);--canvas-color-select-menu-border: var(--color-select-menu-border);--canvas-color-select-menu-shadow: var(--color-select-menu-shadow);--canvas-color-select-option-text: var(--color-select-option-text);--canvas-color-select-option-hover-bg: var(--color-select-option-hover-bg);--canvas-color-select-option-hover-text: var(--color-select-option-hover-text);--canvas-color-select-option-selected-bg: var(--color-select-option-selected-bg);--canvas-color-select-option-selected-text: var(--color-select-option-selected-text);--canvas-color-select-option-disabled-text: var(--color-select-option-disabled-text);--canvas-color-select-radius: var(--color-select-radius);--canvas-color-flow-bg: #f4f4f5;--canvas-color-flow-dot: rgba(0, 0, 0, .12);--canvas-color-minimap-bg: rgba(255, 255, 255, .95);--canvas-color-minimap-mask: rgba(0, 0, 0, .15);--canvas-color-handle-idle-bg: #ffffff;--canvas-color-handle-border: var(--canvas-color-accent-primary);--canvas-color-handle-hover-surface: rgba(255, 255, 255, .98);--canvas-color-handle-hover-border: var(--canvas-color-accent-primary);--canvas-color-handle-glow-1: rgba(37, 99, 235, .28);--canvas-color-handle-glow-2: rgba(37, 99, 235, .2);--canvas-color-handle-glow-3: rgba(37, 99, 235, .12);--canvas-color-handle-valid-border: rgba(37, 99, 235, .92);--canvas-color-handle-valid-glow-1: rgba(37, 99, 235, .32);--canvas-color-handle-valid-glow-2: rgba(37, 99, 235, .24);--canvas-color-handle-valid-glow-3: rgba(37, 99, 235, .14);--canvas-color-edge-hover-stroke: var(--canvas-color-accent-primary);--canvas-color-link-stroke: #c0c4cc;--canvas-color-handle-cross-filter: brightness(0) saturate(100%);--canvas-color-edge-label-bg: rgba(255, 255, 255, .96);--canvas-color-edge-label-text: var(--canvas-color-text-secondary);--canvas-color-edge-label-border: var(--canvas-color-border-default);--canvas-color-link-thumb-border: var(--canvas-color-border-default);--canvas-color-link-thumb-badge-bg: rgba(0, 0, 0, .58);--canvas-color-link-thumb-badge-text: #ffffff;--canvas-color-link-thumb-remove-bg: var(--canvas-color-state-error);--canvas-color-link-thumb-remove-bg-hover: #f56c6c;--canvas-color-link-thumb-remove-border: rgba(255, 255, 255, .92);--canvas-color-link-thumb-remove-text: #ffffff;--canvas-color-link-tip-bg: var(--canvas-color-bg-panel);--canvas-color-link-tip-border: var(--canvas-color-border-default);--canvas-color-link-tip-text: var(--canvas-color-text-primary);--canvas-color-voice-slider-track: var(--color-neutral-border-2);--canvas-color-preset-item-bg: var(--canvas-color-bg-subtle);--canvas-color-preset-item-bg-hover: var(--canvas-color-bg-hover);--canvas-color-preset-item-text: var(--canvas-color-text-primary);--canvas-color-preset-item-text-hover: var(--canvas-color-text-primary);--canvas-color-quick-chip-bg: var(--canvas-color-bg-subtle);--canvas-color-quick-chip-bg-hover: var(--canvas-color-bg-hover);--canvas-color-quick-chip-text: var(--canvas-color-text-secondary);--canvas-color-floating-panel-border: var(--canvas-color-border-default);--canvas-color-floating-panel-shadow: var(--canvas-color-shadow);--canvas-color-agent-panel-bg: rgba(255, 255, 255, .98);--canvas-color-agent-panel-shadow: var(--canvas-color-shadow-strong);--canvas-color-agent-trigger-bg: var(--canvas-color-state-success-gradient);--canvas-color-agent-trigger-border: var(--canvas-color-state-success-ring);--canvas-color-agent-trigger-text: var(--canvas-color-on-success);--canvas-color-agent-heading-text: var(--canvas-color-text-primary);--canvas-color-agent-input-text: var(--canvas-color-text-primary);--canvas-color-agent-model-text: var(--canvas-color-text-secondary);--canvas-color-agent-model-text-active: var(--canvas-color-text-primary);--canvas-color-agent-menu-bg: var(--canvas-color-bg-panel);--canvas-color-agent-user-bubble-bg: var(--canvas-color-accent-primary);--canvas-color-agent-user-bubble-text: #ffffff;--canvas-color-agent-send-idle-bg: var(--canvas-color-bg-active);--canvas-color-agent-send-idle-text: var(--canvas-color-text-muted);--canvas-color-agent-send-active-bg: var(--canvas-color-state-success-gradient);--canvas-color-agent-send-active-bg-hover: var(--canvas-color-state-success-gradient);--canvas-color-agent-send-active-text: var(--canvas-color-on-success);--canvas-color-agent-stop-bg: var(--canvas-color-bg-hover);--canvas-color-agent-stop-text: var(--canvas-color-text-primary);--canvas-color-agent-stop-hover-bg: var(--canvas-color-bg-active);--canvas-color-agent-link: var(--canvas-color-accent-primary);--canvas-color-agent-accent: var(--canvas-color-state-success);--canvas-color-agent-model-dot: var(--canvas-color-state-success-gradient);--canvas-color-agent-model-check: var(--canvas-color-state-success);--canvas-color-agent-focus-ring: var(--canvas-color-accent-focus-ring);--canvas-color-agent-tooltip-bg: var(--canvas-color-bg-panel);--canvas-color-agent-md-heading: var(--canvas-color-text-primary);--canvas-color-agent-session-bg: var(--canvas-color-bg-subtle);--canvas-color-agent-session-border: var(--canvas-color-border-default);--canvas-color-agent-session-text: var(--canvas-color-text-secondary);--canvas-color-agent-session-text-hover: var(--canvas-color-text-primary);--canvas-color-agent-session-meta: var(--canvas-color-text-muted);--canvas-color-agent-session-active-bg: var(--canvas-color-state-success-bg);--canvas-color-agent-session-active-bg-hover: rgba(103, 194, 58, .28);--canvas-color-agent-session-active-text: var(--canvas-color-state-success);--canvas-color-overview-sidebar-bg: var(--canvas-color-bg-panel);--canvas-color-overview-tabs-track: var(--canvas-color-bg-subtle);--canvas-color-overview-tab-indicator: var(--canvas-color-state-success-gradient);--canvas-color-overview-tab-active-text: var(--canvas-color-on-success);--canvas-color-overview-accent: var(--canvas-color-state-success-gradient);--canvas-color-overview-accent-text: var(--canvas-color-on-success);--canvas-color-gen-estimate-bg: var(--canvas-color-accent-primary-soft);--canvas-color-gen-estimate-border: rgba(37, 99, 235, .35);--canvas-color-gen-estimate-text: var(--canvas-color-accent-primary);--canvas-color-workbench-bg: var(--canvas-color-bg-panel);--canvas-color-workbench-border: var(--canvas-color-border-default);--canvas-color-workbench-accent-border: rgba(37, 99, 235, .35);--canvas-color-workbench-chip-bg: var(--canvas-color-bg-elevated);--canvas-color-workbench-chip-bg-hover: var(--canvas-color-bg-hover);--canvas-color-workbench-segment-active-bg: var(--canvas-color-bg-active);--canvas-color-workbench-accent-active-bg: var(--canvas-color-accent-primary-soft);--canvas-color-workbench-accent-active-border: var(--canvas-color-accent-primary);--canvas-color-workbench-primary-bg: var(--canvas-color-state-success-gradient);--canvas-color-workbench-primary-text: var(--canvas-color-on-success);--canvas-color-workbench-primary-muted: var(--color-neutral-text-regular);--canvas-color-workbench-primary-hover: var(--canvas-color-state-success-gradient);--canvas-color-multi-angle-bg: var(--color-neutral-white);--canvas-color-multi-angle-border: var(--canvas-color-border-default);--canvas-color-multi-angle-segment-track: var(--color-neutral-border-4);--canvas-color-multi-angle-segment-active-bg: var(--color-neutral-white);--canvas-color-multi-angle-segment-active-shadow: 0 1px 3px rgba(0, 0, 0, .08);--canvas-color-multi-angle-chip-bg: rgba(255, 255, 255, .95);--canvas-color-multi-angle-chip-bg-hover: var(--color-neutral-border-4);--canvas-color-multi-angle-stage-bg: var(--color-neutral-border-4);--canvas-color-multi-angle-primary-bg: var(--color-neutral-border-2);--canvas-color-multi-angle-primary-text: var(--color-neutral-text-primary);--canvas-color-multi-angle-primary-hover: var(--color-neutral-border-1);--canvas-color-multi-angle-primary-muted: var(--color-neutral-text-secondary);--canvas-color-multi-angle-orbit: var(--color-neutral-text-secondary);--canvas-color-multi-angle-camera: var(--color-neutral-text-regular);--canvas-color-multi-angle-camera-edge: var(--color-neutral-text-placeholder);--canvas-color-multi-angle-link: var(--color-neutral-text-secondary);--canvas-color-context-menu-bg: #ffffff;--canvas-color-context-menu-border: var(--canvas-color-border-default);--canvas-color-context-menu-shadow: var(--canvas-color-shadow-strong);--canvas-color-context-menu-compact-shadow: 0 8px 24px rgba(0, 0, 0, .12);--canvas-color-context-menu-divider: var(--canvas-color-border-default);--canvas-color-context-menu-row-hover: var(--canvas-color-bg-hover)}[data-theme=light] .canvas-handle:hover:after,[data-theme=light] .canvas-handle:focus-visible:after,[data-theme=light] .react-flow__node:hover .canvas-handle:after,[data-theme=light] .react-flow__node.selected .canvas-handle:after,[data-theme=light] .react-flow__handle.canvas-handle.connectingto:after{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'><line x1='2' y1='6' x2='10' y2='6' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/><line x1='6' y1='2' x2='6' y2='10' stroke='%232563eb' stroke-width='2' stroke-linecap='round'/></svg>")}[data-theme=light] .canvas-node-gen-btn:not(.canvas-node-gen-btn-pending):not(:disabled),[data-theme=light] .agent-chat-send.active{background:var(--canvas-color-state-success-gradient);color:var(--canvas-color-on-success)}[data-theme=light] .agent-chat-trigger{background:var(--canvas-color-state-success-gradient);color:var(--canvas-color-on-success);border-color:var(--canvas-color-state-success-ring)}.theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid var(--color-border-default);border-radius:8px;background:var(--color-bg-subtle);color:var(--color-text-icon);cursor:pointer;transition:background .15s,color .15s,border-color .15s}.theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-strong)}.canvas-theme-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:8px;background:transparent;color:var(--color-text-icon);cursor:pointer;transition:background .15s,color .15s}.canvas-theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}[data-theme=light] .theme-toggle{background:var(--color-bg-panel);border-color:var(--color-border-default);color:var(--color-text-secondary)}[data-theme=light] .theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-strong)}[data-theme=light] .canvas-theme-toggle{background:transparent;border:none;color:var(--color-text-secondary)}[data-theme=light] .canvas-theme-toggle:hover{background:var(--color-bg-hover);color:var(--color-text-primary)}.app-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--color-modal-overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:app-modal-fade .12s ease-out}.app-modal-overlay--heavy{background:var(--color-modal-overlay-heavy)}.app-modal-overlay--upper{align-items:flex-start;padding-top:clamp(72px,16vh,148px)}.app-modal-overlay--lightbox{z-index:9999;background:var(--color-modal-lightbox-overlay);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);cursor:pointer}@keyframes app-modal-fade{0%{opacity:0}to{opacity:1}}.app-modal-panel{box-sizing:border-box;width:min(92vw,400px);max-height:min(90vh,720px);display:flex;flex-direction:column;border-radius:12px;border:1px solid var(--color-modal-border-subtle);background:var(--color-modal-bg);box-shadow:var(--color-modal-shadow);color:var(--color-text-primary);animation:app-modal-pop .16s ease-out}.app-modal-panel--wide{width:min(920px,calc(100vw - 32px));max-width:920px;background:var(--color-modal-bg-wide);border-color:var(--color-modal-border)}.app-modal-panel--lg{width:min(720px,92vw);max-width:720px;border-radius:24px;background:var(--color-modal-bg-elevated)}.app-modal-panel--xl{width:min(960px,92vw);max-width:960px;max-height:88vh;border-radius:16px}.app-modal-panel--compact{width:380px;max-width:92vw;border-radius:16px;overflow:hidden}@keyframes app-modal-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.app-modal-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:18px 20px 0}.app-modal-title{margin:0;font-size:15px;font-weight:500;color:var(--color-modal-title);letter-spacing:.2px}.app-modal-title-spacer{flex:1}.app-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-left:auto;flex-shrink:0;border:none;border-radius:8px;background:transparent;color:var(--color-modal-close);cursor:pointer;transition:background .12s,color .12s}.app-modal-close svg{width:18px;height:18px}.app-modal-close:hover:not(:disabled){background:var(--color-modal-close-hover-bg);color:var(--color-modal-close-hover)}.app-modal-close:disabled{opacity:.4;cursor:not-allowed}.app-modal-body{flex:1;min-height:0;overflow-y:auto;padding:16px 24px 0;color:var(--color-modal-text)}.app-modal-panel--wide .app-modal-body{padding-top:8px}.app-modal-footer{flex-shrink:0;display:flex;justify-content:flex-end;gap:8px;padding:18px 24px 20px}.app-modal-footer--bordered{margin-top:8px;padding-top:16px;border-top:1px solid var(--color-modal-border-subtle)}.app-modal-input{box-sizing:border-box;display:block;width:100%;height:var(--color-input-height, 40px);padding:0 var(--color-input-padding-x, 12px);border-radius:var(--color-input-radius, 4px);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-input-text);font-size:14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.app-modal-input::placeholder{color:var(--color-input-placeholder)}.app-modal-input:hover:not(:disabled):not(:focus){border-color:var(--color-input-border-hover)}.app-modal-input:focus{border-color:var(--color-input-border-focus);box-shadow:var(--color-input-focus-shadow)}.app-modal-btn{height:32px;min-width:64px;padding:0 14px;border-radius:6px;font-size:13px;font-weight:400;cursor:pointer;border:1px solid transparent;transition:background .12s,border-color .12s,color .12s}.app-modal-btn--ghost{background:transparent;border-color:var(--color-modal-btn-ghost-border);color:var(--color-modal-btn-ghost-text)}.app-modal-btn--ghost:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-strong);color:var(--color-text-primary)}.app-modal-btn--primary{background:var(--color-modal-btn-primary-bg);color:var(--color-on-success);font-weight:500}.app-modal-btn--primary:hover:not(:disabled){background:var(--color-modal-btn-primary-hover)}.app-modal-btn:disabled{opacity:.45;cursor:not-allowed}.app-modal-btn--primary:disabled{background:var(--color-state-success-bg);color:var(--color-text-muted)}.app-modal-tabs{display:flex;background:var(--color-modal-tab-track);border-radius:12px;padding:4px}.app-modal-tab{flex:1;padding:12px 0;background:transparent;border:none;border-radius:10px;color:var(--color-modal-text-muted);font-size:15px;font-weight:600;cursor:pointer;transition:all .25s ease}.app-modal-tab:hover{color:var(--color-text-secondary)}.app-modal-tab.active,.app-modal-tab--active{background:var(--color-modal-tab-active-bg);color:var(--color-text-primary);box-shadow:0 2px 8px var(--color-shadow)}.app-input,input.app-input,textarea.app-input,select.app-input{box-sizing:border-box;display:block;width:100%;min-height:var(--color-input-height, 40px);padding:0 var(--color-input-padding-x, 12px);border-radius:var(--color-input-radius, 4px);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-input-text);font-size:14px;font-family:inherit;line-height:1.5;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}textarea.app-input{min-height:80px;padding-top:8px;padding-bottom:8px;resize:vertical}.app-input::placeholder,input.app-input::placeholder,textarea.app-input::placeholder{color:var(--color-input-placeholder)}.app-input:hover:not(:disabled):not(:focus),input.app-input:hover:not(:disabled):not(:focus),textarea.app-input:hover:not(:disabled):not(:focus),select.app-input:hover:not(:disabled):not(:focus){border-color:var(--color-input-border-hover)}.app-input:focus,input.app-input:focus,textarea.app-input:focus,select.app-input:focus{border-color:var(--color-input-border);box-shadow:none}.app-input:disabled,input.app-input:disabled,textarea.app-input:disabled,select.app-input:disabled{background:var(--color-input-disabled-bg);color:var(--color-input-disabled-text);cursor:not-allowed}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type])),textarea,select:not([multiple]){box-sizing:border-box;border-radius:var(--color-input-radius, 4px);border:1px solid var(--color-input-border);background:var(--color-input-bg);color:var(--color-input-text);font-family:inherit;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type])){height:var(--color-input-height, 40px);padding:0 var(--color-input-padding-x, 12px);font-size:14px}textarea{min-height:80px;padding:8px var(--color-input-padding-x, 12px);font-size:14px;line-height:1.5;resize:vertical}select:not([multiple]){height:var(--color-input-height, 40px);padding:0 var(--color-input-padding-x, 12px);font-size:14px}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type]))::placeholder,textarea::placeholder{color:var(--color-input-placeholder)}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type])):hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus),select:not([multiple]):hover:not(:disabled):not(:focus){border-color:var(--color-input-border-hover)}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type])):focus,textarea:focus,select:not([multiple]):focus{border-color:var(--color-input-border);box-shadow:none}input:is([type=text],[type=email],[type=tel],[type=password],[type=number],[type=search],[type=url],[type=date],[type=datetime-local],[type=time],[type=month],[type=week],:not([type])):disabled,textarea:disabled,select:not([multiple]):disabled{background:var(--color-input-disabled-bg);color:var(--color-input-disabled-text);cursor:not-allowed}.input-group input,.invitation-code-group input,.alm-search-input,.cvp-search-input,.history-search-bar .history-search-input,.recharge-amount-input,.prompt-textarea,.mention-input-editor,.mention-box-editor,.home-voice-editor,.canvas-audio-speed-capsule__value-input,.canvas-debug-json-input,input[type=checkbox],input[type=radio],input[type=file],input[type=hidden],input[type=button],input[type=submit],input[type=reset],input[type=range],input[type=color]{border:none;background:transparent;box-shadow:none;border-radius:0;height:auto;min-height:0;padding:0}.input-group,.invitation-code-group{background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:var(--color-input-radius);transition:border-color .15s ease,box-shadow .15s ease}.input-group:focus-within,.invitation-code-group:focus-within{border-color:var(--color-input-border);box-shadow:none}.input-group input::placeholder,.invitation-code-group input::placeholder{color:var(--color-input-placeholder)}.alm-search,.cvp-search-wrap,.recharge-amount-input-wrapper{background:var(--color-input-bg);border:1px solid var(--color-input-border);border-radius:var(--color-input-radius);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.alm-search:focus-within,.cvp-search-wrap:focus-within,.recharge-amount-input-wrapper:focus-within{border-color:var(--color-input-border);box-shadow:none}.alm-search-input::placeholder,.cvp-search-input::placeholder,.recharge-amount-input::placeholder{color:var(--color-input-placeholder)}:root{scrollbar-width:thin;scrollbar-color:var(--color-scrollbar-thumb, rgba(255, 255, 255, .9)) var(--color-scrollbar-track, rgba(255, 255, 255, .08))}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--color-scrollbar-track, rgba(255, 255, 255, .08));border-radius:999px}*::-webkit-scrollbar-thumb{background:var(--color-scrollbar-thumb, rgba(255, 255, 255, .9));border-radius:999px;border:2px solid transparent;background-clip:content-box}*::-webkit-scrollbar-thumb:hover{background:var(--color-scrollbar-thumb, rgba(255, 255, 255, .98));background-clip:content-box}*::-webkit-scrollbar-corner{background:transparent}
