.ff-app-msg[data-v-64bf86ab]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:24px;background:#00000073;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:ff-app-msg-bg-64bf86ab .16s ease}.ff-app-msg-card[data-v-64bf86ab]{width:min(360px,100%);padding:22px 22px 18px;border-radius:16px;border:1px solid var(--ff-canvas-panel-border, rgba(255, 255, 255, .08));background:var(--ff-canvas-panel, #2c2c2c);box-shadow:0 18px 48px var(--shadow, rgba(0, 0, 0, .35));color:var(--text, #f3f4f6);animation:ff-app-msg-card-64bf86ab .18s ease}.ff-app-msg-title[data-v-64bf86ab]{margin:0 0 8px;font-size:15px;font-weight:650;line-height:1.35}.ff-app-msg-body[data-v-64bf86ab]{margin:0;font-size:14px;line-height:1.55;color:var(--text, #f3f4f6);opacity:.88;white-space:pre-wrap;word-break:break-word}.ff-app-msg-card[data-tone=error] .ff-app-msg-body[data-v-64bf86ab]{color:var(--danger, #e5484d);opacity:1}.ff-app-msg-card[data-tone=success] .ff-app-msg-body[data-v-64bf86ab]{opacity:1}.ff-app-msg-actions[data-v-64bf86ab]{display:flex;justify-content:flex-end;margin-top:18px}.ff-app-msg-ok[data-v-64bf86ab]{min-width:76px;padding:8px 16px;border:0;border-radius:999px;background:var(--ff-action-bg, var(--primary, #fff));color:var(--ff-action-fg, var(--primary-fg, #0a0a0c));font-size:13px;font-weight:600;cursor:pointer}.ff-app-msg-ok[data-v-64bf86ab]:hover{filter:brightness(1.06)}.ff-app-msg-ok[data-v-64bf86ab]:active{transform:scale(.98)}@keyframes ff-app-msg-bg-64bf86ab{0%{opacity:0}to{opacity:1}}@keyframes ff-app-msg-card-64bf86ab{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.locale-switcher[data-v-23881287]{position:relative;display:flex;flex-direction:column;gap:8px;width:100%}.locale-switcher-label[data-v-23881287]{font-size:12px;color:var(--text2, var(--text-muted, #64748b))}.locale-switcher-trigger[data-v-23881287]{display:inline-flex;align-items:center;justify-content:space-between;gap:6px;width:100%;box-sizing:border-box;padding:8px 12px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--text);font:inherit;font-size:12px;cursor:pointer}.locale-switcher.open .locale-switcher-trigger[data-v-23881287],.locale-switcher-trigger[data-v-23881287]:hover{background:var(--card);border-color:color-mix(in srgb,var(--nav-active-solid, #6366f1) 40%,var(--border))}.locale-switcher-value[data-v-23881287]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.locale-switcher-chevron[data-v-23881287]{flex-shrink:0;width:14px;height:14px;opacity:.7;transition:transform .15s ease}.locale-switcher.open .locale-switcher-chevron[data-v-23881287]{transform:rotate(180deg)}.locale-switcher-menu[data-v-23881287]{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:40;min-width:140px;padding:8px;border-radius:16px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 94%,var(--bg));-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 18px 48px var(--shadow);color:var(--text)}.locale-switcher-item[data-v-23881287]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;border:none;border-radius:12px;background:transparent;padding:10px 12px;font:inherit;font-size:13px;color:var(--text);cursor:pointer;text-align:left}.locale-switcher-item[data-v-23881287]:hover,.locale-switcher-item.active[data-v-23881287]{background:color-mix(in srgb,var(--primary) 14%,transparent)}.locale-switcher-item.active[data-v-23881287]{color:var(--primary);font-weight:600}.locale-switcher-check[data-v-23881287]{width:14px;height:14px;flex-shrink:0;opacity:.9}.locale-switcher-check[data-v-23881287] .icon,.locale-switcher-chevron[data-v-23881287] .icon{width:14px;height:14px}.ff-add-port[data-v-3bce5d43]{position:fixed;z-index:4000;min-width:148px;max-height:min(420px,70vh);overflow:auto;padding:10px 10px 8px;border-radius:16px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px var(--shadow);-webkit-backdrop-filter:none;backdrop-filter:none;animation:ff-add-port-in-3bce5d43 .14s ease}.ff-add-port.side-ref[data-v-3bce5d43]:after{content:"";position:absolute;top:0;right:-14px;width:14px;height:100%}.ff-add-port.side-out[data-v-3bce5d43]:before{content:"";position:absolute;top:0;left:-14px;width:14px;height:100%}@keyframes ff-add-port-in-3bce5d43{0%{opacity:0;transform:translate(6px)}to{opacity:1;transform:none}}.ff-add-port.side-out[data-v-3bce5d43]{animation-name:ff-add-port-in-out-3bce5d43}@keyframes ff-add-port-in-out-3bce5d43{0%{opacity:0;transform:translate(-6px)}to{opacity:1;transform:none}}.ff-add-port-title[data-v-3bce5d43]{margin:0 4px 8px;font-size:12px;font-weight:500;color:var(--text3);line-height:1.2}.ff-add-port-items[data-v-3bce5d43]{display:flex;flex-direction:column;gap:4px}.ff-add-port-item[data-v-3bce5d43]{display:flex;align-items:center;gap:10px;width:100%;border:none;border-radius:999px;padding:7px 10px 7px 7px;background:transparent;color:var(--text);font-size:13px;font-weight:500;cursor:pointer;text-align:left}.ff-add-port-item[data-v-3bce5d43]:hover,.ff-add-port-item[data-v-3bce5d43]:focus-visible{background:color-mix(in srgb,var(--card) 88%,transparent);outline:none}.ff-add-port-item[data-v-3bce5d43]:disabled{opacity:.42;cursor:not-allowed}.ff-add-port-ico[data-v-3bce5d43]{width:28px;height:28px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;background:color-mix(in srgb,var(--text) 88%,#111);color:#f8fafc}.ff-add-port-ico[data-v-3bce5d43] .icon{width:14px;height:14px;display:inline-flex}.ff-add-port-ico[data-v-3bce5d43] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-node-resize[data-v-4054ed49]{position:absolute;right:0;bottom:0;width:18px;height:18px;padding:0;border:none;border-radius:6px;background:linear-gradient(135deg,transparent 0 46%,color-mix(in srgb,var(--text) 45%,transparent) 48% 52%,transparent 54% 70%,color-mix(in srgb,var(--text) 55%,transparent) 72% 76%,transparent 78% 100%);cursor:nwse-resize;z-index:40;opacity:0;transition:opacity .15s;touch-action:none}.ff-node-resize[data-v-4054ed49]:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px}.ff-node-resize.active[data-v-4054ed49]{opacity:1}.ff-node-shell[data-v-0842077e]{position:relative}.ff-node-note[data-v-0842077e]{flex-shrink:0;display:flex;align-items:center;min-height:22px;margin:0 12px 10px;max-width:calc(100% - 40px);pointer-events:auto}.ff-node-note-text[data-v-0842077e]{display:block;max-width:100%;font-size:.9em;font-weight:500;line-height:1.3;color:#52525b;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text;-webkit-user-select:none;user-select:none}.ff-node-note-input[data-v-0842077e]{width:100%;min-width:0;margin:0;padding:1px 0;border:none;border-bottom:1px solid color-mix(in srgb,var(--primary) 55%,transparent);background:transparent;color:inherit;font:inherit;font-size:.9em;font-weight:500;line-height:1.3;outline:none}.ff-node-shell.is-fullscreen .ff-node-note[data-v-0842077e]{display:none}:root[data-theme=dark] .ff-node-note-text[data-v-0842077e],:root[data-theme=dark] .ff-node-note-input[data-v-0842077e]{color:#fff}.ff-node-shell.resizing[data-v-0842077e]{-webkit-user-select:none;user-select:none}.ff-node-shell[data-v-0842077e]:hover .ff-node-resize,.ff-node-shell.selected[data-v-0842077e] .ff-node-resize,.ff-node-shell.resizing[data-v-0842077e] .ff-node-resize{opacity:1}.ff-handle[data-v-0842077e]{width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;background:transparent!important;border:none!important}.ff-gen-wave[data-v-e68ba913]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;overflow:hidden;pointer-events:none;border-radius:inherit}.ff-gen-wave-dim[data-v-e68ba913]{position:absolute;top:0;right:0;bottom:0;left:0;background:#181c262e}:root[data-theme=dark] .ff-gen-wave-dim[data-v-e68ba913]{background:#080a1059}.ff-gen-wave-band[data-v-e68ba913]{position:absolute;top:-25%;left:-55%;width:42%;height:150%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.06) 28%,rgba(255,255,255,.32) 50%,rgba(255,255,255,.06) 72%,transparent 100%);filter:blur(10px);transform:skew(-12deg) translate(0);animation:ff-gen-wave-move-e68ba913 1s ease-in-out infinite}.ff-gen-wave-band.is-lag[data-v-e68ba913]{width:28%;left:-40%;opacity:.55;filter:blur(14px);animation-delay:.12s}:root[data-theme=dark] .ff-gen-wave-band[data-v-e68ba913]{background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.04) 28%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.04) 72%,transparent 100%)}@keyframes ff-gen-wave-move-e68ba913{0%{transform:skew(-12deg) translate(0)}to{transform:skew(-12deg) translate(320%)}}@media(prefers-reduced-motion:reduce){.ff-gen-wave-band[data-v-e68ba913]{animation:none;left:30%;opacity:.35}}.ff-wave[data-v-b19d6570]{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.ff-wave-track[data-v-b19d6570]{position:relative;width:88%;height:72%;display:flex;align-items:center}.ff-wave-bars[data-v-b19d6570]{display:flex;align-items:center;justify-content:center;gap:3px;width:100%;height:78%}.ff-wave-bars span[data-v-b19d6570]{flex:1 1 0;min-width:2px;max-width:4px;border-radius:2px;background:#8e9096;align-self:center}.ff-wave-head[data-v-b19d6570]{position:absolute;top:0;bottom:0;width:2px;margin-left:-1px;border-radius:2px;background:#6d6dff;box-shadow:0 0 8px #6d6dff73;pointer-events:none}.ff-empty-pick[data-v-9bc5ca46]{--ff-empty-icon-size: 50px;box-sizing:border-box;width:100%;height:100%;min-height:160px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:16px;color:#a1a1aa;-webkit-user-select:none;user-select:none}.ff-empty-pick-icon[data-v-9bc5ca46]{width:var(--ff-empty-icon-size);height:var(--ff-empty-icon-size);display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:.5;pointer-events:none;color:inherit}.ff-empty-pick .ff-empty-pick-icon[data-v-9bc5ca46] .icon{width:var(--ff-empty-icon-size)!important;height:var(--ff-empty-icon-size)!important;display:flex;align-items:center;justify-content:center;line-height:0}.ff-empty-pick .ff-empty-pick-icon[data-v-9bc5ca46] .icon svg{width:100%!important;height:100%!important;display:block;stroke:currentColor;fill:none;stroke-width:1.35}.ff-empty-pick-actions[data-v-9bc5ca46]{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.ff-empty-pick-btn[data-v-9bc5ca46]{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:34px;padding:0 14px;border:0;border-radius:10px;background:#ffffff14;color:#e4e4e7;font-size:.8125rem;font-weight:500;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.ff-empty-pick-btn[data-v-9bc5ca46]:hover{background:#ffffff24;color:#fff}.ff-empty-pick-btn[data-v-9bc5ca46]:active{background:#ffffff1a}.ff-empty-pick-btn[data-v-9bc5ca46] .icon{width:17px!important;height:17px!important;flex-shrink:0;display:flex;align-items:center;justify-content:center;line-height:0}.ff-empty-pick-btn[data-v-9bc5ca46] .icon svg{width:100%!important;height:100%!important;display:block;stroke:currentColor;fill:none;stroke-width:1.85}:root:not([data-theme=dark]) .ff-empty-pick[data-v-9bc5ca46]{color:#71717a}:root:not([data-theme=dark]) .ff-empty-pick-btn[data-v-9bc5ca46]{background:#18181b0f;color:#3f3f46}:root:not([data-theme=dark]) .ff-empty-pick-btn[data-v-9bc5ca46]:hover{background:#18181b1a;color:#18181b}.ff-pano-viewer[data-v-91a1d055]{position:relative;width:100%;height:100%;min-height:240px;overflow:hidden;background:#0b0d12;touch-action:none;cursor:grab}.ff-pano-viewer[data-v-91a1d055]:active{cursor:grabbing}.ff-pano-canvas[data-v-91a1d055]{width:100%;height:100%;display:block}.ff-pano-fallback[data-v-91a1d055]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}.ff-pano-status[data-v-91a1d055]{position:absolute;left:12px;right:12px;bottom:12px;z-index:2;margin:0;padding:8px 12px;border-radius:10px;background:#0f121a9e;color:#f4f4f5;font-size:12px;text-align:center;pointer-events:none}.ff-pano-fs-mask[data-v-8e622da0]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1360;display:grid;place-items:center;padding:28px;background:#090a0fd1}.ff-pano-fs-stage[data-v-8e622da0]{position:relative;width:min(1100px,calc(100vw - 48px));height:min(72vh,720px);border-radius:18px;overflow:hidden;box-shadow:0 28px 80px #00000073}.ff-pano-fs-meta[data-v-8e622da0]{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 14px;padding:10px 14px;border-radius:12px;background:#0f121a9e;color:#f4f4f5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);pointer-events:none}.ff-pano-fs-meta strong[data-v-8e622da0]{font-size:14px;font-weight:700}.ff-pano-fs-meta span[data-v-8e622da0]{font-size:12px;opacity:.85}.ff-pano-fs-close[data-v-8e622da0]{position:absolute;top:20px;right:20px;z-index:3;width:40px;height:40px;border:0;border-radius:12px;background:#fff;color:#18181b;display:grid;place-items:center;cursor:pointer}.ff-pano-fs-close[data-v-8e622da0] .icon{width:18px;height:18px;display:inline-flex}.ff-pano-fs-close[data-v-8e622da0] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}@media(max-width:640px){.ff-pano-fs-mask[data-v-8e622da0]{padding:12px}.ff-pano-fs-stage[data-v-8e622da0]{width:calc(100vw - 24px);height:min(68vh,560px)}}.ff-img-fs-mask[data-v-c6ba9aa1]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:grid;place-items:center;background:#090a0fd1;-webkit-user-select:none;user-select:none;touch-action:none}.ff-img-fs-img[data-v-c6ba9aa1]{max-width:min(920px,calc(100vw - 48px));max-height:90vh;border-radius:16px;object-fit:contain;box-shadow:0 24px 64px #00000059;transform-origin:center center;will-change:transform}.ff-img-fs-close[data-v-c6ba9aa1]{position:absolute;top:20px;right:20px;z-index:2;width:40px;height:40px;border:none;border-radius:12px;background:#fff;color:#18181b;display:grid;place-items:center;cursor:pointer}.ff-img-fs-close[data-v-c6ba9aa1] .icon{width:18px;height:18px;display:inline-flex}.ff-img-fs-close[data-v-c6ba9aa1] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-img-fs-hint[data-v-c6ba9aa1]{position:absolute;left:50%;bottom:20px;z-index:2;margin:0;padding:6px 12px;border-radius:999px;background:#0f121a9e;color:#f4f4f5;font-size:12px;line-height:1.3;transform:translate(-50%);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);white-space:nowrap}.ff-rev-badge[data-v-7c6871cc]{position:absolute;right:8px;bottom:8px;z-index:4;width:36px;height:36px;padding:0;border:none;border-radius:999px;display:grid;place-items:center;cursor:pointer;color:#fff;background:#0f121ac7;box-shadow:0 4px 14px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ff-rev-badge[data-v-7c6871cc]:hover{background:#0f121aeb}.ff-rev-badge[data-v-7c6871cc] .icon{width:16px;height:16px;display:inline-flex}.ff-rev-badge[data-v-7c6871cc] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-rev-count[data-v-7c6871cc]{position:absolute;right:-4px;bottom:-4px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#7c5cfc;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center;box-shadow:0 0 0 2px #0f121a8c}:root:not([data-theme=dark]) .ff-node-body.stacked,:root:not([data-theme=dark]) .ff-image-body.stacked{box-shadow:8px 6px #f4f6fa,9px 7px #b7c0ce,16px 12px #eef1f6,17px 13px #9aa6b8,var(--ff-node-surface-shadow)}:root[data-theme=dark] .ff-node-body.stacked,:root[data-theme=dark] .ff-image-body.stacked{box-shadow:5px 3px #323a4c,10px 6px #262c3a,0 8px 20px #0006}.ff-rev-pop{position:fixed;z-index:1400;width:min(292px,calc(100vw - 16px));max-height:min(360px,calc(100vh - 16px));display:flex;flex-direction:column;padding:10px;border-radius:16px;background:#fff;color:#18181b;box-shadow:0 18px 48px #0f172a38;border:1px solid color-mix(in srgb,var(--text, #18181b) 8%,transparent)}:root[data-theme=dark] .ff-rev-pop{background:var(--ff-canvas-panel);color:#f4f4f5;border-color:var(--ff-canvas-panel-border);box-shadow:0 18px 48px #00000080}.ff-rev-pop-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:2px 4px 8px;font-size:13px;font-weight:650}.ff-rev-pop-n{min-width:20px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,#7c5cfc 18%,transparent);color:#7c5cfc;font-size:12px;font-weight:700;line-height:20px;text-align:center}.ff-rev-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;overflow:auto;padding-bottom:2px}.ff-rev-item{position:relative;aspect-ratio:1;padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:#ececef;cursor:pointer}.ff-rev-item.current{border-color:#7c5cfc}.ff-rev-item img,.ff-rev-item-fallback{width:100%;height:100%;object-fit:cover;display:block}.ff-rev-item-fallback{display:grid;place-items:center;color:#a1a1aa;background:#151922}.ff-rev-item-fallback .icon{width:18px;height:18px}.ff-rev-item-now{position:absolute;left:4px;right:4px;bottom:4px;padding:2px 4px;border-radius:6px;background:#0f121ab8;color:#fff;font-size:10px;line-height:1.3;text-align:center}:root[data-theme=dark] .ff-rev-item{background:#151922}.ff-vbar[data-v-0a183366]{position:absolute;left:8px;right:8px;bottom:8px;z-index:3;display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border-radius:10px;background:linear-gradient(180deg,#1c202a8c,#12161ec7);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 6px 18px #00000047;color:#fff;pointer-events:auto}.ff-vbar-btn[data-v-0a183366]{flex:0 0 auto;width:26px;height:26px;margin:0;padding:0;border:none;border-radius:6px;display:grid;place-items:center;background:transparent;color:#fff;cursor:pointer}.ff-vbar-btn[data-v-0a183366]:hover:not(:disabled){background:#ffffff1f}.ff-vbar-btn[data-v-0a183366]:disabled{opacity:.45;cursor:default}.ff-vbar-btn[data-v-0a183366] .icon{width:15px;height:15px;display:inline-flex}.ff-vbar-btn[data-v-0a183366] .icon svg{width:100%;height:100%;fill:currentColor;stroke:none}.ff-vbar-btn[data-v-0a183366]:last-child .icon svg{fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-vbar-time[data-v-0a183366]{flex:0 0 auto;min-width:2.4em;font-size:11px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:.02em;opacity:.95;-webkit-user-select:none;user-select:none}.ff-vbar-seek[data-v-0a183366]{position:relative;flex:1 1 auto;min-width:48px;height:18px;display:flex;align-items:center}.ff-vbar-seek-track[data-v-0a183366]{position:absolute;left:0;right:0;height:3px;border-radius:999px;background:#ffffff47;pointer-events:none}.ff-vbar-seek-fill[data-v-0a183366]{height:100%;border-radius:inherit;background:#fff}.ff-vbar-seek-thumb[data-v-0a183366]{position:absolute;top:50%;width:10px;height:10px;margin-left:-5px;margin-top:-5px;border-radius:50%;background:#fff;box-shadow:0 1px 4px #00000059}.ff-vbar-seek-input[data-v-0a183366]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;margin:0;opacity:0;cursor:pointer;accent-color:#fff}.ff-media-node[data-v-01062f3c]{min-width:120px;min-height:120px;display:flex;flex-direction:column;border-radius:20px;border:none;background:transparent;box-shadow:none;color:#3f3f46;font-size:var(--ff-node-font-size);overflow:visible}:root[data-theme=dark] .ff-media-node[data-v-01062f3c]{color:#fff}.ff-media-node.selected .ff-node-body[data-v-01062f3c]{outline:2px solid color-mix(in srgb,var(--nav-active-solid) 70%,#e5e5e5);outline-offset:1px}:root[data-theme=dark] .ff-media-node.selected .ff-node-body[data-v-01062f3c]{outline-color:#fff}.ff-node-head[data-v-01062f3c]{display:flex;align-items:center;justify-content:space-between;padding:10px 14px 6px;gap:8px;flex-shrink:0;cursor:grab}.ff-node-head[data-v-01062f3c]:active{cursor:grabbing}.ff-kind[data-v-01062f3c]{display:inline-flex;align-items:center;gap:6px;color:#71717a;font-size:1em;margin-right:auto;min-width:0}.ff-kind[data-v-01062f3c] .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0}.ff-kind[data-v-01062f3c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}:root[data-theme=dark] .ff-kind[data-v-01062f3c]{color:#fff}.ff-pano-tag[data-v-01062f3c]{padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary);font-size:.8em;font-weight:700}.ff-status[data-v-01062f3c]{font-size:.85em;color:#c88a5e;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-status-error[data-v-01062f3c]{color:#ef4444}:root[data-theme=dark] .ff-status[data-v-01062f3c]{color:var(--accent)}:root[data-theme=dark] .ff-status-error[data-v-01062f3c]{color:#f87171}.ff-delete[data-v-01062f3c]{width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:#a1a1aa;cursor:pointer;line-height:1;font-size:1.1em}.ff-delete[data-v-01062f3c]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-delete[data-v-01062f3c]:hover{background:#2a3140;color:#f4f4f5}.ff-node-body[data-v-01062f3c]{position:relative;flex:1;min-height:0;margin:0 10px 10px;border-radius:14px;overflow:hidden;background:#ececef;box-shadow:var(--ff-node-surface-shadow)}.ff-node-body.has-caption[data-v-01062f3c]{margin-bottom:4px}.ff-node-body.stacked[data-v-01062f3c]{margin-right:24px;margin-bottom:18px}.ff-node-body.panorama[data-v-01062f3c],.ff-node-body.zoomable[data-v-01062f3c]{cursor:zoom-in}.ff-node-body img[data-v-01062f3c],.ff-node-body video[data-v-01062f3c]{width:100%;height:100%;object-fit:cover;display:block}.ff-media-corner[data-v-01062f3c]{position:absolute;right:8px;bottom:8px;z-index:2;width:32px;height:32px;border:none;border-radius:10px;display:grid;place-items:center;padding:0;cursor:pointer;color:#fff;background:#0f121a9e;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .15s ease,background .15s ease}.ff-node-body:hover .ff-media-corner[data-v-01062f3c]{opacity:1}.ff-media-corner[data-v-01062f3c]:hover{background:#0f121ad9}.ff-media-corner[data-v-01062f3c] .icon{width:14px;height:14px;display:inline-flex}.ff-media-corner[data-v-01062f3c] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-node-body.stacked .ff-media-corner[data-v-01062f3c]{top:8px;bottom:auto}.ff-video-preview[data-v-01062f3c]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.ff-video-frame[data-v-01062f3c]{width:100%;height:100%;object-fit:cover;display:block;background:#111;cursor:pointer}.ff-empty[data-v-01062f3c]{--ff-empty-icon-size: 50px;width:100%;height:100%;min-height:120px;display:grid;place-items:center;color:#a1a1aa;font-size:.9em;text-align:center;padding:12px;background:transparent}.ff-empty-media[data-v-01062f3c] .icon{width:var(--ff-empty-icon-size)!important;height:var(--ff-empty-icon-size)!important;opacity:.5;display:flex;align-items:center;justify-content:center;line-height:0}.ff-empty-media[data-v-01062f3c] .icon svg{width:100%!important;height:100%!important;stroke:currentColor;fill:none;stroke-width:1.5}.ff-empty-video[data-v-01062f3c],.ff-empty-audio[data-v-01062f3c]{font-size:1.85em;opacity:.5}.ff-node-body.is-audio[data-v-01062f3c]{background:#2c2c2c;cursor:pointer}.ff-audio-body[data-v-01062f3c]{width:100%;height:100%;min-height:96px;display:flex;align-items:center;justify-content:center;box-sizing:border-box;background:#2c2c2c}.ff-audio-el[data-v-01062f3c]{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.ff-pano-hint[data-v-01062f3c]{position:absolute;left:8px;right:8px;bottom:8px;padding:5px 8px;border-radius:8px;background:#0f121a9e;color:#fff;font-size:.8em;line-height:1.3;text-align:center;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-media-caption[data-v-01062f3c]{margin:0 12px 10px;font-size:.9em;font-weight:500;color:#52525b;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root[data-theme=dark] .ff-media-caption[data-v-01062f3c]{color:#fff}:root[data-theme=dark] .ff-node-body[data-v-01062f3c]{background:var(--ff-canvas-panel)}.ff-file-hidden[data-v-01062f3c]{display:none}.ff-video-player-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:grid;place-items:center;padding:32px;background:#090a0fb8}.ff-video-player{max-width:min(960px,100%);max-height:90vh;width:min(960px,100%);border-radius:16px;background:#000;box-shadow:0 24px 64px #00000059}.ff-video-player-close{position:absolute;top:20px;right:20px;width:40px;height:40px;border:none;border-radius:12px;background:#fff;color:#18181b;display:grid;place-items:center;cursor:pointer}.ff-video-player-close .icon{width:18px;height:18px;display:inline-flex}.ff-video-player-close .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-text-toolbar[data-v-48024087]{position:relative;display:inline-flex;align-items:center;gap:2px;min-height:52px;padding:6px 8px;border-radius:18px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 10px 28px #0f172a1a;white-space:nowrap}.ff-text-toolbar.bare[data-v-48024087]{min-height:0;padding:0;border:none;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}:root[data-theme=dark] .ff-text-toolbar[data-v-48024087]:not(.bare){border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px #00000073}.ff-tb-color-wrap[data-v-48024087]{position:relative;display:grid;place-items:center}.ff-tb-btn[data-v-48024087]{min-width:36px;height:36px;padding:0 8px;border:none;border-radius:12px;background:transparent;color:#3f3f46;cursor:pointer;display:grid;place-items:center;font-size:12px;font-weight:650;line-height:1}:root[data-theme=dark] .ff-tb-btn[data-v-48024087]{color:var(--ff-node-console-fg)}.ff-tb-btn[data-v-48024087]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-tb-btn[data-v-48024087]:hover{background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-tb-btn.active[data-v-48024087]{background:#f4f4f5;color:#18181b;box-shadow:inset 0 0 0 1px #e4e4e7}:root[data-theme=dark] .ff-tb-btn.active[data-v-48024087]{background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg);box-shadow:inset 0 0 0 1px var(--ff-canvas-panel-border)}:root[data-theme=dark] .ff-tb-btn[data-v-48024087]:disabled{color:var(--ff-node-console-fg-muted);opacity:1;cursor:not-allowed}.ff-tb-btn.is-bold[data-v-48024087]{font-weight:800}.ff-tb-btn.is-italic[data-v-48024087]{font-style:italic;font-family:Georgia,Times New Roman,serif}.ff-tb-btn.is-color[data-v-48024087]{padding:0;width:36px}.ff-tb-btn[data-v-48024087] .icon{width:16px;height:16px;display:inline-flex}.ff-tb-btn[data-v-48024087] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ff-tb-swatch[data-v-48024087]{width:16px;height:16px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 20%,transparent);box-shadow:0 0 0 1px #00000014}.ff-tb-color-panel[data-v-48024087]{position:absolute;left:50%;top:calc(100% + 10px);bottom:auto;transform:translate(-50%);display:grid;grid-template-columns:repeat(6,22px);gap:8px;padding:10px;border-radius:14px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 12px 28px #0f172a1f;z-index:12}:root[data-theme=dark] .ff-tb-color-panel[data-v-48024087]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px #00000073}.ff-text-toolbar.bare .ff-tb-color-panel[data-v-48024087]{top:auto;bottom:calc(100% + 10px)}.ff-tb-color-chip[data-v-48024087]{width:22px;height:22px;border-radius:50%;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);padding:0;cursor:pointer;display:grid;place-items:center;background:color-mix(in srgb,var(--card) 80%,transparent)}.ff-tb-color-chip.is-default[data-v-48024087]{background:linear-gradient(135deg,transparent 46%,color-mix(in srgb,var(--text) 35%,transparent) 48%,color-mix(in srgb,var(--text) 35%,transparent) 52%,transparent 54%),color-mix(in srgb,var(--card) 70%,#888)}.ff-tb-color-chip[data-v-48024087]:hover{transform:scale(1.08)}.ff-tb-color-chip.active[data-v-48024087]{box-shadow:0 0 0 2px var(--sidebar-bg),0 0 0 3.5px color-mix(in srgb,var(--text) 55%,transparent)}.ff-tb-color-default-mark[data-v-48024087]{font-size:11px;line-height:1;color:var(--text2);opacity:.85}.ff-tb-sep[data-v-48024087]{width:1px;height:16px;margin:0 4px;background:var(--border);flex-shrink:0}.ff-text-node[data-v-b0c4c95c]{position:relative;min-width:280px;min-height:200px;display:flex;flex-direction:column;border-radius:20px;border:none;background:transparent;box-shadow:none;color:#3f3f46;font-size:var(--ff-node-font-size);overflow:visible;transition:color .18s ease}:root[data-theme=dark] .ff-text-node[data-v-b0c4c95c]{color:#fff}.ff-text-node.tinted[data-v-b0c4c95c]{color:var(--ff-card-fg)}.ff-text-node.selected .ff-text-body[data-v-b0c4c95c]{outline:2px solid color-mix(in srgb,var(--nav-active-solid) 70%,#e5e5e5);outline-offset:1px}:root[data-theme=dark] .ff-text-node.selected .ff-text-body[data-v-b0c4c95c]{outline-color:#fff}.ff-text-node.tinted.selected .ff-text-body[data-v-b0c4c95c]{outline-color:color-mix(in srgb,var(--ff-card-fg) 28%,transparent)}.ff-text-node[data-v-b0c4c95c]:hover .ff-node-resize,.ff-text-node.selected[data-v-b0c4c95c] .ff-node-resize{opacity:1}.ff-text-card[data-v-b0c4c95c]{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:visible;background:transparent}.ff-text-card.is-asset-running[data-v-b0c4c95c]{pointer-events:none}.ff-script-asset-lock[data-v-b0c4c95c]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:20px;background:color-mix(in srgb,var(--card, #fff) 72%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);text-align:center;pointer-events:auto}.ff-script-asset-lock p[data-v-b0c4c95c]{margin:0;font-size:.88rem;line-height:1.5;color:var(--text2, #64748b)}:root[data-theme=dark] .ff-script-asset-lock[data-v-b0c4c95c]{background:color-mix(in srgb,#1e2330 78%,transparent)}:root[data-theme=dark] .ff-script-asset-lock p[data-v-b0c4c95c]{color:var(--text2)}.ff-script-asset-cancel[data-v-b0c4c95c]{margin-top:4px;border:1px solid color-mix(in srgb,var(--text) 18%,transparent);border-radius:999px;padding:6px 14px;background:color-mix(in srgb,var(--card, #fff) 88%,transparent);color:inherit;font-size:.82rem;cursor:pointer}.ff-script-asset-cancel[data-v-b0c4c95c]:hover{background:color-mix(in srgb,var(--text) 8%,transparent)}.ff-text-drag[data-v-b0c4c95c]{display:flex;align-items:center;gap:6px;padding:10px 14px 6px;font-size:1em;font-weight:500;color:#71717a;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;background:transparent}:root[data-theme=dark] .ff-text-drag[data-v-b0c4c95c]{color:#fff}.ff-text-node.tinted .ff-text-drag[data-v-b0c4c95c]{color:var(--ff-card-muted)}.ff-text-drag[data-v-b0c4c95c]:active{cursor:grabbing}.ff-text-drag[data-v-b0c4c95c] .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0}.ff-text-drag[data-v-b0c4c95c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-text-body[data-v-b0c4c95c]{position:relative;flex:1;min-height:0;margin:0 10px 4px;display:flex;flex-direction:column;border-radius:14px;overflow:hidden;background:#ececef;box-shadow:var(--ff-node-surface-shadow)}:root[data-theme=dark] .ff-text-body[data-v-b0c4c95c]{background:var(--ff-canvas-panel)}.ff-text-node.tinted .ff-text-body[data-v-b0c4c95c]{background:var(--ff-card-bg)}.ff-text-editor-shell[data-v-b0c4c95c]{flex:1;min-height:0;overflow:auto}.ff-text-editor-shell[data-v-b0c4c95c]:not(.is-editing){cursor:grab}.ff-text-editor-shell[data-v-b0c4c95c]:not(.is-editing):active{cursor:grabbing}.ff-text-editor-shell[data-v-b0c4c95c]:not(.is-editing) .ff-text-tiptap{cursor:grab;caret-color:transparent;-webkit-user-select:none;user-select:none}.ff-text-editor-shell.is-editing[data-v-b0c4c95c] .ff-text-tiptap{cursor:text;-webkit-user-select:text;user-select:text}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap{outline:none;padding:14px 16px 16px;line-height:1.7;font-size:.95em;min-height:100%;color:var(--text)}.ff-text-node.tinted .ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap{color:var(--ff-card-fg)}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap p.is-editor-empty:first-child:before,.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap .is-empty:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;color:var(--text3)}.ff-text-node.tinted .ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap p.is-editor-empty:first-child:before,.ff-text-node.tinted .ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap .is-empty:before{color:var(--ff-card-muted)}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap h1{font-size:1.6em;font-weight:700;line-height:1.35;margin:0 0 .4em}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap h2{font-size:1.25em;font-weight:650;line-height:1.4;margin:0 0 .35em}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap h3{font-size:1.1em;font-weight:600;line-height:1.45;margin:0 0 .3em}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap p{margin:0 0 .45em}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap ul,.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap ol{margin:.25em 0 .55em;padding-left:1.35em}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap ul{list-style:disc}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap ol{list-style:decimal}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap li{margin:.15em 0}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap li p{margin:0}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap hr{border:none;border-top:1px solid color-mix(in srgb,var(--text) 22%,transparent);margin:.85em 0}.ff-text-node.tinted .ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap hr{border-top-color:var(--ff-card-line)}.ff-text-node.tinted .ff-delete[data-v-b0c4c95c]{color:var(--ff-card-muted)}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap strong{font-weight:700}.ff-text-editor-shell[data-v-b0c4c95c] .ff-text-tiptap em{font-style:italic}.ff-script-enter[data-v-b0c4c95c]{margin-left:auto;display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 8px;border:1px solid color-mix(in srgb,var(--text) 14%,transparent);border-radius:8px;background:color-mix(in srgb,var(--text) 5%,transparent);color:var(--text2);font-size:.78em;font-weight:600;cursor:pointer;white-space:nowrap}.ff-script-enter[data-v-b0c4c95c]:hover{color:var(--primary-fg);border-color:transparent;background:var(--primary);box-shadow:0 4px 12px var(--nav-item-shadow, rgba(139, 92, 246, .35))}.ff-script-enter[data-v-b0c4c95c] .icon{width:13px;height:13px;display:inline-flex}.ff-script-enter[data-v-b0c4c95c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-delete[data-v-b0c4c95c]{width:22px;height:22px;margin-left:4px;padding:0;border:none;border-radius:6px;background:transparent;color:#a1a1aa;cursor:pointer;line-height:1;font-size:1.1em}.ff-text-drag:not(:has(.ff-script-enter)) .ff-delete[data-v-b0c4c95c]{margin-left:auto}.ff-delete[data-v-b0c4c95c]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-delete[data-v-b0c4c95c]:hover{background:#2a3140;color:#f4f4f5}.ff-text-editor-shell.is-placeholder[data-v-b0c4c95c]{min-height:120px;pointer-events:none;opacity:.35}.ff-text-preview[data-v-b0c4c95c]{padding:10px 14px 14px;overflow:auto;line-height:1.7;color:var(--text);cursor:text}.ff-text-node.tinted .ff-text-preview[data-v-b0c4c95c]{color:var(--ff-card-fg)}.ff-text-preview[data-v-b0c4c95c] p{margin:0 0 .35em}.ff-text-preview[data-v-b0c4c95c] p:last-child{margin-bottom:0}.ff-script-status[data-v-b0c4c95c]{color:#c88a5e;font-size:.85em;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=dark] .ff-script-status[data-v-b0c4c95c]{color:var(--accent)}.ff-text-status-error[data-v-b0c4c95c]{color:#ef4444;max-width:160px}:root[data-theme=dark] .ff-text-status-error[data-v-b0c4c95c]{color:#f87171}.ff-text-fs-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:grid;place-items:center;padding:min(4vh,28px) min(3vw,24px);background:var(--bg, #f1f5f9);animation:ff-text-fs-in .18s ease}@keyframes ff-text-fs-in{0%{opacity:0}to{opacity:1}}.ff-text-fs-panel{width:min(920px,100%);height:min(820px,92vh);display:flex;flex-direction:column;border-radius:16px;border:1px solid var(--border, #e2e8f0);background:var(--bg, #f1f5f9);box-shadow:0 24px 64px var(--shadow, rgba(15, 23, 42, .18));overflow:hidden;color:var(--text, #0f172a);animation:ff-text-fs-panel-in .2s ease}@keyframes ff-text-fs-panel-in{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.ff-text-fs-panel.tinted{background:var(--ff-card-bg);border-color:var(--ff-card-line);color:var(--ff-card-fg)}.ff-text-fs-head{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;padding:10px 12px;flex-shrink:0;border-bottom:1px solid var(--border, #e2e8f0);background:inherit}.ff-text-fs-panel.tinted .ff-text-fs-head{border-bottom-color:var(--ff-card-line)}.ff-text-fs-tools{display:flex;justify-content:center;min-width:0;overflow-x:auto}.ff-text-fs-iconbtn{width:36px;height:36px;border:none;border-radius:10px;background:transparent;color:inherit;opacity:.72;cursor:pointer;display:grid;place-items:center;padding:0}.ff-text-fs-iconbtn:hover{opacity:1;background:color-mix(in srgb,currentColor 10%,transparent)}.ff-text-fs-iconbtn .icon{width:18px;height:18px;display:inline-flex}.ff-text-fs-iconbtn .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ff-text-fs-editor{flex:1;min-height:0;overflow:auto;background:inherit}.ff-text-fs-editor .ff-text-tiptap{outline:none;min-height:100%;padding:28px 40px 48px;line-height:1.75;font-size:1.1em;cursor:text;color:inherit}.ff-text-fs-editor .ff-text-tiptap p.is-editor-empty:first-child:before,.ff-text-fs-editor .ff-text-tiptap .is-empty:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;opacity:.45}.ff-text-fs-editor .ff-text-tiptap h1{font-size:2.1em;font-weight:700;line-height:1.3;margin:0 0 .45em}.ff-text-fs-editor .ff-text-tiptap h2{font-size:1.6em;font-weight:650;line-height:1.35;margin:0 0 .4em}.ff-text-fs-editor .ff-text-tiptap h3{font-size:1.25em;font-weight:600;line-height:1.4;margin:0 0 .35em}.ff-text-fs-editor .ff-text-tiptap p{margin:0 0 .55em}.ff-text-fs-editor .ff-text-tiptap ul,.ff-text-fs-editor .ff-text-tiptap ol{margin:.3em 0 .7em;padding-left:1.4em}.ff-text-fs-editor .ff-text-tiptap ul{list-style:disc}.ff-text-fs-editor .ff-text-tiptap ol{list-style:decimal}.ff-text-fs-editor .ff-text-tiptap li{margin:.18em 0}.ff-text-fs-editor .ff-text-tiptap li p{margin:0}.ff-text-fs-editor .ff-text-tiptap hr{border:none;border-top:1px solid color-mix(in srgb,currentColor 22%,transparent);margin:1em 0}.ff-text-fs-editor .ff-text-tiptap strong{font-weight:700}.ff-text-fs-editor .ff-text-tiptap em{font-style:italic}.ff-image-node[data-v-49ef43a1]{min-width:120px;min-height:120px;display:flex;flex-direction:column;border-radius:20px;border:none;background:transparent;box-shadow:none;color:#3f3f46;font-size:var(--ff-node-font-size, 19px);overflow:visible}:root[data-theme=dark] .ff-image-node[data-v-49ef43a1]{color:#fff}.ff-image-node.selected .ff-image-body[data-v-49ef43a1]{outline:2px solid color-mix(in srgb,var(--nav-active-solid) 70%,#e5e5e5);outline-offset:1px}:root[data-theme=dark] .ff-image-node.selected .ff-image-body[data-v-49ef43a1]{outline-color:#fff}.ff-image-label[data-v-49ef43a1]{display:flex;align-items:center;gap:6px;padding:10px 12px 6px;font-size:.95em;font-weight:500;color:#71717a;flex-shrink:0;cursor:grab}.ff-image-label[data-v-49ef43a1]:active{cursor:grabbing}:root[data-theme=dark] .ff-image-label[data-v-49ef43a1]{color:#fff}.ff-image-label[data-v-49ef43a1] .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0}.ff-image-label[data-v-49ef43a1] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-image-pano-tag[data-v-49ef43a1]{margin-left:2px;padding:1px 6px;border-radius:999px;background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary);font-size:.75em;font-weight:700}.ff-image-status[data-v-49ef43a1]{margin-left:auto;font-size:.85em;color:#c88a5e;max-width:55%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-image-status-error[data-v-49ef43a1]{color:#ef4444}:root[data-theme=dark] .ff-image-status-error[data-v-49ef43a1]{color:#f87171}.ff-image-delete[data-v-49ef43a1]{margin-left:auto;width:24px;height:24px;border:none;border-radius:6px;background:transparent;color:#a1a1aa;cursor:pointer;line-height:1;font-size:1.15em}.ff-image-status+.ff-image-delete[data-v-49ef43a1]{margin-left:4px}.ff-image-delete[data-v-49ef43a1]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-image-delete[data-v-49ef43a1]:hover{background:#2a3140;color:#f4f4f5}.ff-image-body[data-v-49ef43a1]{position:relative;flex:1;min-height:0;margin:0 10px 10px;border-radius:14px;overflow:hidden;background:#ececef;box-shadow:var(--ff-node-surface-shadow)}:root[data-theme=dark] .ff-image-body[data-v-49ef43a1]{background:var(--ff-canvas-panel)}.ff-image-body.has-caption[data-v-49ef43a1]{margin-bottom:4px}.ff-image-body.stacked[data-v-49ef43a1]{margin-right:24px;margin-bottom:18px}.ff-image-body.panorama[data-v-49ef43a1]{cursor:zoom-in}.ff-image-body img[data-v-49ef43a1]{width:100%;height:100%;object-fit:cover;display:block}.ff-image-corner[data-v-49ef43a1]{position:absolute;right:8px;bottom:8px;width:32px;height:32px;border:0;border-radius:10px;background:#ffffffeb;color:#27272a;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px #0f172a2e}.ff-image-corner[data-v-49ef43a1] .icon{width:15px;height:15px}.ff-image-body.stacked .ff-image-corner[data-v-49ef43a1]{top:8px;bottom:auto}.ff-image-pano-hint[data-v-49ef43a1]{position:absolute;left:8px;bottom:8px;max-width:calc(100% - 52px);padding:5px 8px;border-radius:8px;background:#0f121a9e;color:#fff;font-size:.75em;line-height:1.3;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-image-caption[data-v-49ef43a1]{margin:0 12px 10px;font-size:.9em;font-weight:500;color:#52525b;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:root[data-theme=dark] .ff-image-caption[data-v-49ef43a1]{color:#fff}.ff-file-hidden[data-v-49ef43a1]{display:none}.ff-asset-group[data-v-c04f0c35]{min-width:420px;min-height:360px;display:flex;flex-direction:column;border-radius:20px;border:none;background:transparent;box-shadow:none;color:#3f3f46;font-size:var(--ff-node-font-size)}:root[data-theme=dark] .ff-asset-group[data-v-c04f0c35]{color:#fff}.ff-asset-group.selected .ag-body[data-v-c04f0c35]{outline:2px solid color-mix(in srgb,var(--nav-active-solid) 70%,#e5e5e5);outline-offset:1px}:root[data-theme=dark] .ff-asset-group.selected .ag-body[data-v-c04f0c35]{outline-color:#fff}.ag-head[data-v-c04f0c35]{display:flex;align-items:center;gap:8px;padding:10px 14px 6px;cursor:grab;flex-shrink:0}.ag-head[data-v-c04f0c35]:active{cursor:grabbing}.ag-kind[data-v-c04f0c35]{display:inline-flex;align-items:center;gap:6px;color:#71717a;font-size:.9em;margin-right:auto}.ag-kind[data-v-c04f0c35] .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0}.ag-kind[data-v-c04f0c35] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}:root[data-theme=dark] .ag-kind[data-v-c04f0c35]{color:#fff}.ag-seed[data-v-c04f0c35]{border:none;background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary);font-size:.85em;padding:4px 8px;border-radius:8px;cursor:pointer}.ag-delete[data-v-c04f0c35]{border:none;background:transparent;color:#a1a1aa;font-size:1.2em;line-height:1;cursor:pointer;padding:0 4px}.ag-body[data-v-c04f0c35]{flex:1;min-height:0;display:flex;flex-direction:column;padding:0 10px 12px;gap:10px;overflow:hidden;border-radius:16px;background:#f9f9f9;box-shadow:var(--ff-node-surface-shadow)}:root[data-theme=dark] .ag-body[data-v-c04f0c35]{background:var(--ff-canvas-panel)}.ag-tabs[data-v-c04f0c35]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.ag-tab[data-v-c04f0c35]{display:inline-flex;align-items:center;gap:4px;border:1px solid transparent;background:color-mix(in srgb,var(--text) 4%,transparent);color:inherit;font-size:.85em;padding:5px 8px;border-radius:999px;cursor:pointer}.ag-tab[data-v-c04f0c35] .icon{width:12px;height:12px;display:inline-flex}.ag-tab[data-v-c04f0c35] .icon svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.8}.ag-tab.active[data-v-c04f0c35]{border-color:color-mix(in srgb,var(--primary) 40%,transparent);background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.ag-count[data-v-c04f0c35]{opacity:.65;font-variant-numeric:tabular-nums}.ag-tab-add[data-v-c04f0c35]{padding:5px 7px}.ag-cat-form[data-v-c04f0c35]{display:inline-flex;gap:4px;align-items:center}.ag-cat-input[data-v-c04f0c35]{width:88px;border:1px solid color-mix(in srgb,var(--text) 15%,transparent);border-radius:8px;padding:4px 6px;font-size:.85em;background:transparent;color:inherit}.ag-cat-ok[data-v-c04f0c35]{border:none;background:var(--primary);color:var(--primary-fg);font-size:.85em;padding:4px 8px;border-radius:8px;cursor:pointer}.ag-grid[data-v-c04f0c35]{flex:1;min-height:0;overflow:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;align-content:start}.ag-card[data-v-c04f0c35]{border-radius:12px;border:1px solid color-mix(in srgb,var(--text) 8%,transparent);background:color-mix(in srgb,var(--text) 3%,transparent);overflow:hidden;display:flex;flex-direction:column}.ag-card.expanded[data-v-c04f0c35]{grid-column:1 / -1}.ag-card-main[data-v-c04f0c35]{display:flex;flex-direction:column;border:none;background:transparent;color:inherit;text-align:left;padding:0;cursor:pointer}.ag-card.expanded .ag-card-main[data-v-c04f0c35]{flex-direction:row;gap:10px;padding:8px}.ag-thumb[data-v-c04f0c35]{position:relative;aspect-ratio:3 / 4;background:color-mix(in srgb,var(--text) 6%,transparent);overflow:hidden}.ag-card.expanded .ag-thumb[data-v-c04f0c35]{width:72px;flex-shrink:0;aspect-ratio:3 / 4;border-radius:8px}.ag-thumb img[data-v-c04f0c35]{width:100%;height:100%;object-fit:cover;display:block}.ag-thumb-ph[data-v-c04f0c35],.ag-thumb-create[data-v-c04f0c35]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#a1a1aa}.ag-thumb-ph[data-v-c04f0c35] .icon,.ag-thumb-create[data-v-c04f0c35] .icon,.ag-look-add[data-v-c04f0c35] .icon{width:22px;height:22px;display:inline-flex}.ag-thumb-ph[data-v-c04f0c35] .icon svg,.ag-thumb-create[data-v-c04f0c35] .icon svg,.ag-look-add[data-v-c04f0c35] .icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6}.ag-badge[data-v-c04f0c35]{position:absolute;top:6px;left:6px;font-size:.8em;padding:2px 6px;border-radius:999px;background:#0000008c;color:#fff}.ag-badge.ready[data-v-c04f0c35]{background:#16a34ad9}.ag-info[data-v-c04f0c35]{padding:6px 8px 8px}.ag-card.expanded .ag-info[data-v-c04f0c35]{flex:1;padding:0}.ag-name[data-v-c04f0c35]{width:100%;border:none;background:transparent;color:inherit;font-size:.9em;font-weight:600;padding:0;outline:none}.ag-meta[data-v-c04f0c35],.ag-info h3[data-v-c04f0c35]{margin:2px 0 0;font-size:.85em;font-weight:500;color:#71717a}:root[data-theme=dark] .ag-meta[data-v-c04f0c35],:root[data-theme=dark] .ag-info h3[data-v-c04f0c35]{color:#a1a1aa}.ag-create[data-v-c04f0c35]{border-style:dashed;cursor:pointer;background:transparent;color:inherit;padding:0}.ag-create .ag-thumb-create[data-v-c04f0c35]{aspect-ratio:3 / 4}.ag-looks[data-v-c04f0c35]{display:flex;flex-wrap:wrap;gap:8px;padding:0 8px 10px;align-items:flex-start}.ag-look[data-v-c04f0c35]{position:relative;width:72px;aspect-ratio:3 / 4;border-radius:8px;overflow:hidden;border:1.5px solid transparent;background:color-mix(in srgb,var(--text) 6%,transparent)}.ag-look.canonical[data-v-c04f0c35]{border-color:#22c55e}.ag-look img[data-v-c04f0c35]{width:100%;height:100%;object-fit:cover;display:block}.ag-look-ph[data-v-c04f0c35]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#a1a1aa}.ag-look-ph[data-v-c04f0c35] .icon{width:22px;height:22px;display:inline-flex}.ag-look-ph[data-v-c04f0c35] .icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6}.ag-look-pin[data-v-c04f0c35]{position:absolute;right:4px;bottom:4px;border:none;border-radius:999px;width:22px;height:22px;background:#0000008c;color:#fbbf24;cursor:pointer;font-size:.85em;line-height:1}.ag-look-add[data-v-c04f0c35]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:1.5px dashed color-mix(in srgb,var(--text) 20%,transparent);background:transparent;color:#71717a;cursor:pointer;font-size:.8em;padding:4px}.ag-remove[data-v-c04f0c35]{margin-left:auto;align-self:center;border:none;background:transparent;color:#ef4444;font-size:.85em;cursor:pointer;padding:4px 6px}.ff-asset-category[data-v-9fd8c24a]{font-size:var(--ff-node-font-size);display:flex;flex-direction:column;overflow:visible;border:none;border-radius:16px;background:transparent;color:var(--text);box-shadow:none}:root[data-theme=dark] .ff-asset-category[data-v-9fd8c24a]{color:#fff}.ff-asset-category.selected .ac-body[data-v-9fd8c24a]{outline:2px solid var(--primary);outline-offset:1px}.ff-asset-category[data-v-9fd8c24a] .ff-handle-plus-face{opacity:1!important}.ac-head[data-v-9fd8c24a]{display:flex;align-items:center;padding:8px 10px 4px 12px;cursor:grab}.ac-type[data-v-9fd8c24a]{margin-right:auto;color:var(--text3);font-size:.85em;display:inline-flex;align-items:center;gap:6px}.ac-type[data-v-9fd8c24a] .icon{width:15px;height:15px;display:inline-flex;flex-shrink:0}.ac-type[data-v-9fd8c24a] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}:root[data-theme=dark] .ac-type[data-v-9fd8c24a]{color:#fff}.ac-delete[data-v-9fd8c24a]{border:0;background:transparent;color:var(--text3);cursor:pointer;font-size:1.15em}.ac-body[data-v-9fd8c24a]{flex:1;display:grid;grid-template-columns:36px 1fr;align-items:center;gap:8px 10px;padding:8px 14px 14px;border-radius:14px;background:var(--card, #fff);box-shadow:var(--ff-node-surface-shadow)}:root[data-theme=dark] .ac-body[data-v-9fd8c24a]{background:var(--ff-canvas-panel)}.ac-icon[data-v-9fd8c24a]{width:36px;height:36px;display:grid;place-items:center;border-radius:11px;color:#fff;background:var(--primary)}.ac-icon[data-v-9fd8c24a] .icon{width:16px;height:16px;display:inline-flex}.ac-icon[data-v-9fd8c24a] svg{width:100%;height:100%;fill:none;stroke:currentColor}.ac-body strong[data-v-9fd8c24a]{font-size:1em}.ff-storyboard[data-v-3664ef69]{min-width:240px;min-height:280px;display:flex;flex-direction:column;background:transparent;border:none;box-shadow:none;color:#3f3f46;font-size:var(--ff-node-font-size);overflow:visible}:root[data-theme=dark] .ff-storyboard[data-v-3664ef69]{color:#fff}.ff-storyboard.selected .sb-card[data-v-3664ef69]{outline:2px solid color-mix(in srgb,var(--nav-active-solid) 70%,#e5e5e5);outline-offset:1px}:root[data-theme=dark] .ff-storyboard.selected .sb-card[data-v-3664ef69]{outline-color:#fff}.ff-storyboard.is-running .sb-card[data-v-3664ef69]{outline:2px solid color-mix(in srgb,var(--primary) 70%,transparent);outline-offset:1px}.sb-card[data-v-3664ef69]{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;margin:0 10px 4px;padding:12px 14px 14px;border-radius:14px;background:#ececef;box-shadow:var(--ff-node-surface-shadow);overflow:hidden;cursor:grab}:root[data-theme=dark] .sb-card[data-v-3664ef69]{background:var(--ff-canvas-panel)}.sb-card[data-v-3664ef69]:active{cursor:grabbing}.sb-card-title[data-v-3664ef69]{display:flex;align-items:center;gap:8px;min-width:0;font-weight:600}.sb-card-title[data-v-3664ef69] svg{width:16px;height:16px;flex-shrink:0;color:#71717a}:root[data-theme=dark] .sb-card-title[data-v-3664ef69] svg{color:#fff}.sb-card-title span[data-v-3664ef69]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-delete[data-v-3664ef69]{margin-left:auto;border:none;background:transparent;color:#71717a;font-size:1.15em;line-height:1;cursor:pointer;padding:0 2px;opacity:0}:root[data-theme=dark] .sb-delete[data-v-3664ef69]{color:#fff}.sb-card:hover .sb-delete[data-v-3664ef69],.ff-storyboard.selected .sb-delete[data-v-3664ef69]{opacity:1}.sb-card-mark[data-v-3664ef69]{flex:1;display:grid;place-items:center;min-height:64px}.sb-bars[data-v-3664ef69]{display:flex;flex-direction:column;gap:5px;width:26px}.sb-bars.pulse[data-v-3664ef69]{animation:sb-pulse-3664ef69 1.1s ease-in-out infinite}.sb-bars i[data-v-3664ef69]{display:block;height:2px;border-radius:2px;background:currentColor;opacity:.45}@keyframes sb-pulse-3664ef69{50%{opacity:.35;transform:scale(.92)}}.sb-steps[data-v-3664ef69]{display:flex;align-items:flex-start;margin:0 0 12px;padding:0;list-style:none}.sb-step[data-v-3664ef69]{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:8px;color:#71717a;font-size:12px;line-height:1.25;text-align:center}:root[data-theme=dark] .sb-step[data-v-3664ef69]{color:#ffffff8c}.sb-step.done[data-v-3664ef69]{color:inherit}.sb-step-top[data-v-3664ef69]{display:flex;align-items:center;width:100%}.sb-line[data-v-3664ef69]{flex:1;height:1px;background:color-mix(in srgb,currentColor 22%,transparent)}.sb-line.on[data-v-3664ef69]{background:color-mix(in srgb,currentColor 55%,transparent)}.sb-line.hide[data-v-3664ef69]{visibility:hidden}.sb-dot[data-v-3664ef69]{width:18px;height:18px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;border:1.5px solid currentColor;background:transparent}.sb-step.done .sb-dot[data-v-3664ef69]{background:currentColor;color:#ececef}:root[data-theme=dark] .sb-step.done .sb-dot[data-v-3664ef69]{color:var(--ff-canvas-panel)}.sb-step.current .sb-dot[data-v-3664ef69]{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 28%,transparent)}.sb-dot svg[data-v-3664ef69]{width:12px;height:12px}.sb-card-error[data-v-3664ef69]{margin:0 0 8px;color:#ef4444;font-size:12px;line-height:1.4;text-align:center}:root[data-theme=dark] .sb-card-error[data-v-3664ef69]{color:#f87171}.sb-open[data-v-3664ef69]{display:flex;align-items:center;justify-content:center;gap:8px;height:40px;border:none;border-radius:10px;background:var(--primary);color:var(--primary-fg, #fff);font:inherit;font-size:14px;cursor:pointer}.sb-open[data-v-3664ef69]:disabled{cursor:default;opacity:.72}.sb-open[data-v-3664ef69]:not(:disabled):hover{filter:brightness(1.06)}.sb-modal[data-v-3664ef69]{position:relative;width:min(920px,100%);height:min(820px,92vh);display:flex;flex-direction:column;box-sizing:border-box;border-radius:16px;border:1px solid #e2e5ec;background:#f4f5f9;color:#1f2937;box-shadow:0 24px 64px var(--shadow, rgba(15, 23, 42, .18));overflow:hidden}:root[data-theme=dark] .sb-modal[data-v-3664ef69]{background:var(--ff-canvas-panel);border-color:var(--ff-canvas-panel-border);color:var(--text)}.sb-intro[data-v-3664ef69]{flex-shrink:0;display:flex;align-items:flex-start;gap:12px;padding:18px 16px 14px 22px;border-bottom:1px solid #e2e5ec;background:#f4f5f9}:root[data-theme=dark] .sb-intro[data-v-3664ef69]{border-bottom-color:#ffffff14;background:#2c2c2c}.sb-intro-copy[data-v-3664ef69]{flex:1;min-width:0}.sb-modal-close[data-v-3664ef69]{flex-shrink:0;width:36px;height:36px;padding:0;border:1px solid #d8dbe3;border-radius:50%;background:#fff;color:#4b5563;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .sb-modal-close[data-v-3664ef69]{border-color:#ffffff38;background:#3a3a3a;color:#fff}.sb-modal-close[data-v-3664ef69]:hover{color:var(--primary-fg);border-color:transparent;background:var(--primary)}.sb-modal-close[data-v-3664ef69] svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75}.sb-body[data-v-3664ef69]{flex:1;min-height:0;overflow:auto;padding:16px 22px 18px;display:flex;flex-direction:column;gap:12px;background:#f4f5f9}:root[data-theme=dark] .sb-body[data-v-3664ef69]{background:#2c2c2c}.sb-film[data-v-3664ef69]{margin:0;font-size:1.2em;font-weight:650;line-height:1.35}.sb-summary[data-v-3664ef69],.sb-error[data-v-3664ef69],.sb-empty p[data-v-3664ef69]{margin:4px 0 0;color:#71717a;font-size:.92em;line-height:1.45}:root[data-theme=dark] .sb-summary[data-v-3664ef69],:root[data-theme=dark] .sb-empty p[data-v-3664ef69]{color:#ffffff9e}.sb-video-hint[data-v-3664ef69]{margin:4px 0 0;color:var(--primary);font-size:.92em}.sb-error[data-v-3664ef69]{color:#ef4444}.sb-empty[data-v-3664ef69]{padding:28px 8px;text-align:center}.sb-episodes[data-v-3664ef69],.sb-episode[data-v-3664ef69],.sb-shots[data-v-3664ef69]{display:flex;flex-direction:column;gap:12px}.sb-episode-name[data-v-3664ef69]{margin:0;font-size:.95em;color:#71717a}.sb-scene[data-v-3664ef69]{border-radius:14px;background:#fff;padding:10px 10px 12px;display:flex;flex-direction:column;gap:8px}:root[data-theme=dark] .sb-scene[data-v-3664ef69]{background:var(--ff-canvas-panel-hover)}.sb-scene.armed[data-v-3664ef69],.sb-shot.armed[data-v-3664ef69]{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary) 55%,transparent)}.sb-scene-head[data-v-3664ef69]{display:flex;align-items:center;gap:6px;min-width:0}.sb-badge[data-v-3664ef69]{flex-shrink:0;border-radius:999px;padding:2px 8px;font-size:.78em;font-weight:650;background:color-mix(in srgb,currentColor 8%,transparent)}.sb-title[data-v-3664ef69]{flex:1;min-width:0;border:none;background:transparent;color:inherit;text-align:left;font:inherit;font-weight:620;padding:2px 4px;border-radius:6px;cursor:text;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-title[data-v-3664ef69]:hover,.sb-v[data-v-3664ef69]:hover{background:color-mix(in srgb,currentColor 6%,transparent)}.sb-title-input[data-v-3664ef69],.sb-area[data-v-3664ef69]{flex:1;min-width:0;border:1px solid color-mix(in srgb,var(--primary) 45%,transparent);border-radius:8px;background:#fff;color:inherit;font:inherit;padding:4px 6px}:root[data-theme=dark] .sb-title-input[data-v-3664ef69],:root[data-theme=dark] .sb-area[data-v-3664ef69]{background:#1a1a1a}.sb-area[data-v-3664ef69]{width:100%;resize:vertical;line-height:1.45}.sb-dur[data-v-3664ef69]{flex-shrink:0;color:#71717a;font-size:.8em;font-variant-numeric:tabular-nums}.sb-icon[data-v-3664ef69],.sb-video[data-v-3664ef69],.sb-add[data-v-3664ef69]{border:none;background:transparent;color:#71717a;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:4px}:root[data-theme=dark] .sb-icon[data-v-3664ef69],:root[data-theme=dark] .sb-video[data-v-3664ef69],:root[data-theme=dark] .sb-add[data-v-3664ef69],:root[data-theme=dark] .sb-dur[data-v-3664ef69]{color:#ffffff9e}.sb-icon[data-v-3664ef69],.sb-video[data-v-3664ef69]{width:26px;height:26px;border-radius:8px;flex-shrink:0}.sb-icon[data-v-3664ef69]:hover,.sb-video[data-v-3664ef69]:hover,.sb-add[data-v-3664ef69]:hover{background:color-mix(in srgb,currentColor 8%,transparent);color:inherit}.sb-icon.danger[data-v-3664ef69]:hover{color:#ef4444}.sb-video.on[data-v-3664ef69]{color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,transparent)}.sb-icon[data-v-3664ef69] svg,.sb-video[data-v-3664ef69] svg,.sb-add[data-v-3664ef69] svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}.sb-field[data-v-3664ef69]{display:grid;grid-template-columns:4.5em minmax(0,1fr);gap:8px;align-items:start}.sb-k[data-v-3664ef69]{color:#71717a;font-size:.78em;line-height:1.6;padding-top:3px;white-space:nowrap}.sb-v[data-v-3664ef69]{border:none;background:transparent;color:inherit;text-align:left;font:inherit;line-height:1.55;padding:2px 4px;border-radius:6px;cursor:text;white-space:pre-wrap}.sb-v.placeholder[data-v-3664ef69]{color:#71717a}.sb-assets[data-v-3664ef69]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.sb-asset[data-v-3664ef69]{border-radius:999px;padding:2px 8px;background:color-mix(in srgb,currentColor 6%,transparent);font-size:.8em}.sb-shot[data-v-3664ef69]{position:relative;border-radius:12px;background:#ececef;padding:8px 8px 8px 10px}:root[data-theme=dark] .sb-shot[data-v-3664ef69]{background:color-mix(in srgb,#000 28%,var(--ff-canvas-panel))}.sb-shot-actions[data-v-3664ef69]{position:absolute;top:6px;right:6px;display:flex;gap:2px;z-index:1}.sb-shot-box[data-v-3664ef69]{display:block;width:100%;min-height:72px;margin:0;padding:2px 56px 2px 0;border:none;border-radius:8px;background:transparent;color:inherit;font:inherit;line-height:1.55;resize:vertical}.sb-shot-box[data-v-3664ef69]:focus{outline:none;background:color-mix(in srgb,currentColor 5%,transparent)}.sb-add[data-v-3664ef69]{align-self:flex-start;border-radius:999px;padding:5px 10px;font:inherit;font-size:.86em}.ff-edit-expand-mask[data-v-96afa3c8]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1080;background:#00000047}.ff-edit-bar[data-v-96afa3c8]{position:fixed;z-index:1100;box-sizing:border-box;min-width:300px;max-width:min(960px,calc(100vw - 16px));border-radius:16px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 16px 40px #0f172a1a;padding:12px 14px 10px;pointer-events:auto;will-change:top,left,width;display:flex;flex-direction:column}:root[data-theme=dark] .ff-edit-bar[data-v-96afa3c8]{border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 16px 40px #00000073}.ff-edit-bar.resizing[data-v-96afa3c8]{-webkit-user-select:none;user-select:none}.ff-edit-bar.is-image[data-v-96afa3c8]{border-radius:20px}.ff-edit-bar.is-expanded[data-v-96afa3c8]{top:50%;left:50%;transform:translate(-50%,-50%);z-index:1250;height:min(620px,calc(100vh - 72px));max-height:min(620px,calc(100vh - 72px));max-width:min(960px,calc(100vw - 48px));padding:16px 18px 14px;border-radius:20px;will-change:auto;box-shadow:0 24px 64px #0f172a47}:root[data-theme=dark] .ff-edit-bar.is-expanded[data-v-96afa3c8]{box-shadow:0 24px 64px #0000008c}.ff-edit-bar-body[data-v-96afa3c8]{display:flex;flex-direction:column;min-height:0;flex:1}.ff-edit-bar.is-expanded .ff-edit-bar-body[data-v-96afa3c8]{height:100%;min-height:0}.ff-edit-bar[data-v-96afa3c8] .ff-media-refs,.ff-edit-bar[data-v-96afa3c8] .ff-audio-refs,.ff-edit-bar[data-v-96afa3c8] .ff-text-refs,.ff-edit-bar[data-v-96afa3c8] .ff-video-refs{padding-right:32px}.ff-edit-bar[data-v-96afa3c8]:not(.is-expanded) [data-ff-mention-prompt],.ff-edit-bar[data-v-96afa3c8]:not(.is-expanded) .ff-script-prompt,.ff-edit-bar[data-v-96afa3c8]:not(.is-expanded) .ff-edit-body textarea{max-height:10.2em;max-height:6lh;overflow-y:auto}.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-media-refs,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-audio-refs,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-text-refs,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-video-refs,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-media-foot,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-audio-foot,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-text-foot,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-edit-foot,.ff-edit-bar.is-expanded[data-v-96afa3c8] .script-composer-toolbar,.ff-edit-bar.is-expanded[data-v-96afa3c8] .script-composer-file{flex:0 0 auto}.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-media-editor,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-audio-editor,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-text-editor,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-prompt-wrap,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-edit-body,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-script-prompt{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.ff-edit-bar.is-expanded[data-v-96afa3c8] [data-ff-mention-prompt],.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-script-prompt,.ff-edit-bar.is-expanded[data-v-96afa3c8] .ff-edit-body textarea{flex:1 1 auto;min-height:0!important;max-height:none!important;height:auto!important;overflow-y:auto}.ff-edit-expand-btn[data-v-96afa3c8]{position:absolute;top:8px;right:8px;z-index:6;width:28px;height:28px;padding:0;border:0;border-radius:8px;background:transparent;color:#a1a1aa;display:grid;place-items:center;cursor:pointer}.ff-edit-expand-btn[data-v-96afa3c8]:hover{background:#f4f4f5;color:#52525b}:root[data-theme=dark] .ff-edit-expand-btn[data-v-96afa3c8]:hover{background:var(--ff-canvas-panel-hover, #2a3140);color:#e4e4e7}.ff-edit-expand-btn[data-v-96afa3c8] .icon{width:15px;height:15px;display:inline-flex}.ff-edit-expand-btn[data-v-96afa3c8] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-edit-resize[data-v-96afa3c8]{position:absolute;right:2px;bottom:2px;width:16px;height:16px;padding:0;border:none;border-radius:4px;background:linear-gradient(135deg,transparent 0 46%,color-mix(in srgb,var(--text) 40%,transparent) 48% 52%,transparent 54% 70%,color-mix(in srgb,var(--text) 50%,transparent) 72% 76%,transparent 78% 100%);cursor:nwse-resize;z-index:5;opacity:.55;touch-action:none}.ff-edit-bar:hover .ff-edit-resize[data-v-96afa3c8],.ff-edit-bar.resizing .ff-edit-resize[data-v-96afa3c8]{opacity:1}.ff-edit-resize[data-v-96afa3c8]:before{content:"";position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.ff-mention-mask[data-v-b412916c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;display:grid;place-items:center;padding:24px;background:#0f121a66;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-mention-pop[data-v-b412916c]{display:flex;align-items:stretch;width:min(280px,calc(100vw - 32px));height:min(520px,calc(100vh - 48px));border-radius:16px;border:1px solid #e4e4e7;background:#fff;box-shadow:0 22px 56px #0f172a38;overflow:hidden;box-sizing:border-box}.ff-mention-pop.has-side[data-v-b412916c]{width:min(860px,calc(100vw - 32px))}:root[data-theme=dark] .ff-mention-pop[data-v-b412916c]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 18px 48px #00000080}.ff-mention-nav[data-v-b412916c]{width:260px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid #e4e4e7;background:#fafafa}:root[data-theme=dark] .ff-mention-nav[data-v-b412916c]{border-right-color:var(--ff-canvas-panel-border);background:color-mix(in srgb,var(--ff-canvas-panel) 92%,#000)}.ff-mention-nav-head[data-v-b412916c]{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:14px 12px 8px 14px;flex-shrink:0}.ff-mention-nav-head h2[data-v-b412916c]{margin:0;font-size:14px;font-weight:650;color:#18181b}:root[data-theme=dark] .ff-mention-nav-head h2[data-v-b412916c]{color:#f4f4f5}.ff-mention-close[data-v-b412916c]{width:30px;height:30px;border:0;border-radius:9px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer}.ff-mention-close[data-v-b412916c]:hover{background:#e4e4e7;color:#3f3f46}:root[data-theme=dark] .ff-mention-close[data-v-b412916c]:hover{background:var(--ff-canvas-panel-hover);color:#e4e4e7}.ff-mention-close[data-v-b412916c] .icon,.ff-mention-nav-ico[data-v-b412916c] .icon,.ff-mention-list-head[data-v-b412916c] .icon,.ff-mention-preview-ph[data-v-b412916c] .icon,.ff-mention-avatar[data-v-b412916c] .icon{width:16px;height:16px;display:inline-flex}.ff-mention-close[data-v-b412916c] svg,.ff-mention-nav-ico[data-v-b412916c] svg,.ff-mention-list-head[data-v-b412916c] svg,.ff-mention-preview-ph[data-v-b412916c] svg,.ff-mention-avatar[data-v-b412916c] svg,.ff-mention-search[data-v-b412916c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ff-mention-search[data-v-b412916c]{display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:0 10px;height:34px;flex-shrink:0;border-radius:10px;border:1px solid #e4e4e7;background:#fff;color:#a1a1aa}:root[data-theme=dark] .ff-mention-search[data-v-b412916c]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#71717a}.ff-mention-search[data-v-b412916c] .icon{width:14px;height:14px;flex-shrink:0;display:inline-flex}.ff-mention-search-input[data-v-b412916c]{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:#18181b;font:inherit;font-size:12px}.ff-mention-search-input[data-v-b412916c]::placeholder{color:#a1a1aa}:root[data-theme=dark] .ff-mention-search-input[data-v-b412916c]{color:#f4f4f5}.ff-mention-search-input[data-v-b412916c]::-webkit-search-cancel-button{display:none}.ff-mention-nav-scroll[data-v-b412916c]{flex:1;min-height:0;overflow-y:auto;padding:0 8px 12px}.ff-mention-group-label[data-v-b412916c]{margin:10px 8px 6px;font-size:11px;font-weight:600;color:#a1a1aa;letter-spacing:.02em}.ff-mention-nav-item[data-v-b412916c]{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;border-radius:10px;background:transparent;color:#3f3f46;text-align:left;cursor:pointer}.ff-mention-nav-item[data-v-b412916c]:hover{background:#f4f4f5}.ff-mention-nav-item.active[data-v-b412916c]{background:#e4e4e7;color:#18181b}:root[data-theme=dark] .ff-mention-nav-item[data-v-b412916c]{color:#e4e4e7}:root[data-theme=dark] .ff-mention-nav-item[data-v-b412916c]:hover,:root[data-theme=dark] .ff-mention-nav-item.active[data-v-b412916c]{background:var(--ff-canvas-panel-hover)}.ff-mention-nav-ico[data-v-b412916c]{width:28px;height:28px;border-radius:8px;background:#fff;border:1px solid #e4e4e7;display:grid;place-items:center;color:#71717a;flex-shrink:0}:root[data-theme=dark] .ff-mention-nav-ico[data-v-b412916c]{background:var(--ff-canvas-panel);border-color:#3f4654;color:#a1a1aa}.ff-mention-nav-label[data-v-b412916c]{flex:1;min-width:0;font-size:13px;font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-mention-nav-action[data-v-b412916c]{flex-shrink:0;font-size:11px;color:#a1a1aa}.ff-mention-list[data-v-b412916c]{width:280px;flex-shrink:0;display:flex;flex-direction:column;min-height:0;border-right:1px solid #e4e4e7;background:#fff}:root[data-theme=dark] .ff-mention-list[data-v-b412916c]{border-right-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-mention-list-head[data-v-b412916c]{display:flex;align-items:center;gap:8px;padding:14px 14px 10px;flex-shrink:0;color:#71717a}.ff-mention-list-head h3[data-v-b412916c]{margin:0;font-size:13px;font-weight:650;color:#18181b}:root[data-theme=dark] .ff-mention-list-head h3[data-v-b412916c]{color:#f4f4f5}.ff-mention-scroll[data-v-b412916c]{flex:1;min-height:0;overflow-y:auto;padding:0 8px 12px}.ff-mention-item[data-v-b412916c]{display:flex;align-items:center;gap:10px;width:100%;padding:8px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer}.ff-mention-item[data-v-b412916c]:hover,.ff-mention-item.active[data-v-b412916c]{background:#f4f4f5}:root[data-theme=dark] .ff-mention-item[data-v-b412916c]:hover,:root[data-theme=dark] .ff-mention-item.active[data-v-b412916c]{background:var(--ff-canvas-panel-hover)}.ff-mention-item.busy[data-v-b412916c]{opacity:.6}.ff-mention-avatar[data-v-b412916c]{width:40px;height:40px;border-radius:9px;overflow:hidden;flex-shrink:0;background:#f4f4f5;border:1px solid #e4e4e7;display:grid;place-items:center;color:#a1a1aa}:root[data-theme=dark] .ff-mention-avatar[data-v-b412916c]{background:var(--ff-canvas-panel-hover);border-color:#3f4654}.ff-mention-avatar img[data-v-b412916c],.ff-mention-avatar video[data-v-b412916c]{width:100%;height:100%;object-fit:cover;display:block;background:#18181b}.ff-mention-text[data-v-b412916c]{min-width:0;display:flex;flex-direction:column;gap:2px}.ff-mention-text strong[data-v-b412916c]{font-size:13px;font-weight:600;color:#18181b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-mention-text small[data-v-b412916c]{font-size:11px;color:#a1a1aa;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=dark] .ff-mention-text strong[data-v-b412916c]{color:#f4f4f5}.ff-mention-preview[data-v-b412916c]{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;background:#f4f4f5}:root[data-theme=dark] .ff-mention-preview[data-v-b412916c]{background:color-mix(in srgb,var(--ff-canvas-panel) 88%,#000)}.ff-mention-preview-head[data-v-b412916c]{padding:14px 16px 8px;flex-shrink:0}.ff-mention-preview-head h3[data-v-b412916c]{margin:0;font-size:13px;font-weight:650;color:#18181b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}:root[data-theme=dark] .ff-mention-preview-head h3[data-v-b412916c]{color:#f4f4f5}.ff-mention-preview-body[data-v-b412916c]{flex:1;min-width:0;min-height:0;margin:0 14px 14px;border-radius:12px;overflow:visible;background:#18181b;display:flex;align-items:center;justify-content:center;padding:8px;box-sizing:border-box}.ff-mention-preview-body.audio[data-v-b412916c]{background:#111827;padding:24px 16px;overflow:hidden;border-radius:12px}.ff-mention-preview-body img[data-v-b412916c],.ff-mention-preview-body video[data-v-b412916c]{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;background:#000;border-radius:8px}.ff-mention-preview-body video[data-v-b412916c]{vertical-align:middle}.ff-mention-audio-wrap[data-v-b412916c]{width:100%;display:flex;flex-direction:column;align-items:center;gap:18px;color:#a1a1aa}.ff-mention-audio-wrap[data-v-b412916c] .icon{width:40px;height:40px;display:inline-flex}.ff-mention-audio-wrap[data-v-b412916c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-mention-audio-wrap audio[data-v-b412916c]{width:min(100%,320px);height:40px}.ff-mention-preview-ph[data-v-b412916c]{display:flex;flex-direction:column;align-items:center;gap:10px;color:#a1a1aa;font-size:12px;padding:24px;text-align:center}.ff-mention-preview-ph[data-v-b412916c] .icon{width:28px;height:28px}.ff-mention-empty[data-v-b412916c]{margin:0;min-height:160px;display:grid;place-items:center;align-content:center;gap:8px;text-align:center;font-size:12px;color:#a1a1aa;padding:16px}.ff-mention-retry[data-v-b412916c]{height:28px;padding:0 12px;border:1px solid #e4e4e7;border-radius:8px;background:#fff;color:#3f3f46;font-size:12px;cursor:pointer}.ff-mention-retry[data-v-b412916c]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-mention-retry[data-v-b412916c]{border-color:#3f4654;background:transparent;color:#e4e4e7}:root[data-theme=dark] .ff-mention-retry[data-v-b412916c]:hover{background:var(--ff-canvas-panel-hover)}.ff-model-picker[data-v-a908484c]{position:relative;flex:0 1 auto;min-width:0}.ff-model-pill[data-v-a908484c]{position:relative;height:34px;max-width:200px;padding:0 8px;border:0;border-radius:10px;color:#27272a;background:transparent;display:inline-flex;align-items:center;gap:5px;font:inherit;cursor:pointer}.ff-model-pill[data-v-a908484c]:hover,.ff-model-pill.open[data-v-a908484c]{background:#f4f4f5}.ff-model-pill-text[data-v-a908484c]{max-width:148px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ff-model-pill-think[data-v-a908484c]{flex-shrink:0;font-size:10px;font-weight:650;line-height:1;padding:3px 6px;border-radius:999px;color:var(--primary);background:color-mix(in srgb,var(--primary) 16%,transparent)}.ff-model-pill[data-v-a908484c] .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0}.ff-model-pill[data-v-a908484c] .icon:last-child{width:12px;height:12px;opacity:.55}.ff-model-pill[data-v-a908484c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-model-panel[data-v-a908484c]{position:absolute;left:0;bottom:calc(100% + 10px);z-index:40;width:min(340px,calc(100vw - 24px));min-width:300px;padding:10px;box-sizing:border-box;border-radius:18px;background:var(--ff-canvas-panel);border:1px solid var(--ff-canvas-panel-border);box-shadow:0 18px 48px #00000073;color:var(--text);opacity:1;backdrop-filter:none;-webkit-backdrop-filter:none}.ff-model-panel.is-end[data-v-a908484c]{left:auto;right:0}:root:not([data-theme=dark]) .ff-model-panel[data-v-a908484c]{box-shadow:0 18px 48px #0f172a24}.ff-model-title[data-v-a908484c]{padding:2px 8px 8px;font-size:11px;font-weight:600;color:#a1a1aa}.ff-model-item[data-v-a908484c]{width:100%;box-sizing:border-box;display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid transparent;border-radius:12px;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit;min-height:42px}.ff-model-item[data-v-a908484c]:hover{background:var(--ff-canvas-panel-hover)}:root:not([data-theme=dark]) .ff-model-item[data-v-a908484c]:hover{background:#f4f4f5}.ff-model-item.active[data-v-a908484c]{border-color:var(--primary, #7c3aed);background:#7c3aed2e}:root:not([data-theme=dark]) .ff-model-item.active[data-v-a908484c]{background:color-mix(in srgb,var(--primary, #7c3aed) 12%,#fff)}.ff-model-ico[data-v-a908484c]{width:28px;height:28px;border-radius:8px;background:var(--ff-canvas-panel-hover);display:grid;place-items:center;flex:0 0 28px}:root:not([data-theme=dark]) .ff-model-ico[data-v-a908484c]{background:#f4f4f5}.ff-model-ico[data-v-a908484c] .icon{width:14px;height:14px;display:inline-flex}.ff-model-ico[data-v-a908484c] svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.ff-model-body[data-v-a908484c]{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:1px;overflow:hidden}.ff-model-name[data-v-a908484c]{font-size:12px;font-weight:600;display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%;line-height:1.3}.ff-model-label[data-v-a908484c]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-model-body small[data-v-a908484c]{font-size:10px;line-height:1.25;color:#9ca3af;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;text-overflow:ellipsis;font-weight:400}:root:not([data-theme=dark]) .ff-model-body small[data-v-a908484c]{color:#71717a}.ff-model-vip[data-v-a908484c]{width:8px;height:8px;border-radius:2px;background:var(--primary);transform:rotate(45deg);display:inline-block;flex-shrink:0}.ff-model-check[data-v-a908484c]{flex:0 0 16px;width:16px;height:16px;color:var(--primary);display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.ff-model-check[data-v-a908484c] .icon{width:16px;height:16px;display:inline-flex}.ff-model-check[data-v-a908484c] svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.ff-model-spacer[data-v-a908484c]{flex:0 0 52px;width:52px;height:1px}.ff-model-think[data-v-a908484c]{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;cursor:pointer;-webkit-user-select:none;user-select:none}.ff-model-think-label[data-v-a908484c]{font-size:11px;color:var(--text2, #a1a1aa);white-space:nowrap}.ff-model-think-input[data-v-a908484c]{position:absolute;opacity:0;width:0;height:0;pointer-events:none}.ff-model-think-ui[data-v-a908484c]{position:relative;width:34px;height:20px;border-radius:999px;background:#3f4654;transition:background .15s ease;flex-shrink:0}:root:not([data-theme=dark]) .ff-model-think-ui[data-v-a908484c]{background:#d4d4d8}.ff-model-think-ui[data-v-a908484c]:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .15s ease}.ff-model-think-input:checked+.ff-model-think-ui[data-v-a908484c]{background:var(--primary)}.ff-model-think-input:checked+.ff-model-think-ui[data-v-a908484c]:after{transform:translate(14px)}.ff-model-think-input:focus-visible+.ff-model-think-ui[data-v-a908484c]{outline:2px solid #a78bfa;outline-offset:2px}:root[data-theme=dark] .ff-model-pill[data-v-a908484c]{color:#e4e4e7}:root[data-theme=dark] .ff-model-pill[data-v-a908484c]:hover,:root[data-theme=dark] .ff-model-pill.open[data-v-a908484c]{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-model-pill-think[data-v-a908484c]{color:#c4b5fd;background:color-mix(in srgb,var(--primary) 22%,transparent)}.ff-action-credit-spin[data-v-d265639e]{width:14px;height:14px;border-radius:50%;border:2px solid color-mix(in srgb,var(--ff-credit-fg) 28%,transparent);border-top-color:var(--ff-credit-fg);display:inline-block;flex-shrink:0;animation:ff-credit-spin-d265639e .7s linear infinite}@keyframes ff-credit-spin-d265639e{to{transform:rotate(360deg)}}.ff-mention-lightbox[data-v-3ce394ee]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px 28px;background:#080a10c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-mention-lightbox-close[data-v-3ce394ee]{position:absolute;top:16px;right:18px;width:36px;height:36px;border:none;border-radius:999px;background:#ffffff1f;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer}.ff-mention-lightbox-close[data-v-3ce394ee]:hover{background:#ffffff38}.ff-mention-lightbox-body[data-v-3ce394ee]{max-width:min(920px,92vw);max-height:min(78vh,820px);display:flex;align-items:center;justify-content:center}.ff-mention-lightbox-body img[data-v-3ce394ee],.ff-mention-lightbox-body video[data-v-3ce394ee]{max-width:100%;max-height:min(78vh,820px);border-radius:12px;object-fit:contain;background:#0b0d12;box-shadow:0 18px 48px #00000059}.ff-mention-lightbox-body audio[data-v-3ce394ee]{width:min(420px,86vw)}.ff-mention-lightbox-caption[data-v-3ce394ee]{margin:0;max-width:min(920px,92vw);color:#ffffffe0;font-size:13px;text-align:center}.ff-edit-hover-pop[data-v-5abb1747]{position:fixed;z-index:1600;border-radius:14px;overflow:hidden;background:#111318;box-shadow:0 16px 40px #0000006b;pointer-events:none}.ff-edit-hover-media[data-v-5abb1747]{width:100%;height:100%;object-fit:contain;display:block;background:#0b0d12}.ff-edit-ref[data-v-93e8c982]{display:flex;flex-direction:column;align-items:center;width:52px;flex:0 0 auto}.ff-edit-ref-card[data-v-93e8c982]{position:relative;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f4f4f5;border:1px solid #e4e4e7}:root[data-theme=dark] .ff-edit-ref-card[data-v-93e8c982]{background:#2a3140;border-color:#3f4654}.ff-edit-ref-media[data-v-93e8c982]{width:100%;height:100%;object-fit:cover;display:block;background:#2a3140;pointer-events:none}.ff-edit-ref-audio[data-v-93e8c982]{width:100%;height:100%;pointer-events:none}.ff-edit-ref-audio[data-v-93e8c982] .ff-wave-track{width:78%;height:62%}.ff-edit-ref-audio[data-v-93e8c982] .ff-wave-bars{gap:1px;height:100%}.ff-edit-ref-audio[data-v-93e8c982] .ff-wave-bars span{min-width:1px;max-width:2px;border-radius:1px;background:#c5c7ce}.ff-edit-ref-ph[data-v-93e8c982]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#a1a1aa;background:#2a3140}.ff-edit-ref-ph[data-v-93e8c982] .icon{width:22px;height:22px;display:inline-flex}.ff-edit-ref-ph[data-v-93e8c982] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-edit-ref-x[data-v-93e8c982]{position:absolute;top:3px;right:3px;width:16px;height:16px;padding:0;border:0;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-edit-ref-x[data-v-93e8c982]:hover{background:#18181beb}.ff-edit-ref-at[data-v-93e8c982]{position:absolute;right:3px;bottom:3px;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:#18181bc7;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-edit-ref-at[data-v-93e8c982]:hover{background:var(--primary)}.ff-edit-ref-at[data-v-93e8c982] .icon{width:10px;height:10px;display:inline-flex}.ff-edit-ref-at[data-v-93e8c982] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2}[data-v-0ba6e941] .ff-edit-bar.is-text-edit{padding:14px 16px 12px;border-radius:28px;border-color:#e8e8ec;box-shadow:0 16px 42px #0f172a1a}.ff-text-refs[data-v-0ba6e941]{display:flex;flex-wrap:wrap;gap:10px 12px;margin-bottom:10px;max-width:100%}.ff-text-ref[data-v-0ba6e941]{display:flex;flex-direction:column;align-items:center;width:52px;flex:0 0 auto}.ff-text-ref-card[data-v-0ba6e941]{position:relative;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f4f4f5;border:1px solid #e4e4e7}:root[data-theme=dark] .ff-text-ref-card[data-v-0ba6e941]{background:#2a3140;border-color:#3f4654}.ff-text-ref-img[data-v-0ba6e941]{width:100%;height:100%;object-fit:cover;display:block}.ff-text-ref-placeholder[data-v-0ba6e941]{width:100%;height:100%;display:grid;place-items:center;color:#a1a1aa;background:#f4f4f5}:root[data-theme=dark] .ff-text-ref-placeholder[data-v-0ba6e941]{background:#2a3140}.ff-text-ref-placeholder[data-v-0ba6e941] .icon{width:22px;height:22px;display:inline-flex}.ff-text-ref-placeholder[data-v-0ba6e941] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-text-ref-x[data-v-0ba6e941]{position:absolute;top:3px;right:3px;width:16px;height:16px;padding:0;border:0;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-text-ref-x[data-v-0ba6e941]:hover{background:#18181beb}.ff-text-ref-at[data-v-0ba6e941]{position:absolute;right:3px;bottom:3px;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:#18181bc7;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-text-ref-at[data-v-0ba6e941] .icon{width:12px;height:12px;display:inline-flex}.ff-text-ref-at[data-v-0ba6e941] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-text-editor[data-v-0ba6e941]{position:relative}.ff-text-prompt[data-v-0ba6e941]{display:block;width:100%;box-sizing:border-box;min-height:72px;max-height:360px;padding:0 30px 0 0;overflow-y:auto;outline:none;color:var(--text);font:inherit;font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.ff-text-prompt[data-empty="1"][data-v-0ba6e941]:before{content:attr(data-placeholder);color:var(--text3);pointer-events:none}.ff-text-foot[data-v-0ba6e941]{display:flex;align-items:center;gap:4px;min-height:42px;margin-top:8px;overflow:visible;position:relative;z-index:2}.ff-text-ico[data-v-0ba6e941]{width:34px;height:34px;flex:0 0 auto;padding:0;border:0;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}.ff-text-ico[data-v-0ba6e941]:hover{background:#f4f4f5}.ff-text-actions[data-v-0ba6e941]{margin-left:auto;display:flex;align-items:center;gap:4px}.ff-text-ico[data-v-0ba6e941] .icon{width:16px;height:16px;display:inline-flex}.ff-text-ico[data-v-0ba6e941] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}:root[data-theme=dark] .ff-text-ico[data-v-0ba6e941]{color:#e4e4e7}:root[data-theme=dark] .ff-text-ico[data-v-0ba6e941]:hover{background:#2a3140}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip{display:inline-flex;align-items:center;gap:4px;vertical-align:baseline;margin:0 2px;padding:1px 8px 1px 3px;border-radius:8px;background:color-mix(in srgb,var(--primary) 14%,#f4f4f5);color:#18181b;font-weight:700;line-height:1.4;-webkit-user-select:none;user-select:none;cursor:default}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip.is-previewable{cursor:zoom-in}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip.is-previewable:hover{filter:brightness(.97)}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-img{width:18px;height:18px;border-radius:5px;overflow:hidden;flex-shrink:0}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-img img,.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-img video{width:100%;height:100%;object-fit:cover;display:block}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-ph{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;font-size:10px;background:#e4e4e7;flex-shrink:0}.ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-name{font-size:13px;font-weight:700}:root[data-theme=dark] .ff-text-prompt[data-v-0ba6e941] .ff-mention-chip{background:color-mix(in srgb,var(--primary) 22%,#2a3140);color:#f4f4f5}:root[data-theme=dark] .ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-img,:root[data-theme=dark] .ff-text-prompt[data-v-0ba6e941] .ff-mention-chip-ph{background:#3f4654}.ff-script-outline-panel{position:relative;width:min(920px,100%);height:min(820px,92vh);padding:16px 18px 14px;box-sizing:border-box;background:#f4f5f9;border-color:#e2e5ec;color:#1f2937}:root[data-theme=dark] .ff-script-outline-panel{background:var(--ff-canvas-panel);border-color:var(--ff-canvas-panel-border);color:var(--text)}:root[data-theme=light] .ff-script-outline-panel{background:#f4f5f9}.ff-script-outline-close{position:absolute;top:12px;right:12px;z-index:2;width:36px;height:36px;padding:0;border:1px solid #d8dbe3;border-radius:50%;background:#fff;color:#4b5563;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .ff-script-outline-close{border-color:#ffffff1f;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text)}.ff-script-outline-close:hover{color:var(--primary-fg);border-color:transparent;background:var(--primary);box-shadow:0 4px 14px var(--nav-item-shadow, rgba(139, 92, 246, .35))}.ff-script-outline-close .icon{width:16px;height:16px;display:flex}.ff-script-outline-close .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ff-script-outline-body{height:100%;min-height:0;display:flex;flex-direction:column;padding-right:28px;overflow:hidden}.ff-script-outline-body .sa-page{height:100%;min-height:0}.ff-script-outline-body .sa-card{flex:1;min-height:0}.ff-script-outline-body .sa-head{padding-right:28px}.ff-script-outline-body .sa-head h2{font-size:.95rem;font-weight:600}.ff-script-outline-status{flex:1;display:grid;place-items:center;color:var(--text2, #6b7280);font-size:14px;text-align:center;padding:24px}.ff-script-outline-error{flex-shrink:0;margin:0 0 10px;padding:8px 12px;border-radius:10px;background:color-mix(in srgb,#f43f5e 12%,transparent);color:#e11d48;font-size:13px;line-height:1.45}.ff-script-outline-close:disabled{opacity:.45;cursor:not-allowed}.ff-script-outline-lock{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;border-radius:inherit;background:color-mix(in srgb,#f4f5f9 82%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);text-align:center;pointer-events:auto}:root[data-theme=dark] .ff-script-outline-lock{background:color-mix(in srgb,#12141c 86%,transparent)}.ff-script-outline-lock p{margin:0;max-width:28em;color:var(--text, #1f2937);font-size:14px;line-height:1.6}.ff-script-outline-lock .ep-assets-spinner{width:36px;height:36px}[data-v-7bed0dcc] .ff-edit-bar.is-script-edit{padding:12px 14px 10px;border-radius:20px;border-color:color-mix(in srgb,var(--border) 88%,transparent);background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 16px 42px #0f172a24}:root[data-theme=dark][data-v-7bed0dcc] .ff-edit-bar.is-script-edit{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 16px 42px #00000073}.ff-script-prompt[data-v-7bed0dcc]{max-height:360px;resize:none;overflow-y:auto;padding-right:28px;box-sizing:border-box}.ff-script-error[data-v-7bed0dcc]{margin:0;color:#f43f5e;font-size:12px}.ff-script-busy[data-v-7bed0dcc]{margin:0;color:var(--primary);font-size:12px}.ff-script-file-input[data-v-7bed0dcc]{display:none}.script-composer-toolbar[data-v-7bed0dcc]{margin-top:2px}.ff-char-opt[data-v-8472a6b5]{display:inline-flex;align-items:center;gap:4px;min-width:0}.ff-char-opt-item[data-v-8472a6b5]{position:relative;flex:0 1 auto;min-width:0}.ff-character-pill[data-v-8472a6b5]{position:relative;height:34px;max-width:180px;padding:0 8px;border:0;border-radius:10px;color:#27272a;background:transparent;display:inline-flex;align-items:center;gap:5px;font:inherit;cursor:pointer}.ff-character-pill[data-v-8472a6b5]:hover,.ff-character-pill.open[data-v-8472a6b5]{background:#f4f4f5}.ff-character-pill.disabled[data-v-8472a6b5],.ff-character-pill[data-v-8472a6b5]:disabled{opacity:.4;cursor:not-allowed}.ff-character-pill.disabled[data-v-8472a6b5]:hover,.ff-character-pill[data-v-8472a6b5]:disabled:hover{background:transparent}:root[data-theme=dark] .ff-character-pill[data-v-8472a6b5]{color:#e4e4e7}:root[data-theme=dark] .ff-character-pill[data-v-8472a6b5]:hover,:root[data-theme=dark] .ff-character-pill.open[data-v-8472a6b5]{background:#2a3140}:root[data-theme=dark] .ff-character-pill.disabled[data-v-8472a6b5]:hover,:root[data-theme=dark] .ff-character-pill[data-v-8472a6b5]:disabled:hover{background:transparent}.ff-char-opt-text[data-v-8472a6b5]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500}.ff-character-pill[data-v-8472a6b5] .icon{width:14px;height:14px;flex-shrink:0;display:inline-flex}.ff-character-pill[data-v-8472a6b5] svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}.ff-char-style-panel[data-v-8472a6b5]{position:absolute;left:0;bottom:calc(100% + 10px);z-index:40;width:min(420px,calc(100vw - 24px));padding:12px;border-radius:16px;background:var(--ff-canvas-panel);border:1px solid var(--ff-canvas-panel-border);box-shadow:0 18px 48px #00000047;color:var(--text, #f4f4f5)}:root:not([data-theme=dark]) .ff-char-style-panel[data-v-8472a6b5]{box-shadow:0 18px 48px #0f172a24;color:#18181b}.ff-char-style-head[data-v-8472a6b5]{display:flex;align-items:center;gap:8px;margin-bottom:10px}.ff-char-style-head strong[data-v-8472a6b5]{font-size:13px;font-weight:650}.ff-char-style-tabs[data-v-8472a6b5]{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}.ff-char-style-tab[data-v-8472a6b5]{border:0;border-radius:999px;padding:4px 8px;font-size:11px;background:transparent;color:var(--text2, #a1a1aa);cursor:pointer}.ff-char-style-tab.active[data-v-8472a6b5]{background:color-mix(in srgb,var(--primary) 16%,transparent);color:var(--primary)}.ff-char-style-search-btn[data-v-8472a6b5]{border:0;width:28px;height:28px;border-radius:8px;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}.ff-char-style-search-btn.on[data-v-8472a6b5],.ff-char-style-search-btn[data-v-8472a6b5]:hover{background:color-mix(in srgb,var(--card, #2a3140) 80%,transparent)}.ff-char-style-search[data-v-8472a6b5]{width:100%;box-sizing:border-box;margin-bottom:10px;height:32px;border-radius:8px;border:1px solid var(--border, #3f4654);background:transparent;color:inherit;padding:0 10px;font:inherit;font-size:12px}.ff-char-style-body[data-v-8472a6b5]{max-height:280px;overflow:auto}.ff-char-style-grid[data-v-8472a6b5]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ff-char-style-card[data-v-8472a6b5]{position:relative;border:1.5px solid transparent;border-radius:10px;overflow:hidden;padding:0;background:#111;cursor:pointer;aspect-ratio:4 / 3}.ff-char-style-card.active[data-v-8472a6b5]{border-color:var(--primary)}.ff-char-style-card img[data-v-8472a6b5]{width:100%;height:100%;object-fit:cover;display:block}.ff-char-style-label[data-v-8472a6b5]{position:absolute;left:0;right:0;bottom:0;padding:6px;font-size:10px;color:#fff;background:linear-gradient(transparent,#000000b8);text-align:left}.ff-char-opt-empty[data-v-8472a6b5]{margin:12px 0 0;font-size:12px;color:var(--text2, #a1a1aa);text-align:center}.ff-char-ratio-panel[data-v-8472a6b5]{position:absolute;right:0;bottom:calc(100% + 10px);z-index:40;width:min(280px,calc(100vw - 24px));padding:12px;border-radius:16px;background:var(--ff-canvas-panel);border:1px solid var(--ff-canvas-panel-border);box-shadow:0 18px 48px #00000047;color:var(--text, #f4f4f5)}:root:not([data-theme=dark]) .ff-char-ratio-panel[data-v-8472a6b5]{box-shadow:0 18px 48px #0f172a24;color:#18181b}.ff-char-opt-title[data-v-8472a6b5]{font-size:11px;font-weight:600;color:var(--text2, #a1a1aa);margin:0 0 8px}.ff-char-opt-title+.ff-char-opt-title[data-v-8472a6b5],.ff-char-res-row+.ff-char-opt-title[data-v-8472a6b5]{margin-top:12px}.ff-char-res-row[data-v-8472a6b5]{display:flex;flex-wrap:wrap;gap:6px}.ff-char-res-btn[data-v-8472a6b5]{border:1px solid var(--border, #3f4654);border-radius:8px;padding:5px 10px;background:transparent;color:inherit;font-size:12px;cursor:pointer}.ff-char-res-btn.active[data-v-8472a6b5]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 14%,transparent);color:var(--primary)}.ff-char-ratio-grid[data-v-8472a6b5]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.ff-char-ratio-btn[data-v-8472a6b5]{position:relative;display:flex;align-items:center;gap:8px;border:1px solid var(--border, #3f4654);border-radius:10px;padding:8px 10px;background:transparent;color:inherit;font-size:12px;cursor:pointer;text-align:left}.ff-char-ratio-btn.active[data-v-8472a6b5]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 10%,transparent)}.ff-char-ratio-shape[data-v-8472a6b5]{width:18px;height:12px;border:1.5px solid currentColor;border-radius:2px;flex-shrink:0;opacity:.7}.ff-char-ratio-shape[data-shape=auto][data-v-8472a6b5]{border-style:dashed}.ff-char-ratio-shape[data-shape=portrait][data-v-8472a6b5],.ff-char-ratio-shape[data-shape=tall][data-v-8472a6b5]{width:12px;height:18px}.ff-char-ratio-shape[data-shape=square][data-v-8472a6b5]{width:14px;height:14px}.ff-char-ratio-shape[data-shape=ultrawide][data-v-8472a6b5]{width:22px;height:10px}.ff-char-ratio-check[data-v-8472a6b5]{margin-left:auto;font-style:normal;color:var(--primary);font-size:12px}[data-v-30596133] .ff-edit-bar.is-media-image{padding:14px 16px 12px;border-radius:28px;border-color:#e8e8ec;box-shadow:0 16px 42px #0f172a1a}.ff-media-refs[data-v-30596133]{display:flex;flex-wrap:wrap;gap:10px 12px;margin-bottom:10px;max-width:100%}.ff-media-ref[data-v-30596133]{display:flex;flex-direction:column;align-items:center;width:52px;flex:0 0 auto}.ff-media-ref-card[data-v-30596133]{position:relative;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f4f4f5;border:1px solid #e4e4e7}.ff-media-ref-img[data-v-30596133]{width:100%;height:100%;object-fit:cover;display:block}.ff-media-ref-placeholder[data-v-30596133]{width:100%;height:100%;display:grid;place-items:center;color:#a1a1aa;background:#f4f4f5}.ff-media-ref-placeholder[data-v-30596133] .icon{width:22px;height:22px;display:inline-flex}.ff-media-ref-placeholder[data-v-30596133] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-media-ref-x[data-v-30596133]{position:absolute;top:3px;right:3px;width:16px;height:16px;padding:0;border:0;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-media-ref-x[data-v-30596133]:hover{background:#18181beb}.ff-media-ref-at[data-v-30596133]{position:absolute;right:3px;bottom:3px;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:#18181bc7;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-media-ref-at[data-v-30596133]:hover{background:var(--primary)}.ff-media-ref-at[data-v-30596133] .icon{width:11px;height:11px;display:inline-flex}.ff-media-ref-at[data-v-30596133] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2}.ff-media-editor[data-v-30596133]{position:relative}.ff-media-prompt[data-v-30596133]{display:block;width:100%;min-height:72px;max-height:360px;box-sizing:border-box;padding:0 30px 0 0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13px;line-height:1.7;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.ff-media-prompt[data-empty="1"][data-v-30596133]:before{content:attr(data-placeholder);color:#a1a1aa;pointer-events:none}.ff-media-prompt[data-v-30596133] .ff-mention-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin:0 2px;padding:1px 8px 1px 3px;border-radius:8px;border:1px solid #e4e4e7;background:#f4f4f5;color:#18181b;font-size:12px;font-weight:700;line-height:1.4;vertical-align:middle;-webkit-user-select:none;user-select:none;cursor:default}.ff-media-prompt[data-v-30596133] .ff-mention-chip.is-previewable{cursor:zoom-in}.ff-media-prompt[data-v-30596133] .ff-mention-chip.is-previewable:hover{border-color:#a1a1aa;background:#ececef}.ff-media-prompt[data-v-30596133] .ff-mention-chip-img{width:18px;height:18px;border-radius:5px;overflow:hidden;flex-shrink:0;background:#e4e4e7}.ff-media-prompt[data-v-30596133] .ff-mention-chip-img img,.ff-media-prompt[data-v-30596133] .ff-mention-chip-img video{width:100%;height:100%;object-fit:cover;display:block}.ff-media-prompt[data-v-30596133] .ff-mention-chip-ph{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;background:#e4e4e7;color:#a1a1aa;font-size:10px;flex-shrink:0}.ff-media-prompt[data-v-30596133] .ff-mention-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}:root[data-theme=dark] .ff-media-prompt[data-v-30596133] .ff-mention-chip{border-color:#3f4654;background:#2a3140;color:#f4f4f5}:root[data-theme=dark] .ff-media-prompt[data-v-30596133] .ff-mention-chip.is-previewable:hover{border-color:#636b7c;background:#343c4d}:root[data-theme=dark] .ff-media-prompt[data-v-30596133] .ff-mention-chip-img,:root[data-theme=dark] .ff-media-prompt[data-v-30596133] .ff-mention-chip-ph{background:#3f4654}.ff-media-foot[data-v-30596133]{display:flex;align-items:center;gap:4px;min-height:42px;margin-top:8px;overflow:visible;position:relative;z-index:2}.ff-media-ico[data-v-30596133]{width:34px;height:34px;flex:0 0 auto;padding:0;border:0;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}.ff-media-ico[data-v-30596133]:disabled{opacity:.35;cursor:not-allowed}.ff-media-ico[data-v-30596133]:disabled:hover{background:transparent}.ff-media-file[data-v-30596133]{display:none}.ff-media-ico[data-v-30596133]:hover{background:#f4f4f5}.ff-media-actions[data-v-30596133]{margin-left:auto;display:flex;align-items:center;gap:4px}.ff-media-ico[data-v-30596133] .icon{width:16px;height:16px;display:inline-flex}.ff-media-ico[data-v-30596133] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}:root[data-theme=dark] .ff-media-ico[data-v-30596133]{color:#e4e4e7}:root[data-theme=dark] .ff-media-ico[data-v-30596133]:hover{background:#2a3140}:root[data-theme=dark] .ff-media-ref-card[data-v-30596133],:root[data-theme=dark] .ff-media-ref-placeholder[data-v-30596133]{background:#2a3140;border-color:#3f4654}[data-v-4d48e420] .ff-edit-bar.is-audio-edit{padding:14px 16px 12px;border-radius:28px;border-color:#e8e8ec;box-shadow:0 16px 42px #0f172a1a}.ff-audio-refs[data-v-4d48e420]{display:flex;flex-wrap:wrap;gap:10px 12px;margin-bottom:10px;max-width:100%}.ff-audio-ref[data-v-4d48e420]{display:flex;flex-direction:column;align-items:center;width:52px;flex:0 0 auto}.ff-audio-ref-card[data-v-4d48e420]{position:relative;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f4f4f5;border:1px solid #e4e4e7}:root[data-theme=dark] .ff-audio-ref-card[data-v-4d48e420]{background:#2a3140;border-color:#3f4654}.ff-audio-ref-img[data-v-4d48e420]{width:100%;height:100%;object-fit:cover;display:block}.ff-audio-ref-placeholder[data-v-4d48e420]{width:100%;height:100%;display:grid;place-items:center;color:#a1a1aa;background:#f4f4f5}:root[data-theme=dark] .ff-audio-ref-placeholder[data-v-4d48e420]{background:#2a3140}.ff-audio-ref-placeholder[data-v-4d48e420] .icon{width:22px;height:22px;display:inline-flex}.ff-audio-ref-placeholder[data-v-4d48e420] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-audio-ref-x[data-v-4d48e420]{position:absolute;top:3px;right:3px;width:16px;height:16px;padding:0;border:0;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-audio-ref-x[data-v-4d48e420]:hover{background:#18181beb}.ff-audio-ref-at[data-v-4d48e420]{position:absolute;right:3px;bottom:3px;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:#18181bc7;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-audio-ref-at[data-v-4d48e420] .icon{width:12px;height:12px;display:inline-flex}.ff-audio-ref-at[data-v-4d48e420] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-audio-editor[data-v-4d48e420]{position:relative}.ff-audio-prompt[data-v-4d48e420]{display:block;width:100%;min-height:72px;max-height:360px;box-sizing:border-box;padding:0 30px 0 0;border:0;outline:0;background:transparent;color:var(--text);font:inherit;font-size:13px;line-height:1.7;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.ff-audio-prompt[data-empty="1"][data-v-4d48e420]:before{content:attr(data-placeholder);color:#a1a1aa;pointer-events:none}.ff-audio-foot[data-v-4d48e420]{display:flex;align-items:center;gap:4px;min-height:42px;margin-top:8px;overflow:visible;position:relative;z-index:2}.ff-audio-ico[data-v-4d48e420]{width:34px;height:34px;flex:0 0 auto;padding:0;border:0;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}.ff-audio-ico[data-v-4d48e420]:disabled{opacity:.35;cursor:not-allowed}.ff-audio-ico[data-v-4d48e420]:disabled:hover{background:transparent}.ff-audio-file[data-v-4d48e420]{display:none}.ff-audio-ico[data-v-4d48e420]:hover{background:#f4f4f5}.ff-audio-actions[data-v-4d48e420]{margin-left:auto;display:flex;align-items:center;gap:4px}.ff-audio-ico[data-v-4d48e420] .icon{width:16px;height:16px;display:inline-flex}.ff-audio-ico[data-v-4d48e420] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}:root[data-theme=dark] .ff-audio-ico[data-v-4d48e420]{color:#e4e4e7}:root[data-theme=dark] .ff-audio-ico[data-v-4d48e420]:hover{background:#2a3140}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin:0 2px;padding:1px 8px 1px 3px;border-radius:8px;border:1px solid #e4e4e7;background:#f4f4f5;color:#18181b;font-size:12px;font-weight:700;line-height:1.4;vertical-align:middle;-webkit-user-select:none;user-select:none;cursor:default}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip.is-previewable{cursor:zoom-in}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip.is-previewable:hover{border-color:#a1a1aa;background:#ececef}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-img{width:18px;height:18px;border-radius:5px;overflow:hidden;flex-shrink:0;background:#e4e4e7}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-img img,.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-img video{width:100%;height:100%;object-fit:cover;display:block}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-ph{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;background:#e4e4e7;color:#a1a1aa;font-size:10px;flex-shrink:0}.ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}:root[data-theme=dark] .ff-audio-prompt[data-v-4d48e420] .ff-mention-chip{border-color:#3f4654;background:#2a3140;color:#f4f4f5}:root[data-theme=dark] .ff-audio-prompt[data-v-4d48e420] .ff-mention-chip.is-previewable:hover{border-color:#636b7c;background:#343c4d}:root[data-theme=dark] .ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-img,:root[data-theme=dark] .ff-audio-prompt[data-v-4d48e420] .ff-mention-chip-ph{background:#3f4654}.ff-inpaint-mask[data-v-6069ef58]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1260;display:grid;place-items:center;padding:24px;background:#0f172a6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ff-inpaint-panel[data-v-6069ef58]{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid #e4e4e7;border-radius:20px;background:#f8f8fa;color:#18181b;box-shadow:0 24px 64px #0f172a33}.ff-inpaint-head[data-v-6069ef58]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 9px}.ff-inpaint-head h2[data-v-6069ef58],.ff-inpaint-head p[data-v-6069ef58]{margin:0}.ff-inpaint-head h2[data-v-6069ef58]{font-size:15px;font-weight:650}.ff-inpaint-head p[data-v-6069ef58]{margin-top:4px;color:#71717a;font-size:12px}.ff-inpaint-close[data-v-6069ef58]{width:36px;height:36px;border:0;border-radius:11px;background:transparent;color:#52525b;display:grid;place-items:center;cursor:pointer}.ff-inpaint-close[data-v-6069ef58]:hover{background:#eaeaee}.ff-inpaint-body[data-v-6069ef58]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.9fr);gap:14px;padding:4px 16px 16px}.ff-inpaint-visual[data-v-6069ef58]{min-width:0;min-height:360px;border-radius:16px;background:linear-gradient(45deg,#e5e5e8 25%,transparent 25%),linear-gradient(-45deg,#e5e5e8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e5e5e8 75%),linear-gradient(-45deg,transparent 75%,#e5e5e8 75%),#f1f1f3;background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;display:grid;place-items:center;overflow:hidden}.ff-inpaint-stage[data-v-6069ef58]{position:relative;width:100%;max-height:min(56vh,430px);max-width:100%;overflow:hidden;-webkit-user-select:none;user-select:none;background:#d4d4d8}.ff-inpaint-stage img[data-v-6069ef58]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;display:block;pointer-events:none}.ff-inpaint-stage canvas[data-v-6069ef58]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;touch-action:none}.ff-inpaint-stage canvas.is-brush[data-v-6069ef58]{cursor:crosshair}.ff-inpaint-stage canvas.is-eraser[data-v-6069ef58]{cursor:cell}.ff-inpaint-hint[data-v-6069ef58]{position:absolute;left:50%;bottom:16px;transform:translate(-50%);padding:7px 11px;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-inpaint-side[data-v-6069ef58]{min-width:0;display:flex;flex-direction:column;gap:14px}.ff-inpaint-tools[data-v-6069ef58],.ff-inpaint-composer[data-v-6069ef58]{border:1px solid #e4e4e7;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f172a0d;overflow:visible}.ff-inpaint-tools[data-v-6069ef58]{padding:14px}.ff-section-title[data-v-6069ef58]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;color:#27272a;font-size:13px;font-weight:600}.ff-section-title button[data-v-6069ef58]{border:0;background:transparent;color:#71717a;font-size:12px;cursor:pointer}.ff-section-title button[data-v-6069ef58]:disabled{opacity:.35;cursor:not-allowed}.ff-tool-row[data-v-6069ef58]{display:grid;grid-template-columns:1fr 1fr 40px;gap:6px}.ff-tool-button[data-v-6069ef58],.ff-tool-icon[data-v-6069ef58]{height:40px;border:1px solid #e4e4e7;border-radius:11px;background:#fafafa;color:#52525b;cursor:pointer}.ff-tool-button[data-v-6069ef58]{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px}.ff-tool-icon[data-v-6069ef58]{display:grid;place-items:center}.ff-tool-button[data-v-6069ef58]:hover,.ff-tool-icon[data-v-6069ef58]:hover:not(:disabled){background:#f4f4f5}.ff-tool-button.active[data-v-6069ef58]{border-color:var(--primary);background:#f3e8ff;color:#6d28d9;box-shadow:0 0 0 1px #7c3aed14}.ff-tool-icon[data-v-6069ef58]:disabled{opacity:.35;cursor:not-allowed}.ff-brush-size[data-v-6069ef58]{display:grid;grid-template-columns:auto 28px 1fr 30px;align-items:center;gap:9px;margin-top:14px;color:#71717a;font-size:12px}.ff-brush-size i[data-v-6069ef58]{justify-self:center;border-radius:50%;background:var(--primary)}.ff-brush-size input[data-v-6069ef58]{width:100%;accent-color:var(--primary)}.ff-brush-size output[data-v-6069ef58]{text-align:right;font-variant-numeric:tabular-nums}.ff-inpaint-composer[data-v-6069ef58]{margin-top:auto;padding:13px 14px 12px}.ff-prompt-main[data-v-6069ef58]{display:flex;align-items:flex-start;gap:10px}.ff-prompt-main textarea[data-v-6069ef58]{flex:1;width:100%;min-height:112px;resize:none;border:0;outline:0;background:transparent;color:#27272a;font:inherit;font-size:13px;line-height:1.55}.ff-prompt-main textarea[data-v-6069ef58]::placeholder{color:#a1a1aa}.ff-inpaint-reference[data-v-6069ef58]{position:relative;width:54px;height:54px;flex:0 0 auto;overflow:hidden;border:1px solid #e4e4e7;border-radius:10px;background:#f4f4f5}.ff-inpaint-reference img[data-v-6069ef58]{width:100%;height:100%;object-fit:cover}.ff-inpaint-reference button[data-v-6069ef58]{position:absolute;top:2px;right:2px;width:17px;height:17px;padding:0;border:0;border-radius:50%;background:#18181bb8;color:#fff;cursor:pointer}.ff-composer-foot[data-v-6069ef58]{display:flex;align-items:center;gap:5px;margin-top:10px;flex-wrap:wrap}.ff-composer-icon[data-v-6069ef58]{width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}.ff-composer-icon[data-v-6069ef58]:hover,.ff-composer-pill[data-v-6069ef58]:hover,.ff-composer-pill.open[data-v-6069ef58]{background:#f4f4f5}.ff-composer-menu[data-v-6069ef58]{position:relative;flex:0 0 auto}.ff-composer-pill[data-v-6069ef58]{position:relative;height:34px;max-width:120px;display:inline-flex;align-items:center;gap:5px;padding:0 8px;border:0;border-radius:999px;background:transparent;color:#27272a;font:inherit;cursor:pointer}.ff-composer-pill-text[data-v-6069ef58]{min-width:0;font-size:12px;font-weight:500;white-space:nowrap}.ff-composer-pill[data-v-6069ef58] .icon:last-child{width:11px;height:11px;opacity:.55;pointer-events:none;flex-shrink:0}.ff-composer-dropdown[data-v-6069ef58]{position:absolute;left:0;bottom:calc(100% + 8px);z-index:50;min-width:108px;padding:6px;border-radius:12px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 14px 36px #00000073;color:#f4f4f5;opacity:1}:root:not([data-theme=dark]) .ff-composer-dropdown[data-v-6069ef58]{box-shadow:0 14px 36px #0f172a1f;color:#18181b}.ff-composer-option[data-v-6069ef58]{width:100%;min-height:34px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:inherit;font-size:12px;font-weight:500;cursor:pointer}.ff-composer-option[data-v-6069ef58]:hover{background:color-mix(in srgb,var(--card, #2a3140) 80%,transparent)}:root:not([data-theme=dark]) .ff-composer-option[data-v-6069ef58]:hover{background:#f4f4f5}.ff-composer-option.active[data-v-6069ef58]{color:var(--primary, #7c3aed);background:color-mix(in srgb,var(--primary, #7c3aed) 12%,transparent)}.ff-composer-option[data-v-6069ef58] .icon{width:14px;height:14px;flex-shrink:0}.ff-composer-option[data-v-6069ef58] svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-composer-actions[data-v-6069ef58]{margin-left:auto;display:flex;align-items:center;gap:8px}.ff-reference-input[data-v-6069ef58]{display:none}.ff-inpaint-close[data-v-6069ef58] .icon,.ff-tool-button[data-v-6069ef58] .icon,.ff-tool-icon[data-v-6069ef58] .icon,.ff-composer-icon[data-v-6069ef58] .icon,.ff-composer-pill[data-v-6069ef58] .icon{width:16px;height:16px;display:inline-flex}.ff-inpaint-close[data-v-6069ef58] svg,.ff-tool-button[data-v-6069ef58] svg,.ff-tool-icon[data-v-6069ef58] svg,.ff-composer-icon[data-v-6069ef58] svg,.ff-composer-pill[data-v-6069ef58] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}:root[data-theme=dark] .ff-inpaint-panel[data-v-6069ef58]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}:root[data-theme=dark] .ff-inpaint-head p[data-v-6069ef58]{color:#a1a1aa}:root[data-theme=dark] .ff-inpaint-close[data-v-6069ef58]{color:#d4d4d8}:root[data-theme=dark] .ff-inpaint-close[data-v-6069ef58]:hover{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-inpaint-tools[data-v-6069ef58],:root[data-theme=dark] .ff-inpaint-composer[data-v-6069ef58]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 10px 26px #0000003d}:root[data-theme=dark] .ff-section-title[data-v-6069ef58],:root[data-theme=dark] .ff-prompt-main textarea[data-v-6069ef58],:root[data-theme=dark] .ff-composer-pill[data-v-6069ef58]{color:#f4f4f5}:root[data-theme=dark] .ff-tool-button[data-v-6069ef58],:root[data-theme=dark] .ff-tool-icon[data-v-6069ef58]{border-color:#4b5568;background:#252b38;color:#d4d4d8}:root[data-theme=dark] .ff-tool-button[data-v-6069ef58]:hover,:root[data-theme=dark] .ff-tool-icon[data-v-6069ef58]:hover:not(:disabled),:root[data-theme=dark] .ff-composer-icon[data-v-6069ef58]:hover,:root[data-theme=dark] .ff-composer-pill[data-v-6069ef58]:hover{background:#343b4d}:root[data-theme=dark] .ff-tool-button.active[data-v-6069ef58]{border-color:#a78bfa;background:#7c3aed3d;color:#c4b5fd}:root[data-theme=dark] .ff-composer-icon[data-v-6069ef58]{color:#e4e4e7}@media(max-width:820px){.ff-inpaint-body[data-v-6069ef58]{grid-template-columns:1fr}.ff-inpaint-visual[data-v-6069ef58]{min-height:360px}}@media(max-width:520px){.ff-inpaint-mask[data-v-6069ef58]{padding:8px}.ff-inpaint-panel[data-v-6069ef58]{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}.ff-inpaint-body[data-v-6069ef58]{padding:4px 12px 14px}.ff-inpaint-head[data-v-6069ef58]{padding:14px 12px 10px}.ff-inpaint-visual[data-v-6069ef58]{min-height:280px}}@media(prefers-reduced-motion:reduce){.ff-inpaint-panel[data-v-6069ef58] *{scroll-behavior:auto!important;transition:none!important}}.ff-lighting-mask[data-v-bf78f05a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1250;display:grid;place-items:center;padding:24px;background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ff-lighting-panel[data-v-bf78f05a]{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border-radius:20px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 24px 64px #0f172a2e;display:flex;flex-direction:column}.ff-lighting-head[data-v-bf78f05a]{display:flex;align-items:center;justify-content:space-between;padding:16px 18px 8px}.ff-lighting-head h2[data-v-bf78f05a]{margin:0;font-size:16px;font-weight:600;color:#18181b}:root[data-theme=dark] .ff-lighting-head h2[data-v-bf78f05a]{color:#f4f4f5}.ff-lighting-close[data-v-bf78f05a]{width:32px;height:32px;border:none;border-radius:10px;background:transparent;color:#52525b;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .ff-lighting-close[data-v-bf78f05a]{color:#a1a1aa}:root[data-theme=dark] .ff-lighting-close[data-v-bf78f05a]:hover{background:#2a3140}.ff-lighting-close[data-v-bf78f05a] .icon{width:16px;height:16px;display:inline-flex}.ff-lighting-close[data-v-bf78f05a] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-lighting-body[data-v-bf78f05a]{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,1.1fr);gap:20px;padding:8px 20px 12px}@media(max-width:640px){.ff-lighting-body[data-v-bf78f05a]{grid-template-columns:1fr}}.ff-lighting-sphere-col[data-v-bf78f05a]{display:flex;flex-direction:column;align-items:center;gap:10px;min-width:0}.ff-sphere[data-v-bf78f05a]{--ff-light-deep: 96, 165, 250;--ff-light-bright: 191, 219, 254;--ff-light-dot-core: #93c5fd;--ff-light-dot-body: #312e81;position:relative;width:min(280px,100%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.9) 0%,transparent 28%),radial-gradient(circle at 50% 50%,#f4f4f8,#e4e4ec 52%,#c9c9d4);border:1px solid #e4e4e7;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;overflow:hidden;box-shadow:inset 0 10px 28px #ffffff8c,inset 0 -14px 32px #18181b1a,0 8px 24px #0f172a0f;perspective:480px}.ff-sphere.is-warm-light[data-v-bf78f05a]{--ff-light-deep: 251, 146, 60;--ff-light-bright: 254, 215, 170;--ff-light-dot-core: #fed7aa;--ff-light-dot-body: #9a3412}.ff-sphere.is-neutral-light[data-v-bf78f05a]{--ff-light-deep: 113, 113, 122;--ff-light-bright: 228, 228, 231;--ff-light-dot-core: #fafafa;--ff-light-dot-body: #3f3f46}.ff-sphere.is-cool-light[data-v-bf78f05a]{--ff-light-deep: 96, 165, 250;--ff-light-bright: 191, 219, 254;--ff-light-dot-core: #93c5fd;--ff-light-dot-body: #312e81}.ff-sphere.is-dragging[data-v-bf78f05a]{cursor:grabbing}.ff-sphere.is-light-behind[data-v-bf78f05a]{box-shadow:inset 0 10px 28px #fff6,inset 0 -14px 36px #2563eb14,0 8px 24px #0f172a0f}:root[data-theme=dark] .ff-sphere[data-v-bf78f05a]{background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.08) 0%,transparent 28%),radial-gradient(circle at 50% 50%,#3f4654,#2a3140 52%,#151a24);border-color:#4b5568}.ff-sphere-3d[data-v-bf78f05a]{position:absolute;top:6%;right:6%;bottom:6%;left:6%;width:88%;height:88%;pointer-events:none;z-index:0;overflow:visible}.ff-sphere-equator[data-v-bf78f05a],.ff-sphere-meridian[data-v-bf78f05a],.ff-sphere-rim[data-v-bf78f05a]{fill:none;stroke:#71717a59;stroke-width:.7}.ff-sphere-equator[data-v-bf78f05a],.ff-sphere-meridian[data-v-bf78f05a]{stroke-dasharray:1.2 1.6}.ff-sphere-rim[data-v-bf78f05a]{stroke:#71717a47;stroke-dasharray:none}:root[data-theme=dark] .ff-sphere-equator[data-v-bf78f05a],:root[data-theme=dark] .ff-sphere-meridian[data-v-bf78f05a],:root[data-theme=dark] .ff-sphere-rim[data-v-bf78f05a]{stroke:#a1a1aa59}.ff-sphere-beam[data-v-bf78f05a]{position:absolute;width:22%;border-radius:40% 40% 8% 8%;background:linear-gradient(to top,rgba(var(--ff-light-deep),.14),rgba(var(--ff-light-deep),.62) 40%,rgba(var(--ff-light-bright),.78));clip-path:polygon(42% 0%,58% 0%,100% 100%,0% 100%);pointer-events:none;transition:width .2s ease,filter .2s ease,opacity .2s ease}.ff-sphere.is-soft-light .ff-sphere-beam[data-v-bf78f05a]{width:34%;border-radius:50% 50% 18% 18%;clip-path:polygon(46% 0%,54% 0%,100% 100%,0% 100%);filter:blur(4px);background:linear-gradient(to top,rgba(var(--ff-light-deep),.08),rgba(var(--ff-light-deep),.38) 45%,rgba(var(--ff-light-bright),.58))}.ff-sphere.is-hard-light .ff-sphere-beam[data-v-bf78f05a]{width:16%;border-radius:18% 18% 3px 3px;clip-path:polygon(43% 0%,57% 0%,82% 100%,18% 100%);filter:none;background:linear-gradient(to top,rgba(var(--ff-light-deep),.16),rgba(var(--ff-light-deep),.7) 48%,rgba(var(--ff-light-bright),.9))}.ff-sphere-beam.is-behind-beam[data-v-bf78f05a]{background:linear-gradient(to top,rgba(var(--ff-light-deep),.08),rgba(var(--ff-light-deep),.42) 45%,rgba(var(--ff-light-bright),.62));filter:saturate(.85)}.ff-sphere.is-soft-light .ff-sphere-beam.is-behind-beam[data-v-bf78f05a]{filter:blur(4px) saturate(.8)}.ff-sphere.is-hard-light .ff-sphere-beam.is-behind-beam[data-v-bf78f05a]{filter:saturate(.9)}.ff-sphere-subject[data-v-bf78f05a]{position:absolute;left:50%;top:50%;width:28%;height:34%;transform:translate(-50%,-50%) translateZ(12px);border-radius:6px;overflow:hidden;background:#f4f4f5;border:1.5px solid rgba(255,255,255,.9);box-shadow:0 4px 14px #0f172a24;pointer-events:none;z-index:2}.ff-sphere.is-light-behind .ff-sphere-subject[data-v-bf78f05a]{box-shadow:0 4px 14px #0f172a24,0 0 0 1px rgba(var(--ff-light-deep),.15)}:root[data-theme=dark] .ff-sphere-subject[data-v-bf78f05a]{background:#27272a;border-color:#3f3f46e6}.ff-sphere-subject img[data-v-bf78f05a]{width:100%;height:100%;object-fit:cover;display:block}.ff-sphere-empty[data-v-bf78f05a]{display:block;width:100%;height:100%;background:#e4e4e7}.ff-sphere-light[data-v-bf78f05a]{position:absolute;border-radius:50%;background:#18181b;border:2px solid #fff;box-shadow:0 0 0 3px rgba(var(--ff-light-deep),.35),0 2px 8px #00000040;transform:translate(-50%,-50%);pointer-events:none;transition:width .12s ease,height .12s ease,opacity .12s ease}.ff-sphere.is-soft-light .ff-sphere-light[data-v-bf78f05a]{background:radial-gradient(circle at 42% 38%,var(--ff-light-dot-core) 0%,var(--ff-light-dot-body) 48%,#111827 80%);border:1px solid rgba(255,255,255,.82);box-shadow:0 0 0 4px rgba(var(--ff-light-deep),.2),0 0 18px 8px rgba(var(--ff-light-deep),.3),0 2px 8px #0003}.ff-sphere.is-hard-light .ff-sphere-light[data-v-bf78f05a]{background:#09090b;border:2px solid rgb(var(--ff-light-bright));box-shadow:0 0 0 2px rgba(var(--ff-light-deep),.65),0 2px 5px #00000052}.ff-sphere-light.is-behind[data-v-bf78f05a]{background:#1e293b;border:2px dashed rgb(var(--ff-light-deep));box-shadow:0 0 0 2px rgba(var(--ff-light-deep),.2),0 0 16px rgba(var(--ff-light-deep),.35)}.ff-sphere.is-soft-light .ff-sphere-light.is-behind[data-v-bf78f05a]{background:radial-gradient(circle at 42% 38%,var(--ff-light-dot-core) 0%,var(--ff-light-dot-body) 48%,#111827 80%);border:1px dashed rgb(var(--ff-light-bright));box-shadow:0 0 0 3px rgba(var(--ff-light-deep),.16),0 0 16px 6px rgba(var(--ff-light-deep),.24)}.ff-sphere.is-hard-light .ff-sphere-light.is-behind[data-v-bf78f05a]{border:2px dashed rgb(var(--ff-light-deep));box-shadow:0 0 0 1px rgba(var(--ff-light-deep),.25)}:root[data-theme=dark] .ff-sphere-light[data-v-bf78f05a]{border-color:rgb(var(--ff-light-bright))}:root[data-theme=dark] .ff-sphere-light.is-behind[data-v-bf78f05a]{background:#0f172a;border-color:rgb(var(--ff-light-deep))}.ff-sphere-angles[data-v-bf78f05a]{display:flex;flex-direction:column;align-items:flex-end;align-self:stretch;gap:6px;padding-right:4px}.ff-angle-row[data-v-bf78f05a]{display:flex;align-items:center;gap:4px}.ff-angle-label[data-v-bf78f05a]{min-width:88px;text-align:right;font-size:12px;color:#71717a;font-variant-numeric:tabular-nums}:root[data-theme=dark] .ff-angle-label[data-v-bf78f05a]{color:#a1a1aa}.ff-angle-btn[data-v-bf78f05a]{width:24px;height:24px;border:1px solid #e4e4e7;border-radius:7px;background:#fff;color:#3f3f46;display:grid;place-items:center;cursor:pointer;padding:0}.ff-angle-btn[data-v-bf78f05a]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-angle-btn[data-v-bf78f05a]{border-color:#4b5568;background:#2a3140;color:#e4e4e7}:root[data-theme=dark] .ff-angle-btn[data-v-bf78f05a]:hover{background:#343b4d}.ff-angle-btn[data-v-bf78f05a] .icon{width:12px;height:12px;display:inline-flex}.ff-angle-btn[data-v-bf78f05a] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2}.ff-lighting-controls[data-v-bf78f05a]{display:flex;flex-direction:column;gap:14px;min-width:0}.ff-ctrl-row[data-v-bf78f05a]{display:grid;grid-template-columns:48px 1fr;gap:10px;align-items:center}.ff-ctrl-prompt[data-v-bf78f05a]{grid-template-columns:1fr;align-items:stretch}.ff-ctrl-label[data-v-bf78f05a]{font-size:13px;color:#52525b;font-weight:500}:root[data-theme=dark] .ff-ctrl-label[data-v-bf78f05a]{color:#a1a1aa}.ff-azimuth[data-v-bf78f05a]{display:flex;flex-wrap:wrap;gap:6px}.ff-seg-wrap[data-v-bf78f05a]{display:flex;align-items:center;gap:10px;min-width:0}.ff-seg[data-v-bf78f05a]{flex:1;display:grid;gap:3px;height:28px;padding:3px;border-radius:8px;background:#f4f4f5;border:1px solid #e4e4e7}.ff-seg-4[data-v-bf78f05a]{grid-template-columns:repeat(4,1fr)}.ff-seg-2[data-v-bf78f05a]{grid-template-columns:repeat(2,1fr)}.ff-seg-temp[data-v-bf78f05a]{grid-template-columns:repeat(3,1fr);background:linear-gradient(90deg,#f5c4a8,#ececef,#a8c8f5)}:root[data-theme=dark] .ff-seg[data-v-bf78f05a]{background:#2a3140;border-color:#4b5568}:root[data-theme=dark] .ff-seg-temp[data-v-bf78f05a]{background:linear-gradient(90deg,#8a4f35,#3f4654,#355a8a)}.ff-seg-btn[data-v-bf78f05a]{border:none;border-radius:5px;background:transparent;cursor:pointer;min-width:0}.ff-seg-btn.active[data-v-bf78f05a]{background:var(--ff-action-bg);box-shadow:0 2px 8px var(--ff-action-shadow)}:root[data-theme=dark] .ff-seg-btn.active[data-v-bf78f05a]{background:var(--ff-action-bg)}.ff-seg-value[data-v-bf78f05a]{flex-shrink:0;min-width:52px;text-align:right;font-size:12px;color:#52525b}:root[data-theme=dark] .ff-seg-value[data-v-bf78f05a]{color:#a1a1aa}.ff-prompt-head[data-v-bf78f05a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ff-switch[data-v-bf78f05a]{width:40px;height:22px;border:none;border-radius:999px;background:#d4d4d8;position:relative;cursor:pointer;padding:0;transition:background .15s ease}.ff-switch.on[data-v-bf78f05a]{background:var(--primary)}.ff-switch i[data-v-bf78f05a]{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .15s ease}.ff-switch.on i[data-v-bf78f05a]{transform:translate(18px)}.ff-ctrl-prompt textarea[data-v-bf78f05a]{width:100%;box-sizing:border-box;resize:vertical;min-height:72px;border-radius:12px;border:1px solid #e4e4e7;background:#fafafa;padding:10px 12px;font-size:13px;line-height:1.45;color:#18181b;font-family:inherit}.ff-ctrl-prompt textarea[data-v-bf78f05a]:disabled{opacity:.45;cursor:not-allowed}.ff-ctrl-prompt textarea[data-v-bf78f05a]:focus{outline:none;border-color:#a1a1aa;background:#fff}:root[data-theme=dark] .ff-ctrl-prompt textarea[data-v-bf78f05a]{border-color:#4b5568;background:#2a3140;color:#f4f4f5}:root[data-theme=dark] .ff-ctrl-prompt textarea[data-v-bf78f05a]:focus{border-color:#71717a;background:#343b4d}.ff-lighting-foot[data-v-bf78f05a]{display:flex;align-items:center;justify-content:space-between;padding:10px 18px 16px;gap:12px}.ff-reset[data-v-bf78f05a]{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border:none;border-radius:10px;background:transparent;color:#52525b;font-size:13px;cursor:pointer}:root[data-theme=dark] .ff-reset[data-v-bf78f05a]{color:#a1a1aa}:root[data-theme=dark] .ff-reset[data-v-bf78f05a]:hover{background:#2a3140}.ff-reset[data-v-bf78f05a] .icon{width:15px;height:15px;display:inline-flex}.ff-reset[data-v-bf78f05a] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-foot-right[data-v-bf78f05a]{display:flex;align-items:center;gap:10px}.ff-lighting-mask[data-v-bf78f05a]{background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ff-lighting-panel[data-v-bf78f05a],:root[data-theme=dark] .ff-lighting-panel[data-v-bf78f05a]{width:min(700px,calc(100vw - 32px));border:1px solid var(--ff-canvas-panel-border);border-radius:16px;background:var(--ff-canvas-panel);box-shadow:0 22px 60px #0000006b}.ff-lighting-head[data-v-bf78f05a]{padding:12px 14px 4px}.ff-lighting-head h2[data-v-bf78f05a],:root[data-theme=dark] .ff-lighting-head h2[data-v-bf78f05a]{color:#f4f4f5;font-size:14px}.ff-lighting-close[data-v-bf78f05a],:root[data-theme=dark] .ff-lighting-close[data-v-bf78f05a]{color:#a1a1aa}.ff-lighting-close[data-v-bf78f05a]:hover,:root[data-theme=dark] .ff-lighting-close[data-v-bf78f05a]:hover{background:#38383c}.ff-lighting-body[data-v-bf78f05a]{grid-template-columns:minmax(290px,1.08fr) minmax(270px,.92fr);gap:16px;padding:6px 14px 10px}.ff-lighting-sphere-col[data-v-bf78f05a]{position:relative;border-radius:12px;background:var(--ff-canvas-panel-hover);padding:10px;gap:8px}.ff-view-tabs[data-v-bf78f05a]{position:absolute;top:10px;left:10px;z-index:8;display:inline-flex;padding:2px;border-radius:8px;background:#38383c}.ff-view-tabs button[data-v-bf78f05a]{height:24px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:#85858d;font-size:11px;cursor:pointer}.ff-view-tabs button.active[data-v-bf78f05a]{background:var(--ff-action-bg);color:var(--primary-fg);box-shadow:0 2px 8px var(--ff-action-shadow)}.ff-sphere[data-v-bf78f05a]{--ff-light-rgb: 245, 247, 255;--ff-light-alpha: .53;width:min(272px,100%);border:0;background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.13),transparent 26%),radial-gradient(circle at 68% 76%,rgba(0,0,0,.2),transparent 48%),radial-gradient(circle at 44% 40%,#505055,#434348 57%,#343438);box-shadow:inset 8px 10px 24px #ffffff06,inset -16px -20px 38px #0000003d,0 12px 28px #00000029}:root[data-theme=dark] .ff-sphere[data-v-bf78f05a]{background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.13),transparent 26%),radial-gradient(circle at 68% 76%,rgba(0,0,0,.2),transparent 48%),radial-gradient(circle at 44% 40%,#505055,#434348 57%,#343438);border:0}.ff-sphere[data-v-bf78f05a]:after{content:"";position:absolute;top:8%;right:8%;bottom:8%;left:8%;border-radius:50%;border:1px solid rgba(255,255,255,.025);pointer-events:none}.ff-sphere-depth[data-v-bf78f05a]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100%;overflow:visible;pointer-events:none}.ff-sphere-depth circle[data-v-bf78f05a]{fill:none;stroke:#ffffff13;stroke-width:.38}.ff-sphere-depth path[data-v-bf78f05a]{fill:none;stroke-width:.48;stroke-linecap:round;stroke-linejoin:round}.ff-sphere-depth path.is-latitude[data-v-bf78f05a]{stroke-width:.55}.ff-sphere-depth path.is-front[data-v-bf78f05a]{stroke:#ffffff30}.ff-sphere-depth path.is-back[data-v-bf78f05a]{stroke:#fff1;stroke-dasharray:.8 1.8}.ff-light-anchor[data-v-bf78f05a]{position:absolute;width:var(--ff-anchor-size, 6px);height:var(--ff-anchor-size, 6px);border-radius:50%;background:#f2f2f5c7;border:1px solid rgba(20,20,22,.68);box-shadow:0 1px 2px #00000094,inset 0 1px 1px #ffffff47;transform:translate(-50%,-50%);pointer-events:none;transition:width .13s ease,height .13s ease,background .13s ease,box-shadow .13s ease}.ff-light-anchor.behind[data-v-bf78f05a]{border:1px solid rgba(210,210,218,.42);background:#18181b61;box-shadow:inset 0 0 0 1px #00000040}.ff-light-anchor.active[data-v-bf78f05a]{width:calc(var(--ff-anchor-size, 6px) + 5px);height:calc(var(--ff-anchor-size, 6px) + 5px);background:rgb(var(--ff-light-rgb));box-shadow:0 0 0 3px rgba(var(--ff-light-rgb),.18),0 0 14px rgba(var(--ff-light-rgb),.82)}.ff-sphere-beam[data-v-bf78f05a],.ff-sphere-beam.is-behind-beam[data-v-bf78f05a]{width:20%;border-radius:50% 50% 8% 8%;background:linear-gradient(to top,rgba(var(--ff-light-rgb),.04),rgba(var(--ff-light-rgb),var(--ff-light-mid-alpha)) 54%,rgba(var(--ff-light-rgb),var(--ff-light-alpha)));filter:blur(2px);mix-blend-mode:screen;will-change:height,transform,opacity}.ff-sphere-light[data-v-bf78f05a],.ff-sphere-light.is-behind[data-v-bf78f05a],:root[data-theme=dark] .ff-sphere-light[data-v-bf78f05a],:root[data-theme=dark] .ff-sphere-light.is-behind[data-v-bf78f05a]{background:rgb(var(--ff-light-rgb));border:1px solid rgba(255,255,255,.86);box-shadow:0 0 5px rgba(var(--ff-light-rgb),.92),0 0 16px rgba(var(--ff-light-rgb),var(--ff-light-alpha))}.ff-sphere-light.is-behind[data-v-bf78f05a]{border-style:dashed;opacity:.72!important}.ff-sphere-light[data-v-bf78f05a]{will-change:left,top}.ff-sphere.is-snapping .ff-sphere-light[data-v-bf78f05a]{transition:left .18s cubic-bezier(.22,1,.36,1),top .18s cubic-bezier(.22,1,.36,1),width .18s ease,height .18s ease,opacity .18s ease}.ff-sphere.is-snapping .ff-sphere-beam[data-v-bf78f05a]{transition:height .18s cubic-bezier(.22,1,.36,1),transform .18s cubic-bezier(.22,1,.36,1),opacity .18s ease}.ff-sphere-subject[data-v-bf78f05a],:root[data-theme=dark] .ff-sphere-subject[data-v-bf78f05a]{width:24%;height:22%;border:1px solid rgba(255,255,255,.35);border-radius:2px;background:#333;transform:translate(-50%,-50%) translateZ(18px);box-shadow:-8px 2px 20px rgba(var(--ff-light-rgb),var(--ff-light-shadow-alpha)),0 6px 15px #00000059;transition:transform .2s ease}.ff-sphere-meta[data-v-bf78f05a]{width:100%;display:flex;justify-content:space-between;color:#8f8f96;font-size:11px;font-variant-numeric:tabular-nums}.ff-lighting-controls[data-v-bf78f05a]{gap:0;padding:2px 2px 0}.ff-control-section[data-v-bf78f05a]{padding:10px 0 13px;border-bottom:1px solid #3a3a3e}.ff-control-section[data-v-bf78f05a]:last-child{border-bottom:0}.ff-control-section h3[data-v-bf78f05a]{margin:0 0 10px;color:#f0f0f2;font-size:12px;font-weight:600}.ff-section-head[data-v-bf78f05a]{display:flex;align-items:center;justify-content:space-between;min-height:24px;margin-bottom:8px}.ff-section-head h3[data-v-bf78f05a]{margin:0}.ff-slider-row[data-v-bf78f05a]{display:grid;grid-template-columns:38px minmax(80px,1fr) 64px;align-items:center;gap:8px;min-height:34px;color:#a4a4ab;font-size:11px}.ff-slider-row input[type=range][data-v-bf78f05a]{width:100%;height:3px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;outline:none;background:#45454a;cursor:pointer}.ff-slider-row input[type=range][data-v-bf78f05a]::-webkit-slider-thumb{width:11px;height:11px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.15);border-radius:50%;background:#ececef;box-shadow:0 1px 4px #0006}.ff-slider-row input[type=range][data-v-bf78f05a]::-moz-range-thumb{width:11px;height:11px;border:0;border-radius:50%;background:#ececef}.ff-temperature-row input[type=range][data-v-bf78f05a]{background:linear-gradient(90deg,#e49a60,#f1eee8 54%,#86b6d9)}.ff-slider-row input[data-v-bf78f05a]:disabled{opacity:.28;cursor:not-allowed}.ff-slider-row output[data-v-bf78f05a]{min-width:0;padding:6px 8px;border-radius:8px;background:#353539;color:#d7d7db;text-align:center;font-size:11px;font-variant-numeric:tabular-nums}.ff-azimuth[data-v-bf78f05a]{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.ff-azimuth .ff-action-chip[data-v-bf78f05a]{width:100%;height:28px;padding:0 6px;border-radius:7px;font-size:11px}.ff-switch[data-v-bf78f05a]{width:34px;height:18px;background:#4a4a4f}.ff-switch.on[data-v-bf78f05a]{background:#e5e5e7}.ff-switch i[data-v-bf78f05a]{top:2px;left:2px;width:14px;height:14px;background:#909096}.ff-switch.on i[data-v-bf78f05a]{transform:translate(16px);background:#2b2b2e}.ff-lighting-foot[data-v-bf78f05a]{padding:7px 14px 12px;border-top:none}.ff-reset[data-v-bf78f05a],:root[data-theme=dark] .ff-reset[data-v-bf78f05a]{color:#a1a1aa}.ff-reset[data-v-bf78f05a]:hover,:root[data-theme=dark] .ff-reset[data-v-bf78f05a]:hover{background:#38383c}.ff-lighting-panel[data-v-bf78f05a]{border-color:#e4e4e7;background:#fff;box-shadow:0 22px 60px #0f172a2e}.ff-lighting-head h2[data-v-bf78f05a]{color:#18181b}.ff-lighting-close[data-v-bf78f05a]{color:#52525b}.ff-lighting-close[data-v-bf78f05a]:hover{background:#f4f4f5}.ff-lighting-sphere-col[data-v-bf78f05a]{background:#f5f5f6}.ff-sphere-meta[data-v-bf78f05a]{color:#71717a}.ff-control-section[data-v-bf78f05a]{border-color:#e4e4e7}.ff-control-section h3[data-v-bf78f05a]{color:#27272a}.ff-slider-row[data-v-bf78f05a]{color:#71717a}.ff-slider-row input[type=range][data-v-bf78f05a]{background-color:#d4d4d8}.ff-slider-row input[type=range][data-v-bf78f05a]::-webkit-slider-thumb{background:#fff;border-color:#a1a1aa}.ff-slider-row input[type=range][data-v-bf78f05a]::-moz-range-thumb{background:#fff;border:1px solid #a1a1aa}.ff-slider-row output[data-v-bf78f05a]{background:#f4f4f5;color:#3f3f46}.ff-lighting-foot[data-v-bf78f05a]{border-color:#e4e4e7}.ff-reset[data-v-bf78f05a]{color:#52525b}.ff-reset[data-v-bf78f05a]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-lighting-sphere-col[data-v-bf78f05a]{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-lighting-panel[data-v-bf78f05a]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 24px 64px #00000080}:root[data-theme=dark] .ff-sphere-meta[data-v-bf78f05a],:root[data-theme=dark] .ff-slider-row[data-v-bf78f05a]{color:#a1a1aa}:root[data-theme=dark] .ff-control-section[data-v-bf78f05a]{border-color:#3a3a3e}:root[data-theme=dark] .ff-control-section h3[data-v-bf78f05a]{color:#f0f0f2}:root[data-theme=dark] .ff-slider-row input[type=range][data-v-bf78f05a]{background-color:#45454a}:root[data-theme=dark] .ff-slider-row output[data-v-bf78f05a]{background:#353539;color:#d7d7db}@media(max-width:640px){.ff-lighting-body[data-v-bf78f05a]{grid-template-columns:1fr}.ff-lighting-sphere-col[data-v-bf78f05a]{padding-top:10px}}@media(prefers-reduced-motion:reduce){.ff-light-anchor[data-v-bf78f05a],.ff-sphere-subject[data-v-bf78f05a]{transition:none}}.ff-lens-mask[data-v-49364453]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1250;display:grid;place-items:center;padding:24px;background:#0f172a47;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ff-lens-panel[data-v-49364453]{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid #e8e8ec;border-radius:22px;background:#fff;box-shadow:0 24px 64px #0f172a2e}:root[data-theme=dark] .ff-lens-panel[data-v-49364453]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-lens-head[data-v-49364453],.ff-lens-foot[data-v-49364453]{display:flex;align-items:center;justify-content:space-between}.ff-lens-head[data-v-49364453]{padding:17px 20px 8px}.ff-lens-head h2[data-v-49364453]{margin:0;font-size:16px;color:#18181b}:root[data-theme=dark] .ff-lens-head h2[data-v-49364453]{color:#f4f4f5}.ff-lens-close[data-v-49364453],.ff-lens-reset[data-v-49364453]{border:none;background:transparent;color:#52525b;cursor:pointer}.ff-lens-close[data-v-49364453]{width:32px;height:32px;border-radius:9px;display:grid;place-items:center}.ff-lens-close[data-v-49364453]:hover,.ff-lens-reset[data-v-49364453]:hover{background:#f4f4f5}.ff-lens-close[data-v-49364453] .icon,.ff-lens-reset[data-v-49364453] .icon{width:16px;height:16px;display:inline-flex}.ff-lens-close[data-v-49364453] svg,.ff-lens-reset[data-v-49364453] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.9}.ff-lens-body[data-v-49364453]{display:grid;grid-template-columns:minmax(270px,1fr) minmax(280px,1.05fr);gap:28px;padding:10px 24px 14px}.ff-lens-visual-col[data-v-49364453]{min-width:0}.ff-lens-sphere[data-v-49364453]{position:relative;width:min(320px,100%);margin:auto;aspect-ratio:1;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;border:1px solid #e4e4e7;border-radius:50%;background:radial-gradient(circle at 32% 28%,rgba(255,255,255,.95),transparent 30%),radial-gradient(circle,#f7f7f9,#e5e5eb 62%,#cbccd5);box-shadow:inset 0 -16px 36px #0f172a17}:root[data-theme=dark] .ff-lens-sphere[data-v-49364453]{border-color:#4b5568;background:radial-gradient(circle,#3f4654,#252b38 62%,#131823)}.ff-lens-grid[data-v-49364453]{position:absolute;top:5%;right:5%;bottom:5%;left:5%;width:90%;height:90%;z-index:0;pointer-events:none}.ff-lens-grid[data-v-49364453] *{fill:none;stroke:#71717a40;stroke-width:.65;stroke-dasharray:1.3 1.7}.ff-lens-grid circle[data-v-49364453]{stroke-dasharray:none}.ff-lens-subject[data-v-49364453]{position:absolute;left:50%;top:50%;z-index:2;width:25%;height:31%;overflow:hidden;transform:translate(-50%,-50%);border:1.5px solid rgba(255,255,255,.9);border-radius:7px;background:#e4e4e7;box-shadow:0 5px 16px #0f172a24}.ff-lens-subject img[data-v-49364453]{width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.ff-lens-target[data-v-49364453]{position:absolute;left:50%;top:50%;width:72%;aspect-ratio:1;border:1px solid rgba(255,255,255,.86);border-radius:2px;background:#ffffff14;box-shadow:0 0 10px #c4b5fd3d;pointer-events:none}.ff-camera-frustum[data-v-49364453]{position:absolute;width:26%;clip-path:polygon(44% 0%,56% 0%,100% 100%,0% 100%);background:linear-gradient(to top,#c4b5fd14,#c4b5fd61);pointer-events:none}.ff-camera-frustum.is-behind[data-v-49364453]{filter:saturate(.75)}.ff-camera-marker[data-v-49364453]{position:absolute;width:35px;height:28px;transform-origin:center;pointer-events:auto;cursor:grab;touch-action:none;filter:drop-shadow(0 3px 5px rgba(15,23,42,.22))}.ff-lens-sphere.is-dragging-camera .ff-camera-marker[data-v-49364453]{cursor:grabbing}.ff-camera-marker i[data-v-49364453]{pointer-events:none}.ff-camera-marker.is-behind[data-v-49364453]{filter:grayscale(.25) drop-shadow(0 2px 3px rgba(15,23,42,.18))}.ff-camera-body[data-v-49364453]{position:absolute;left:4px;top:7px;width:24px;height:17px;border-radius:5px;background:linear-gradient(145deg,#71717a,#27272a);transform:rotate(-8deg)}.ff-camera-body[data-v-49364453]:before{content:"";position:absolute;left:4px;top:-5px;width:11px;height:6px;border-radius:3px 3px 0 0;background:#52525b}.ff-camera-lens[data-v-49364453]{position:absolute;right:0;top:9px;width:12px;height:13px;border-radius:3px 7px 7px 3px;background:linear-gradient(90deg,#3f3f46,#18181b)}.ff-lens-readout[data-v-49364453]{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:8px 4px 0;font-size:12px;color:#71717a;font-variant-numeric:tabular-nums}.ff-lens-controls[data-v-49364453]{display:flex;flex-direction:column;gap:22px;padding-top:8px}.ff-lens-control>span[data-v-49364453],.ff-lens-prompt span[data-v-49364453]{display:block;margin-bottom:9px;font-size:13px;font-weight:500;color:#52525b}.ff-range-row[data-v-49364453],.ff-shot-row[data-v-49364453]{display:flex;align-items:center;gap:14px}.ff-range-row strong[data-v-49364453],.ff-shot-row strong[data-v-49364453]{min-width:58px;text-align:right;color:#3f3f46;font-size:13px;font-weight:500}.ff-range-wrap[data-v-49364453]{position:relative;flex:1;height:24px}.ff-range-wrap[data-v-49364453]:before{content:"";position:absolute;left:0;right:0;top:9px;height:7px;border-radius:999px;background:#f1f1f3}.ff-range-active[data-v-49364453]{position:absolute;top:9px;height:7px;border-radius:999px;background:var(--ff-action-bg)}.ff-range-wrap input[data-v-49364453]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:24px;margin:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer}.ff-range-wrap input[data-v-49364453]::-webkit-slider-thumb{width:18px;height:18px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid #fff;border-radius:50%;background:var(--primary);box-shadow:0 2px 8px var(--ff-action-shadow)}.ff-range-wrap input[data-v-49364453]::-moz-range-thumb{width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--primary);box-shadow:0 2px 8px var(--ff-action-shadow)}.ff-shot-segments[data-v-49364453]{flex:1;display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.ff-shot-segments button[data-v-49364453]{height:14px;border:none;border-radius:999px;background:#f0f0f2;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.ff-shot-segments button.active[data-v-49364453]{background:var(--ff-action-bg);box-shadow:0 2px 8px var(--ff-action-shadow)}.ff-lens-prompt>div[data-v-49364453]{display:flex;align-items:center;justify-content:space-between}.ff-lens-switch[data-v-49364453]{position:relative;width:40px;height:22px;padding:0;border:none;border-radius:999px;background:#d4d4d8;cursor:pointer}.ff-lens-switch.on[data-v-49364453]{background:var(--ff-action-bg);box-shadow:0 2px 8px var(--ff-action-shadow)}.ff-lens-switch i[data-v-49364453]{position:absolute;left:2px;top:2px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.ff-lens-switch.on i[data-v-49364453]{transform:translate(18px)}.ff-lens-prompt textarea[data-v-49364453]{width:100%;min-height:84px;box-sizing:border-box;resize:vertical;border:1px solid #e4e4e7;border-radius:12px;background:#fafafa;padding:11px 13px;color:#18181b;font:inherit}.ff-lens-prompt textarea[data-v-49364453]:disabled{opacity:.45}.ff-lens-foot[data-v-49364453]{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 22px 17px}.ff-lens-reset[data-v-49364453]{display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 10px;border-radius:9px}.ff-lens-actions[data-v-49364453]{display:flex;align-items:center;gap:10px}:root[data-theme=dark] .ff-lens-close[data-v-49364453],:root[data-theme=dark] .ff-lens-reset[data-v-49364453],:root[data-theme=dark] .ff-lens-control>span[data-v-49364453],:root[data-theme=dark] .ff-lens-prompt span[data-v-49364453],:root[data-theme=dark] .ff-range-row strong[data-v-49364453],:root[data-theme=dark] .ff-shot-row strong[data-v-49364453]{color:#d4d4d8}:root[data-theme=dark] .ff-range-wrap[data-v-49364453]:before,:root[data-theme=dark] .ff-shot-segments button[data-v-49364453]{background:#343b4d}:root[data-theme=dark] .ff-shot-segments button.active[data-v-49364453]{background:var(--ff-action-bg);color:var(--primary-fg);box-shadow:0 2px 8px var(--ff-action-shadow)}:root[data-theme=dark] .ff-lens-prompt textarea[data-v-49364453]{border-color:#4b5568;background:#2a3140;color:#f4f4f5}@media(max-width:680px){.ff-lens-body[data-v-49364453]{grid-template-columns:1fr}}.ff-panorama-mask[data-v-7ed973e3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a75;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ff-panorama-dialog[data-v-7ed973e3]{width:min(720px,calc(100vw - 32px));padding:22px;border:1px solid color-mix(in srgb,var(--primary) 20%,#e4e4e7);border-radius:24px;background:var(--ff-canvas-panel);box-shadow:0 28px 80px #0f172a3d}:root[data-theme=dark] .ff-panorama-dialog[data-v-7ed973e3]{border-color:color-mix(in srgb,var(--primary-border) 34%,#4b5568);background:var(--ff-canvas-panel)}.ff-panorama-header[data-v-7ed973e3]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.ff-panorama-kicker[data-v-7ed973e3]{color:var(--primary);font-size:12px;font-weight:700}.ff-panorama-header h3[data-v-7ed973e3]{margin:4px 0 0;color:#18181b;font-size:18px;line-height:1.4}:root[data-theme=dark] .ff-panorama-header h3[data-v-7ed973e3]{color:#f4f4f5}.ff-panorama-close[data-v-7ed973e3]{width:34px;height:34px;border:none;border-radius:10px;background:#f4f4f5;color:#52525b;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .ff-panorama-close[data-v-7ed973e3]{background:#2a3140;color:#e4e4e7}.ff-panorama-close[data-v-7ed973e3] .icon{width:17px;height:17px;display:inline-flex}.ff-panorama-close[data-v-7ed973e3] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2}.ff-panorama-preview[data-v-7ed973e3]{position:relative;height:260px;margin-bottom:16px;border-radius:18px;overflow:hidden;background:#f4f4f5}.ff-panorama-preview img[data-v-7ed973e3]{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;display:block}.ff-panorama-empty[data-v-7ed973e3]{margin:0;color:#a1a1aa;font-size:13px;display:grid;place-items:center;height:100%}.ff-panorama-preview span[data-v-7ed973e3]{position:absolute;left:12px;bottom:12px;padding:6px 10px;border-radius:999px;background:#0f172aad;color:#fff;font-size:11px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ff-panorama-composer[data-v-7ed973e3]{min-height:72px;padding:8px 10px 8px 8px;border:1px solid color-mix(in srgb,var(--primary) 24%,#e4e4e7);border-radius:22px;display:flex;align-items:center;gap:12px;background:#fff;box-shadow:0 8px 28px color-mix(in srgb,var(--primary) 10%,transparent)}:root[data-theme=dark] .ff-panorama-composer[data-v-7ed973e3]{border-color:color-mix(in srgb,var(--primary-border) 38%,#4b5568);background:#252b38}.ff-panorama-reference[data-v-7ed973e3]{flex:0 0 auto;height:54px;padding:5px 10px 5px 5px;border:1px solid color-mix(in srgb,var(--primary) 34%,#e4e4e7);border-radius:15px;background:color-mix(in srgb,var(--primary) 8%,#fff);color:var(--primary);display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.ff-panorama-reference img[data-v-7ed973e3]{width:42px;height:42px;border-radius:10px;object-fit:cover}.ff-panorama-composer p[data-v-7ed973e3]{flex:1;min-width:0;margin:0;color:#27272a;font-size:14px;line-height:1.5}:root[data-theme=dark] .ff-panorama-composer p[data-v-7ed973e3]{color:#f4f4f5}@media(max-width:640px){.ff-panorama-mask[data-v-7ed973e3]{padding:12px}.ff-panorama-dialog[data-v-7ed973e3]{width:calc(100vw - 24px);padding:16px;border-radius:20px}.ff-panorama-preview[data-v-7ed973e3]{height:210px}.ff-panorama-composer[data-v-7ed973e3]{flex-wrap:wrap}.ff-panorama-composer p[data-v-7ed973e3]{flex-basis:calc(100% - 80px)}}.ff-upscale-mask[data-v-0b1269c3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-upscale-dialog[data-v-0b1269c3]{width:min(460px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-upscale-dialog[data-v-0b1269c3]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-upscale-head[data-v-0b1269c3]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.ff-upscale-head h3[data-v-0b1269c3]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-upscale-banner[data-v-0b1269c3]{margin:0 0 14px;padding:10px 12px;border-radius:12px;font-size:12px;line-height:1.45}.ff-upscale-banner.is-muted[data-v-0b1269c3]{background:#f4f4f5;color:#71717a}.ff-upscale-banner.is-ok[data-v-0b1269c3]{background:color-mix(in srgb,#22c55e 12%,#fff);color:#166534}.ff-upscale-banner.is-warn[data-v-0b1269c3]{background:color-mix(in srgb,#f59e0b 14%,#fff);color:#92400e}.ff-upscale-banner.is-error[data-v-0b1269c3]{background:color-mix(in srgb,#ef4444 12%,#fff);color:#b91c1c}:root[data-theme=dark] .ff-upscale-banner.is-muted[data-v-0b1269c3]{background:#2a3140;color:#a1a1aa}:root[data-theme=dark] .ff-upscale-banner.is-ok[data-v-0b1269c3]{background:color-mix(in srgb,#22c55e 18%,#1e2330);color:#86efac}:root[data-theme=dark] .ff-upscale-banner.is-warn[data-v-0b1269c3]{background:color-mix(in srgb,#f59e0b 18%,#1e2330);color:#fcd34d}:root[data-theme=dark] .ff-upscale-banner.is-error[data-v-0b1269c3]{background:color-mix(in srgb,#ef4444 18%,#1e2330);color:#fca5a5}.ff-upscale-head p[data-v-0b1269c3]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-upscale-head h3[data-v-0b1269c3]{color:#f4f4f5}:root[data-theme=dark] .ff-upscale-head p[data-v-0b1269c3]{color:#a1a1aa}.ff-upscale-body[data-v-0b1269c3]{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.ff-upscale-label[data-v-0b1269c3]{margin-bottom:10px;color:#71717a;font-size:13px;font-weight:500}:root[data-theme=dark] .ff-upscale-label[data-v-0b1269c3]{color:#a1a1aa}.ff-upscale-options[data-v-0b1269c3]{display:flex;flex-wrap:wrap;gap:8px}.ff-upscale-opt[data-v-0b1269c3]{flex:1 1 auto;min-width:0;height:40px;padding:0 12px;border:1px solid #e4e4e7;border-radius:12px;background:#fff;color:#52525b;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.ff-upscale-opt[data-v-0b1269c3]:hover:not(.active){background:#f4f4f5;border-color:#d4d4d8}.ff-upscale-opt.active[data-v-0b1269c3]{border-color:color-mix(in srgb,var(--primary) 55%,#e4e4e7);background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}:root[data-theme=dark] .ff-upscale-opt[data-v-0b1269c3]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#a1a1aa}:root[data-theme=dark] .ff-upscale-opt[data-v-0b1269c3]:hover:not(.active){background:#2a3140;border-color:#4b5568}:root[data-theme=dark] .ff-upscale-opt.active[data-v-0b1269c3]{border-color:color-mix(in srgb,var(--primary-border) 50%,#4b5568);background:color-mix(in srgb,var(--primary-border) 18%,#1e2330);color:#c4b5fd}.ff-upscale-hint[data-v-0b1269c3]{margin:8px 0 0;color:#a1a1aa;font-size:12px;line-height:1.45}:root[data-theme=dark] .ff-upscale-hint[data-v-0b1269c3]{color:#71717a}.ff-upscale-target-row[data-v-0b1269c3]{display:grid;grid-template-columns:1fr 1fr;gap:10px}.ff-upscale-field[data-v-0b1269c3]{display:flex;flex-direction:column;gap:6px;color:#71717a;font-size:12px}:root[data-theme=dark] .ff-upscale-field[data-v-0b1269c3]{color:#a1a1aa}.ff-upscale-field input[data-v-0b1269c3]{height:40px;padding:0 12px;border:1px solid #e4e4e7;border-radius:12px;background:#fff;color:#18181b;font-size:13px;outline:none}.ff-upscale-field input[data-v-0b1269c3]:focus{border-color:color-mix(in srgb,var(--primary) 55%,#e4e4e7);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}:root[data-theme=dark] .ff-upscale-field input[data-v-0b1269c3]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#f4f4f5}.ff-upscale-foot[data-v-0b1269c3]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-upscale-cancel[data-v-0b1269c3]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-upscale-cancel[data-v-0b1269c3]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-upscale-cancel[data-v-0b1269c3]{color:#a1a1aa}:root[data-theme=dark] .ff-upscale-cancel[data-v-0b1269c3]:hover{background:#2a3140;color:#e4e4e7}.ff-upscale-start[data-v-0b1269c3]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-upscale-start[data-v-0b1269c3]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-upscale-start[data-v-0b1269c3]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-upscale-start[data-v-0b1269c3] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-upscale-start[data-v-0b1269c3] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-crop-mask[data-v-637ee6d2]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1260;display:grid;place-items:center;padding:24px;background:#0f172a66;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.ff-crop-panel[data-v-637ee6d2]{width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid #e4e4e7;border-radius:20px;background:#f8f8fa;color:#18181b;box-shadow:0 24px 64px #0f172a33}.ff-crop-head[data-v-637ee6d2]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 9px}.ff-crop-head h2[data-v-637ee6d2],.ff-crop-head p[data-v-637ee6d2]{margin:0}.ff-crop-head h2[data-v-637ee6d2]{font-size:15px;font-weight:650}.ff-crop-head p[data-v-637ee6d2]{margin-top:4px;color:#71717a;font-size:12px}.ff-crop-head>button[data-v-637ee6d2]{width:36px;height:36px;border:0;border-radius:11px;background:transparent;color:#52525b;display:grid;place-items:center;cursor:pointer}.ff-crop-head>button[data-v-637ee6d2]:hover{background:#eaeaee}.ff-crop-body[data-v-637ee6d2]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(250px,.8fr);gap:14px;padding:4px 16px 16px}.ff-crop-visual[data-v-637ee6d2]{min-width:0;min-height:360px;border-radius:16px;background:linear-gradient(45deg,#dedee2 25%,transparent 25%),linear-gradient(-45deg,#dedee2 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#dedee2 75%),linear-gradient(-45deg,transparent 75%,#dedee2 75%),#ededf0;background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;display:grid;place-items:center;overflow:hidden}.ff-crop-stage[data-v-637ee6d2]{position:relative;width:min(100%,calc(min(56vh,430px) * var(--crop-ar, 1)));max-width:100%;height:auto;max-height:min(56vh,430px);aspect-ratio:var(--crop-ar, 1);overflow:hidden;-webkit-user-select:none;user-select:none;background:#d4d4d8}.ff-crop-stage>img[data-v-637ee6d2]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:fill;pointer-events:none}.ff-crop-frame[data-v-637ee6d2]{position:absolute;z-index:2;box-sizing:border-box;border:2px solid #fff;cursor:move;touch-action:none;box-shadow:0 0 0 9999px #09090b94,0 0 0 1px #18181b80}.ff-crop-grid[data-v-637ee6d2]{position:absolute;background:#ffffff8c;pointer-events:none}.ff-crop-grid.is-v1[data-v-637ee6d2],.ff-crop-grid.is-v2[data-v-637ee6d2]{top:0;bottom:0;width:1px}.ff-crop-grid.is-v1[data-v-637ee6d2]{left:33.333%}.ff-crop-grid.is-v2[data-v-637ee6d2]{left:66.666%}.ff-crop-grid.is-h1[data-v-637ee6d2],.ff-crop-grid.is-h2[data-v-637ee6d2]{left:0;right:0;height:1px}.ff-crop-grid.is-h1[data-v-637ee6d2]{top:33.333%}.ff-crop-grid.is-h2[data-v-637ee6d2]{top:66.666%}.ff-crop-handle[data-v-637ee6d2]{position:absolute;width:18px;height:18px;padding:0;border:0;background:transparent;touch-action:none}.ff-crop-handle[data-v-637ee6d2]:before,.ff-crop-handle[data-v-637ee6d2]:after{content:"";position:absolute;background:#fff;border-radius:2px}.ff-crop-handle[data-v-637ee6d2]:before{width:14px;height:3px}.ff-crop-handle[data-v-637ee6d2]:after{width:3px;height:14px}.ff-crop-handle.is-nw[data-v-637ee6d2]{left:-5px;top:-5px;cursor:nwse-resize}.ff-crop-handle.is-ne[data-v-637ee6d2]{right:-5px;top:-5px;cursor:nesw-resize}.ff-crop-handle.is-sw[data-v-637ee6d2]{left:-5px;bottom:-5px;cursor:nesw-resize}.ff-crop-handle.is-se[data-v-637ee6d2]{right:-5px;bottom:-5px;cursor:nwse-resize}.ff-crop-handle.is-nw[data-v-637ee6d2]:before,.ff-crop-handle.is-ne[data-v-637ee6d2]:before{top:3px}.ff-crop-handle.is-sw[data-v-637ee6d2]:before,.ff-crop-handle.is-se[data-v-637ee6d2]:before{bottom:3px}.ff-crop-handle.is-nw[data-v-637ee6d2]:after,.ff-crop-handle.is-sw[data-v-637ee6d2]:after{left:3px}.ff-crop-handle.is-ne[data-v-637ee6d2]:after,.ff-crop-handle.is-se[data-v-637ee6d2]:after{right:3px}.ff-crop-controls[data-v-637ee6d2]{min-width:0;display:flex;flex-direction:column;padding:14px;border:1px solid #e4e4e7;border-radius:16px;background:#fff;box-shadow:0 8px 24px #0f172a0d}.ff-crop-controls h3[data-v-637ee6d2]{margin:0 0 12px;font-size:13px;font-weight:600}.ff-ratio-grid[data-v-637ee6d2]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.ff-ratio-grid .ff-action-chip[data-v-637ee6d2]{width:100%;height:42px;border-radius:11px;font-size:13px}.ff-crop-help[data-v-637ee6d2]{margin:14px 2px 0;color:#71717a;font-size:12px;line-height:1.5}.ff-crop-error[data-v-637ee6d2]{margin:10px 2px 0;color:#dc2626;font-size:12px}.ff-crop-actions[data-v-637ee6d2]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:18px}.ff-crop-reset[data-v-637ee6d2],.ff-crop-apply[data-v-637ee6d2]{min-height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;cursor:pointer}.ff-crop-reset[data-v-637ee6d2]{padding:0 10px;border:0;background:transparent;color:#52525b}.ff-crop-reset[data-v-637ee6d2]:hover{background:#f4f4f5}.ff-crop-apply[data-v-637ee6d2]{min-width:110px;padding:0 16px;border:0;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);font-weight:600;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease}.ff-crop-apply[data-v-637ee6d2]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-crop-apply[data-v-637ee6d2]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none;filter:none}.ff-crop-head[data-v-637ee6d2] .icon,.ff-crop-reset[data-v-637ee6d2] .icon,.ff-crop-apply[data-v-637ee6d2] .icon{width:16px;height:16px;display:inline-flex}.ff-crop-head[data-v-637ee6d2] svg,.ff-crop-reset[data-v-637ee6d2] svg,.ff-crop-apply[data-v-637ee6d2] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-crop-apply[data-v-637ee6d2] svg{stroke:#fff;stroke-width:2.1}:root[data-theme=dark] .ff-crop-panel[data-v-637ee6d2]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}:root[data-theme=dark] .ff-crop-head p[data-v-637ee6d2],:root[data-theme=dark] .ff-crop-help[data-v-637ee6d2]{color:#a1a1aa}:root[data-theme=dark] .ff-crop-head>button[data-v-637ee6d2]{color:#d4d4d8}:root[data-theme=dark] .ff-crop-head>button[data-v-637ee6d2]:hover,:root[data-theme=dark] .ff-crop-reset[data-v-637ee6d2]:hover{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-crop-controls[data-v-637ee6d2]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-ratio-grid .ff-action-chip[data-v-637ee6d2]{border-color:#4b5568;background:#252b38;color:#d4d4d8}:root[data-theme=dark] .ff-ratio-grid .ff-action-chip[data-v-637ee6d2]:hover:not(.active){background:#343b4d;color:#e4e4e7}:root[data-theme=dark] .ff-ratio-grid .ff-action-chip.active[data-v-637ee6d2]{border-color:transparent;background:var(--ff-action-bg);color:var(--primary-fg)}:root[data-theme=dark] .ff-crop-reset[data-v-637ee6d2]{color:#d4d4d8}:root[data-theme=dark] .ff-crop-apply[data-v-637ee6d2]{background:var(--ff-action-bg);color:var(--primary-fg)}@media(max-width:720px){.ff-crop-body[data-v-637ee6d2]{grid-template-columns:1fr}.ff-crop-visual[data-v-637ee6d2]{min-height:300px}.ff-ratio-grid[data-v-637ee6d2]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:520px){.ff-crop-mask[data-v-637ee6d2]{padding:8px}.ff-crop-panel[data-v-637ee6d2]{width:calc(100vw - 16px);max-height:calc(100vh - 16px)}}.ff-rotate-mask[data-v-b3a36bd6]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1260;display:grid;place-items:center;padding:24px;background:#0f172a57;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-rotate-panel[data-v-b3a36bd6]{width:min(860px,calc(100vw - 32px));max-height:calc(100vh - 48px);overflow:auto;border:1px solid #e8e8ec;border-radius:20px;background:#fff;box-shadow:0 24px 64px #0f172a2e}:root[data-theme=dark] .ff-rotate-panel[data-v-b3a36bd6]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5;box-shadow:0 24px 64px #00000080}.ff-rotate-head[data-v-b3a36bd6]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 8px}.ff-rotate-head h2[data-v-b3a36bd6]{margin:0;font-size:16px;font-weight:700}.ff-rotate-head p[data-v-b3a36bd6]{margin:6px 0 0;color:#71717a;font-size:12px}:root[data-theme=dark] .ff-rotate-head p[data-v-b3a36bd6]{color:#a1a1aa}.ff-rotate-head>button[data-v-b3a36bd6]{width:34px;height:34px;border:none;border-radius:10px;background:transparent;color:#52525b;display:grid;place-items:center;cursor:pointer}.ff-rotate-head>button[data-v-b3a36bd6]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-rotate-head>button[data-v-b3a36bd6]{color:#d4d4d8}:root[data-theme=dark] .ff-rotate-head>button[data-v-b3a36bd6]:hover{background:#2a3140}.ff-rotate-body[data-v-b3a36bd6]{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(240px,.85fr);gap:16px;padding:8px 20px 20px}.ff-rotate-visual[data-v-b3a36bd6]{min-height:360px;border-radius:16px;background:#f4f4f5;display:grid;place-items:center;overflow:hidden}:root[data-theme=dark] .ff-rotate-visual[data-v-b3a36bd6]{background:var(--ff-canvas-panel-hover)}.ff-rotate-stage[data-v-b3a36bd6]{width:min(100%,420px);aspect-ratio:1;display:grid;place-items:center}.ff-rotate-stage img[data-v-b3a36bd6]{max-width:78%;max-height:78%;object-fit:contain;border-radius:10px;transition:transform .2s ease;transform-origin:center center}.ff-rotate-empty[data-v-b3a36bd6]{color:#a1a1aa;font-size:13px}.ff-rotate-controls[data-v-b3a36bd6]{display:flex;flex-direction:column;min-height:360px;padding:16px;border:1px solid #ececf0;border-radius:16px;background:#fafafa}:root[data-theme=dark] .ff-rotate-controls[data-v-b3a36bd6]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover)}.ff-rotate-controls h3[data-v-b3a36bd6]{margin:0 0 12px;font-size:13px;font-weight:600}.ff-rotate-options[data-v-b3a36bd6]{display:grid;gap:8px}.ff-rotate-options .ff-action-chip[data-v-b3a36bd6]{width:100%;height:40px;border-radius:11px;justify-content:flex-start;padding:0 14px}.ff-rotate-help[data-v-b3a36bd6]{margin:14px 2px 0;color:#71717a;font-size:12px;line-height:1.5}:root[data-theme=dark] .ff-rotate-help[data-v-b3a36bd6]{color:#a1a1aa}.ff-rotate-error[data-v-b3a36bd6]{margin:10px 2px 0;color:#dc2626;font-size:12px}.ff-rotate-actions[data-v-b3a36bd6]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto;padding-top:18px}.ff-rotate-reset[data-v-b3a36bd6],.ff-rotate-apply[data-v-b3a36bd6]{min-height:38px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:13px;cursor:pointer}.ff-rotate-reset[data-v-b3a36bd6]{padding:0 10px;border:0;background:transparent;color:#52525b}.ff-rotate-reset[data-v-b3a36bd6]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-rotate-reset[data-v-b3a36bd6]{color:#d4d4d8}:root[data-theme=dark] .ff-rotate-reset[data-v-b3a36bd6]:hover{background:#2a3140}.ff-rotate-apply[data-v-b3a36bd6]{min-width:110px;padding:0 16px;border:0;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);font-weight:600;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease}.ff-rotate-apply[data-v-b3a36bd6]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-rotate-apply[data-v-b3a36bd6]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;transform:none;filter:none}.ff-rotate-head[data-v-b3a36bd6] .icon,.ff-rotate-reset[data-v-b3a36bd6] .icon,.ff-rotate-apply[data-v-b3a36bd6] .icon{width:16px;height:16px;display:inline-flex}.ff-rotate-head[data-v-b3a36bd6] svg,.ff-rotate-reset[data-v-b3a36bd6] svg,.ff-rotate-apply[data-v-b3a36bd6] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-rotate-apply[data-v-b3a36bd6] svg{stroke:#fff;stroke-width:2.1}@media(max-width:720px){.ff-rotate-body[data-v-b3a36bd6]{grid-template-columns:1fr}.ff-rotate-visual[data-v-b3a36bd6],.ff-rotate-controls[data-v-b3a36bd6]{min-height:280px}}.ff-analyze-mask[data-v-a3ff30a3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-analyze-dialog[data-v-a3ff30a3]{width:min(380px,calc(100vw - 32px));padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-analyze-dialog[data-v-a3ff30a3]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-analyze-head[data-v-a3ff30a3]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.ff-analyze-head h3[data-v-a3ff30a3]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-analyze-head p[data-v-a3ff30a3]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-analyze-head h3[data-v-a3ff30a3]{color:#f4f4f5}:root[data-theme=dark] .ff-analyze-head p[data-v-a3ff30a3]{color:#a1a1aa}.ff-analyze-foot[data-v-a3ff30a3]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-analyze-cancel[data-v-a3ff30a3]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-analyze-cancel[data-v-a3ff30a3]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-analyze-cancel[data-v-a3ff30a3]{color:#a1a1aa}:root[data-theme=dark] .ff-analyze-cancel[data-v-a3ff30a3]:hover{background:#2a3140;color:#e4e4e7}.ff-analyze-start[data-v-a3ff30a3]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease}.ff-analyze-start[data-v-a3ff30a3]:hover{filter:brightness(1.06);transform:translateY(-1px)}.ff-analyze-start[data-v-a3ff30a3] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-analyze-start[data-v-a3ff30a3] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-cutout-mask[data-v-ee4a6186]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-cutout-dialog[data-v-ee4a6186]{width:min(380px,calc(100vw - 32px));padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-cutout-dialog[data-v-ee4a6186]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-cutout-head[data-v-ee4a6186]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.ff-cutout-head h3[data-v-ee4a6186]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-cutout-head p[data-v-ee4a6186]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-cutout-head h3[data-v-ee4a6186]{color:#f4f4f5}:root[data-theme=dark] .ff-cutout-head p[data-v-ee4a6186]{color:#a1a1aa}.ff-cutout-foot[data-v-ee4a6186]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-cutout-cancel[data-v-ee4a6186]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-cutout-cancel[data-v-ee4a6186]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-cutout-cancel[data-v-ee4a6186]{color:#a1a1aa}:root[data-theme=dark] .ff-cutout-cancel[data-v-ee4a6186]:hover{background:#2a3140;color:#e4e4e7}.ff-cutout-start[data-v-ee4a6186]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease}.ff-cutout-start[data-v-ee4a6186]:hover{filter:brightness(1.06);transform:translateY(-1px)}.ff-cutout-start[data-v-ee4a6186] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-cutout-start[data-v-ee4a6186] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-outpaint-mask[data-v-f76361de]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1360;display:grid;place-items:center;padding:20px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-outpaint-panel[data-v-f76361de]{width:min(720px,calc(100vw - 28px));max-height:calc(100vh - 40px);overflow:auto;border:1px solid #e8e8ec;border-radius:20px;background:#fff;box-shadow:0 24px 64px #0f172a33;display:flex;flex-direction:column}:root[data-theme=dark] .ff-outpaint-panel[data-v-f76361de]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}.ff-outpaint-head[data-v-f76361de]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 8px}.ff-outpaint-head h2[data-v-f76361de]{margin:0;font-size:16px;font-weight:700}.ff-outpaint-head p[data-v-f76361de]{margin:4px 0 0;font-size:12px;color:#71717a;line-height:1.45}:root[data-theme=dark] .ff-outpaint-head p[data-v-f76361de]{color:#a1a1aa}.ff-outpaint-head>button[data-v-f76361de]{width:34px;height:34px;border:0;border-radius:10px;background:transparent;color:#52525b;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-outpaint-head>button[data-v-f76361de]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-outpaint-head>button[data-v-f76361de]{color:#d4d4d8}:root[data-theme=dark] .ff-outpaint-head>button[data-v-f76361de]:hover{background:#2a3140}.ff-outpaint-stage[data-v-f76361de]{position:relative;margin:0 16px;min-height:320px;height:min(48vh,420px);border-radius:16px;background:#ececf1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px;box-sizing:border-box}:root[data-theme=dark] .ff-outpaint-stage[data-v-f76361de]{background:var(--ff-canvas-panel-hover)}.ff-outpaint-meta[data-v-f76361de]{position:absolute;top:14px;left:16px;z-index:2;color:#3f3f46;font-size:12px;line-height:1.55;pointer-events:none}:root[data-theme=dark] .ff-outpaint-meta[data-v-f76361de]{color:#d4d4d8}.ff-outpaint-frame[data-v-f76361de]{position:relative;box-sizing:border-box;flex:0 0 auto;aspect-ratio:var(--outpaint-ar, 1);width:min(100%,calc((min(48vh,420px) - 32px) * var(--outpaint-ar, 1)));max-width:100%;height:auto;max-height:calc(min(48vh,420px) - 32px);border:1.5px solid #18181b;box-shadow:0 0 0 1px #ffffff59;background-color:#d4d4d8;background-image:linear-gradient(45deg,#c4c4c8 25%,transparent 25%),linear-gradient(-45deg,#c4c4c8 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#c4c4c8 75%),linear-gradient(-45deg,transparent 75%,#c4c4c8 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}:root[data-theme=dark] .ff-outpaint-frame[data-v-f76361de]{border-color:#f4f4f5;background-color:#3f4656;background-image:linear-gradient(45deg,#505868 25%,transparent 25%),linear-gradient(-45deg,#505868 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#505868 75%),linear-gradient(-45deg,transparent 75%,#505868 75%)}.ff-outpaint-frame img[data-v-f76361de]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;max-width:none;object-fit:fill;pointer-events:none;-webkit-user-select:none;user-select:none}.ff-outpaint-empty[data-v-f76361de]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#71717a;font-size:13px}.ff-outpaint-controls[data-v-f76361de]{display:grid;gap:14px;padding:14px 16px 4px}.ff-outpaint-group h3[data-v-f76361de]{margin:0 0 8px;font-size:12px;font-weight:600;color:#52525b}:root[data-theme=dark] .ff-outpaint-group h3[data-v-f76361de]{color:#a1a1aa}.ff-outpaint-chips[data-v-f76361de]{display:flex;flex-wrap:wrap;gap:8px}.ff-outpaint-chip[data-v-f76361de]{min-height:34px;padding:0 14px;border:1px solid #e4e4e7;border-radius:999px;background:#fafafa;color:#3f3f46;font-size:13px;cursor:pointer}.ff-outpaint-chip[data-v-f76361de]:hover{background:#f4f4f5}.ff-outpaint-chip.active[data-v-f76361de]{border-color:#18181b;background:#18181b;color:#fff}:root[data-theme=dark] .ff-outpaint-chip[data-v-f76361de]{border-color:#3f4656;background:#222836;color:#e4e4e7}:root[data-theme=dark] .ff-outpaint-chip[data-v-f76361de]:hover{background:#2a3140}:root[data-theme=dark] .ff-outpaint-chip.active[data-v-f76361de]{border-color:#f4f4f5;background:#f4f4f5;color:#18181b}.ff-outpaint-help[data-v-f76361de]{margin:8px 0 0;font-size:12px;color:#71717a;line-height:1.45}:root[data-theme=dark] .ff-outpaint-help[data-v-f76361de]{color:#a1a1aa}.ff-outpaint-foot[data-v-f76361de]{display:flex;justify-content:flex-end;padding:12px 16px 16px}.ff-outpaint-generate[data-v-f76361de]{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:0 18px;border:0;border-radius:999px;background:#18181b;color:#fff;font-size:14px;font-weight:600;cursor:pointer}.ff-outpaint-generate[data-v-f76361de]:hover:not(:disabled){background:#27272a}.ff-outpaint-generate[data-v-f76361de]:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .ff-outpaint-generate[data-v-f76361de]{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-outpaint-generate[data-v-f76361de]:hover:not(:disabled){background:#e4e4e7}.ff-outpaint-credit[data-v-f76361de]{display:inline-flex;align-items:center;gap:4px;opacity:.85;font-weight:500}.ff-outpaint-head[data-v-f76361de] .icon,.ff-outpaint-generate[data-v-f76361de] .icon{width:16px;height:16px}.ff-outpaint-head[data-v-f76361de] svg,.ff-outpaint-generate[data-v-f76361de] svg{width:16px;height:16px;fill:currentColor}.ff-image-console[data-v-f1d217e5]{position:fixed;z-index:1100;display:flex;align-items:center;gap:8px;min-height:52px;width:max-content;max-width:min(920px,calc(100vw - 16px));padding:8px 10px;border-radius:16px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 10px 28px #0f172a1a;pointer-events:auto}:root[data-theme=dark] .ff-image-console[data-v-f1d217e5]{border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px #00000073}.ff-console-tools[data-v-f1d217e5],.ff-console-utils[data-v-f1d217e5]{display:flex;align-items:center;gap:2px;min-width:0}.ff-console-divider[data-v-f1d217e5]{width:1px;height:24px;background:#e8e8ec;flex-shrink:0}:root[data-theme=dark] .ff-console-divider[data-v-f1d217e5]{background:#3f4654}.ff-console-tool[data-v-f1d217e5]{position:relative;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:5px;min-width:auto;height:36px;padding:0 8px;border:none;border-radius:12px;background:transparent;color:#3f3f46;cursor:pointer}:root[data-theme=dark] .ff-console-tool[data-v-f1d217e5]{color:var(--ff-node-console-fg)}.ff-console-tool[data-v-f1d217e5]:hover:not(:disabled){background:#f4f4f5}.ff-console-tool[data-v-f1d217e5]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-console-tool[data-v-f1d217e5]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}.ff-console-tool[data-v-f1d217e5]:disabled:hover{background:transparent}:root[data-theme=dark] .ff-console-tool[data-v-f1d217e5]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-tool-icon-wrap[data-v-f1d217e5]{position:relative;width:18px;height:18px;display:grid;place-items:center}.ff-tool-label[data-v-f1d217e5]{font-size:12px;line-height:1.2;font-weight:500;color:#52525b;white-space:nowrap}:root[data-theme=dark] .ff-tool-label[data-v-f1d217e5]{color:inherit}.ff-console-icon-btn[data-v-f1d217e5]{width:36px;height:36px;border:none;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .ff-console-icon-btn[data-v-f1d217e5]{color:var(--ff-node-console-fg)}.ff-console-icon-btn[data-v-f1d217e5]:hover:not(:disabled){background:#f4f4f5}:root[data-theme=dark] .ff-console-icon-btn[data-v-f1d217e5]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-console-icon-btn[data-v-f1d217e5]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-console-icon-btn[data-v-f1d217e5]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}.ff-console-tool[data-v-f1d217e5] .icon,.ff-console-icon-btn[data-v-f1d217e5] .icon{width:16px;height:16px;display:inline-flex}.ff-console-tool[data-v-f1d217e5] .icon svg,.ff-console-icon-btn[data-v-f1d217e5] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-diamond[data-v-f1d217e5]{position:absolute;top:-3px;right:-5px;width:7px;height:7px;background:var(--primary);transform:rotate(45deg);border-radius:1px;box-shadow:0 0 0 1.5px #fff}:root[data-theme=dark] .ff-diamond[data-v-f1d217e5]{box-shadow:0 0 0 1.5px var(--ff-canvas-panel)}.ff-more[data-v-f1d217e5]{position:relative}.ff-more-menu[data-v-f1d217e5]{position:absolute;top:calc(100% + 6px);right:0;z-index:2;min-width:150px;padding:8px;border-radius:16px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 12px 28px #0f172a1f;display:flex;flex-direction:column;gap:2px}:root[data-theme=dark] .ff-more-menu[data-v-f1d217e5]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-more-menu button[data-v-f1d217e5]{width:100%;height:40px;border:none;border-radius:9px;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;padding:0 10px;font-size:13px;color:#3f3f46;cursor:pointer}:root[data-theme=dark] .ff-more-menu button[data-v-f1d217e5]{color:var(--ff-node-console-fg)}.ff-more-menu button[data-v-f1d217e5]:hover{background:#f4f4f5}.ff-more-menu button[data-v-f1d217e5]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-more-menu button[data-v-f1d217e5]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}:root[data-theme=dark] .ff-more-menu button[data-v-f1d217e5]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-more-menu[data-v-f1d217e5] .icon{width:16px;height:16px;flex-shrink:0;display:inline-flex}.ff-more-menu[data-v-f1d217e5] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ff-file[data-v-f1d217e5]{display:none}.ff-text-console[data-v-682b606a]{position:fixed;z-index:1100;display:flex;align-items:center;width:max-content;max-width:calc(100vw - 16px);pointer-events:auto}.ff-char-tool-mask[data-v-f271ef2c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a57;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-char-tool-panel[data-v-f271ef2c]{width:min(420px,calc(100vw - 32px));border:1px solid #e8e8ec;border-radius:20px;background:#fff;box-shadow:0 22px 56px #0f172a2e;overflow:visible}:root[data-theme=dark] .ff-char-tool-panel[data-v-f271ef2c]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-char-tool-head[data-v-f271ef2c]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 8px}.ff-char-tool-head h2[data-v-f271ef2c]{margin:0;font-size:15px;font-weight:650;color:#18181b}:root[data-theme=dark] .ff-char-tool-head h2[data-v-f271ef2c]{color:#f4f4f5}.ff-char-tool-head>button[data-v-f271ef2c]{width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer}.ff-char-tool-head>button[data-v-f271ef2c]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-char-tool-head>button[data-v-f271ef2c]{color:#a1a1aa}:root[data-theme=dark] .ff-char-tool-head>button[data-v-f271ef2c]:hover{background:var(--ff-canvas-panel-hover);color:#e4e4e7}.ff-char-tool-preview[data-v-f271ef2c]{margin:0 14px;height:320px;border-radius:14px;background:#f4f4f5;display:grid;place-items:center;overflow:hidden}:root[data-theme=dark] .ff-char-tool-preview[data-v-f271ef2c]{background:var(--ff-canvas-panel-hover)}.ff-char-tool-preview img[data-v-f271ef2c]{width:100%;height:100%;object-fit:contain;display:block}.ff-char-tool-empty[data-v-f271ef2c]{color:#a1a1aa;font-size:13px}.ff-char-tool-foot[data-v-f271ef2c]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px 14px}.ff-char-tool-model-wrap[data-v-f271ef2c]{position:relative;min-width:0}.ff-char-tool-model-trigger[data-v-f271ef2c]{max-width:min(240px,52vw);height:40px;padding:0 12px;border:0;border-radius:12px;background:#f4f4f5;color:#18181b;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:500;cursor:pointer}.ff-char-tool-model-trigger>span[data-v-f271ef2c]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-char-tool-model-trigger[data-v-f271ef2c]:hover{background:#ececf0}:root[data-theme=dark] .ff-char-tool-model-trigger[data-v-f271ef2c]{background:var(--ff-canvas-panel-hover);color:#f4f4f5}:root[data-theme=dark] .ff-char-tool-model-trigger[data-v-f271ef2c]:hover{background:color-mix(in srgb,var(--ff-canvas-panel-hover) 70%,#fff 8%)}.ff-char-tool-chevron[data-v-f271ef2c]{margin-left:2px;opacity:.7;flex-shrink:0}.ff-char-tool-model-menu[data-v-f271ef2c]{position:absolute;left:0;bottom:calc(100% + 8px);z-index:4;min-width:168px;padding:8px;border:1px solid #e4e4e7;border-radius:16px;background:#fff;box-shadow:0 16px 36px #0f172a24}:root[data-theme=dark] .ff-char-tool-model-menu[data-v-f271ef2c]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-char-tool-model-item[data-v-f271ef2c]{width:100%;height:40px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;display:flex;align-items:center;gap:10px;font-size:13px;text-align:left;cursor:pointer}.ff-char-tool-model-item[data-v-f271ef2c]:hover,.ff-char-tool-model-item.active[data-v-f271ef2c]{background:#f4f4f5}:root[data-theme=dark] .ff-char-tool-model-item[data-v-f271ef2c]{color:#e4e4e7}:root[data-theme=dark] .ff-char-tool-model-item[data-v-f271ef2c]:hover,:root[data-theme=dark] .ff-char-tool-model-item.active[data-v-f271ef2c]{background:var(--ff-canvas-panel-hover)}.ff-char-tool-model-item>span[data-v-f271ef2c]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-char-tool-actions[data-v-f271ef2c]{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto}.ff-char-tool-head[data-v-f271ef2c] .icon,.ff-char-tool-model-trigger[data-v-f271ef2c] .icon,.ff-char-tool-model-item[data-v-f271ef2c] .icon{width:16px;height:16px;flex-shrink:0;display:inline-flex}.ff-char-tool-head[data-v-f271ef2c] svg,.ff-char-tool-model-trigger[data-v-f271ef2c] svg,.ff-char-tool-model-item[data-v-f271ef2c] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ff-char-tool-actions[data-v-f271ef2c] .ff-action-send{width:42px;height:42px}.ff-makeup-custom-mask[data-v-896a1fd8]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1360;display:grid;place-items:center;padding:20px;background:#0f121a6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-makeup-custom-panel[data-v-896a1fd8]{width:min(520px,calc(100vw - 28px));height:min(680px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8e8ec;border-radius:22px;background:#fff;box-shadow:0 24px 60px #0f172a2e}:root[data-theme=dark] .ff-makeup-custom-panel[data-v-896a1fd8]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}.ff-makeup-custom-head[data-v-896a1fd8]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0;padding:16px 16px 8px}.ff-makeup-custom-head h2[data-v-896a1fd8]{margin:0;font-size:16px;font-weight:700}.ff-makeup-custom-head p[data-v-896a1fd8]{margin:6px 0 0;color:#71717a;font-size:12px}:root[data-theme=dark] .ff-makeup-custom-head p[data-v-896a1fd8]{color:#a1a1aa}.ff-makeup-custom-head>button[data-v-896a1fd8]{width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer}.ff-makeup-custom-head>button[data-v-896a1fd8]:hover:not(:disabled){background:#f4f4f5}.ff-makeup-custom-head>button[data-v-896a1fd8]:disabled{opacity:.45;cursor:not-allowed}:root[data-theme=dark] .ff-makeup-custom-head>button[data-v-896a1fd8]:hover:not(:disabled){background:var(--ff-canvas-panel-hover)}.ff-makeup-custom-body[data-v-896a1fd8]{flex:1 1 auto;min-height:0;overflow:auto;padding:8px 16px 12px;display:flex;flex-direction:column;gap:14px}.ff-makeup-field[data-v-896a1fd8]{display:flex;flex-direction:column;gap:8px;color:#71717a;font-size:12px;font-weight:500}:root[data-theme=dark] .ff-makeup-field[data-v-896a1fd8]{color:#a1a1aa}.ff-makeup-field input[data-v-896a1fd8],.ff-makeup-field textarea[data-v-896a1fd8]{width:100%;border:1px solid #e4e4e7;border-radius:12px;background:#fff;color:#18181b;font-size:13px;font-weight:400;outline:none;resize:vertical}.ff-makeup-field input[data-v-896a1fd8]{height:40px;padding:0 12px}.ff-makeup-field textarea[data-v-896a1fd8]{padding:10px 12px;min-height:72px;line-height:1.45}.ff-makeup-field input[data-v-896a1fd8]:focus,.ff-makeup-field textarea[data-v-896a1fd8]:focus{border-color:color-mix(in srgb,var(--primary) 55%,#e4e4e7);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}:root[data-theme=dark] .ff-makeup-field input[data-v-896a1fd8],:root[data-theme=dark] .ff-makeup-field textarea[data-v-896a1fd8]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#f4f4f5}.ff-makeup-refs[data-v-896a1fd8]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.ff-makeup-ref[data-v-896a1fd8]{position:relative;aspect-ratio:1;border:1px dashed #d4d4d8;border-radius:12px;padding:0;background:#f4f4f5;overflow:hidden;cursor:pointer}.ff-makeup-ref img[data-v-896a1fd8]{width:100%;height:100%;object-fit:cover;display:block}.ff-makeup-ref i[data-v-896a1fd8]{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:#0f172ab8;color:#fff;display:grid;place-items:center}.ff-makeup-ref.is-add[data-v-896a1fd8]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#71717a;font-size:11px}:root[data-theme=dark] .ff-makeup-ref[data-v-896a1fd8]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-makeup-ref.is-add[data-v-896a1fd8]{color:#a1a1aa}.ff-makeup-hint[data-v-896a1fd8]{margin:0;color:#a1a1aa;font-size:11px;font-weight:400;line-height:1.4}.ff-makeup-custom-error[data-v-896a1fd8]{margin:0;color:#b91c1c;font-size:12px;line-height:1.45}:root[data-theme=dark] .ff-makeup-custom-error[data-v-896a1fd8]{color:#fca5a5}.ff-makeup-custom-foot[data-v-896a1fd8]{flex-shrink:0;display:flex;flex-direction:column;gap:12px;padding:12px 16px 16px;border-top:1px solid #f0f0f3}:root[data-theme=dark] .ff-makeup-custom-foot[data-v-896a1fd8]{border-top-color:#2a3140}.ff-makeup-custom-controls[data-v-896a1fd8],.ff-makeup-custom-actions[data-v-896a1fd8]{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ff-makeup-custom-actions[data-v-896a1fd8]{justify-content:flex-end}.ff-makeup-menu[data-v-896a1fd8]{position:relative}.ff-makeup-pill[data-v-896a1fd8]{height:40px;padding:0 12px;border:0;border-radius:12px;background:#f4f4f5;color:#18181b;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;cursor:pointer}.ff-makeup-pill.is-model[data-v-896a1fd8]{max-width:180px;font-weight:500}.ff-makeup-pill.is-model>span[data-v-896a1fd8]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-makeup-pill[data-v-896a1fd8]:disabled{opacity:.5;cursor:not-allowed}:root[data-theme=dark] .ff-makeup-pill[data-v-896a1fd8]{background:var(--ff-canvas-panel-hover);color:#f4f4f5}.ff-makeup-drop[data-v-896a1fd8]{position:absolute;left:0;bottom:calc(100% + 8px);z-index:5;min-width:88px;padding:8px;border:1px solid #e4e4e7;border-radius:14px;background:#fff;box-shadow:0 14px 32px #0f172a24}.ff-makeup-drop.is-model[data-v-896a1fd8]{min-width:180px}:root[data-theme=dark] .ff-makeup-drop[data-v-896a1fd8]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-makeup-drop button[data-v-896a1fd8]{width:100%;height:36px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;display:flex;align-items:center;font-size:13px;text-align:left;cursor:pointer}.ff-makeup-drop button.active[data-v-896a1fd8],.ff-makeup-drop button[data-v-896a1fd8]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-makeup-drop button[data-v-896a1fd8]{color:#e4e4e7}:root[data-theme=dark] .ff-makeup-drop button.active[data-v-896a1fd8],:root[data-theme=dark] .ff-makeup-drop button[data-v-896a1fd8]:hover{background:var(--ff-canvas-panel-hover)}.ff-makeup-custom-cancel[data-v-896a1fd8]{height:42px;padding:0 14px;border:0;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-makeup-custom-cancel[data-v-896a1fd8]:hover:not(:disabled){background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-makeup-custom-cancel[data-v-896a1fd8]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:#e4e4e7}.ff-makeup-custom-submit[data-v-896a1fd8]{height:42px;padding:0 16px;border:0;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);font-size:13px;font-weight:650;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow)}.ff-makeup-custom-submit[data-v-896a1fd8]:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.ff-makeup-file[data-v-896a1fd8]{display:none}.ff-makeup-custom-head[data-v-896a1fd8] .icon,.ff-makeup-ref[data-v-896a1fd8] .icon,.ff-makeup-pill[data-v-896a1fd8] .icon{width:15px;height:15px;display:inline-flex}.ff-makeup-custom-head[data-v-896a1fd8] svg,.ff-makeup-ref[data-v-896a1fd8] svg,.ff-makeup-pill[data-v-896a1fd8] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-makeup-mask[data-v-9bd5bc99]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:20px;background:#0f121a5c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-makeup-panel[data-v-9bd5bc99]{width:min(720px,calc(100vw - 28px));height:min(640px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8e8ec;border-radius:22px;background:#fff;box-shadow:0 24px 60px #0f172a2e}:root[data-theme=dark] .ff-makeup-panel[data-v-9bd5bc99]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}.ff-makeup-head[data-v-9bd5bc99]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:14px 16px 6px}.ff-makeup-head h2[data-v-9bd5bc99]{margin:0;font-size:16px;font-weight:700}.ff-makeup-head>button[data-v-9bd5bc99]{width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer}.ff-makeup-head>button[data-v-9bd5bc99]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-makeup-head>button[data-v-9bd5bc99]{color:#a1a1aa}:root[data-theme=dark] .ff-makeup-head>button[data-v-9bd5bc99]:hover{background:var(--ff-canvas-panel-hover)}.ff-makeup-tabs[data-v-9bd5bc99]{display:flex;flex-wrap:wrap;flex-shrink:0;gap:4px;min-height:44px;margin:8px 16px 12px;padding:4px;border-radius:14px;background:#f4f4f5}:root[data-theme=dark] .ff-makeup-tabs[data-v-9bd5bc99]{background:var(--ff-canvas-panel-hover)}.ff-makeup-tab[data-v-9bd5bc99]{flex:1 1 auto;min-width:72px;height:36px;border:0;border-radius:11px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-makeup-tab.active[data-v-9bd5bc99]{background:#fff;color:#18181b;font-weight:650;box-shadow:0 4px 12px #0f172a14}:root[data-theme=dark] .ff-makeup-tab.active[data-v-9bd5bc99]{background:color-mix(in srgb,#fff 10%,var(--ff-canvas-panel-hover));color:#f4f4f5}.ff-makeup-status[data-v-9bd5bc99]{margin:0 0 10px;color:#71717a;font-size:13px;line-height:1.45}.ff-makeup-status.is-error[data-v-9bd5bc99]{color:#b91c1c}:root[data-theme=dark] .ff-makeup-status[data-v-9bd5bc99]{color:#a1a1aa}:root[data-theme=dark] .ff-makeup-status.is-error[data-v-9bd5bc99]{color:#fca5a5}.ff-makeup-body[data-v-9bd5bc99]{flex:1 1 auto;min-height:0;overflow:auto;padding:0 16px 8px}.ff-makeup-grid[data-v-9bd5bc99]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;align-content:start}.ff-makeup-card[data-v-9bd5bc99]{position:relative;aspect-ratio:1;border:2px solid transparent;border-radius:12px;padding:0;background:#f4f4f5;overflow:hidden;cursor:pointer}.ff-makeup-card.active[data-v-9bd5bc99]{border-color:#18181b}:root[data-theme=dark] .ff-makeup-card[data-v-9bd5bc99]{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-makeup-card.active[data-v-9bd5bc99]{border-color:#f4f4f5}.ff-makeup-card.is-custom[data-v-9bd5bc99]{display:grid;place-items:center}.ff-makeup-custom-body[data-v-9bd5bc99]{display:flex;flex-direction:column;align-items:center;gap:8px;color:#71717a;font-size:12px;padding:8px;text-align:center}.ff-makeup-thumb[data-v-9bd5bc99]{display:block;width:100%;height:100%;position:relative}.ff-makeup-thumb img[data-v-9bd5bc99]{width:100%;height:100%;object-fit:cover;display:block}.ff-makeup-name[data-v-9bd5bc99]{position:absolute;left:0;right:0;bottom:0;padding:18px 6px 8px;background:linear-gradient(transparent,#0f172ab8);color:#fff;font-size:11px;font-weight:500;text-align:center;line-height:1.25}.ff-makeup-check[data-v-9bd5bc99]{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#18181b;color:#fff;display:grid;place-items:center}.ff-makeup-delete[data-v-9bd5bc99]{position:absolute;top:6px;left:6px;z-index:2;width:24px;height:24px;border:0;border-radius:8px;padding:0;display:grid;place-items:center;background:#0f172a9e;color:#fff;cursor:pointer}.ff-makeup-delete[data-v-9bd5bc99]:hover:not(:disabled){background:#b91c1ce6}.ff-makeup-delete[data-v-9bd5bc99]:disabled{opacity:.5;cursor:wait}:root[data-theme=dark] .ff-makeup-check[data-v-9bd5bc99]{background:var(--primary)}.ff-makeup-foot[data-v-9bd5bc99]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:14px 16px 16px;flex-wrap:wrap;border-top:1px solid #f0f0f3}:root[data-theme=dark] .ff-makeup-foot[data-v-9bd5bc99]{border-top-color:#2a3140}.ff-makeup-current[data-v-9bd5bc99]{display:flex;flex-direction:column;gap:4px;min-width:0}.ff-makeup-current span[data-v-9bd5bc99]{color:#a1a1aa;font-size:12px}.ff-makeup-current strong[data-v-9bd5bc99]{color:#18181b;font-size:15px;font-weight:700}:root[data-theme=dark] .ff-makeup-current strong[data-v-9bd5bc99]{color:#f4f4f5}.ff-makeup-controls[data-v-9bd5bc99]{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-left:auto}.ff-makeup-menu[data-v-9bd5bc99]{position:relative}.ff-makeup-pill[data-v-9bd5bc99]{height:40px;padding:0 12px;border:0;border-radius:12px;background:#f4f4f5;color:#18181b;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;cursor:pointer}.ff-makeup-pill.is-model[data-v-9bd5bc99]{max-width:180px;font-weight:500}.ff-makeup-pill.is-model>span[data-v-9bd5bc99]{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-makeup-pill[data-v-9bd5bc99]:hover{background:#ececf0}:root[data-theme=dark] .ff-makeup-pill[data-v-9bd5bc99]{background:var(--ff-canvas-panel-hover);color:#f4f4f5}.ff-makeup-drop[data-v-9bd5bc99]{position:absolute;right:0;bottom:calc(100% + 8px);z-index:5;min-width:88px;padding:8px;border:1px solid #e4e4e7;border-radius:14px;background:#fff;box-shadow:0 14px 32px #0f172a24}.ff-makeup-drop.is-model[data-v-9bd5bc99]{min-width:180px}:root[data-theme=dark] .ff-makeup-drop[data-v-9bd5bc99]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-makeup-drop button[data-v-9bd5bc99]{width:100%;height:36px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;display:flex;align-items:center;gap:8px;font-size:13px;text-align:left;cursor:pointer}.ff-makeup-drop button.active[data-v-9bd5bc99],.ff-makeup-drop button[data-v-9bd5bc99]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-makeup-drop button[data-v-9bd5bc99]{color:#e4e4e7}:root[data-theme=dark] .ff-makeup-drop button.active[data-v-9bd5bc99],:root[data-theme=dark] .ff-makeup-drop button[data-v-9bd5bc99]:hover{background:var(--ff-canvas-panel-hover)}.ff-makeup-generate[data-v-9bd5bc99]{height:42px;padding:0 16px;border:0;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:650;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow)}.ff-makeup-generate[data-v-9bd5bc99]:hover:not(:disabled){filter:brightness(1.06)}.ff-makeup-generate[data-v-9bd5bc99]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.ff-makeup-head[data-v-9bd5bc99] .icon,.ff-makeup-custom-body[data-v-9bd5bc99] .icon,.ff-makeup-check[data-v-9bd5bc99] .icon,.ff-makeup-delete[data-v-9bd5bc99] .icon,.ff-makeup-pill[data-v-9bd5bc99] .icon,.ff-makeup-drop[data-v-9bd5bc99] .icon,.ff-makeup-generate[data-v-9bd5bc99] .icon{width:15px;height:15px;display:inline-flex;flex-shrink:0}.ff-makeup-head[data-v-9bd5bc99] svg,.ff-makeup-custom-body[data-v-9bd5bc99] svg,.ff-makeup-check[data-v-9bd5bc99] svg,.ff-makeup-delete[data-v-9bd5bc99] svg,.ff-makeup-pill[data-v-9bd5bc99] svg,.ff-makeup-drop[data-v-9bd5bc99] svg,.ff-makeup-generate[data-v-9bd5bc99] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-makeup-generate[data-v-9bd5bc99] svg{stroke:#fff;stroke-width:2.1}@media(max-width:720px){.ff-makeup-grid[data-v-9bd5bc99]{grid-template-columns:repeat(3,minmax(0,1fr))}.ff-makeup-foot[data-v-9bd5bc99]{flex-direction:column;align-items:stretch}.ff-makeup-controls[data-v-9bd5bc99]{margin-left:0;justify-content:flex-end}}.ff-portrait-mask[data-v-78e71d57]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:20px;background:#0f121a5c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-portrait-panel[data-v-78e71d57]{width:min(560px,calc(100vw - 28px));height:min(560px,calc(100vh - 40px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8e8ec;border-radius:22px;background:#fff;box-shadow:0 24px 60px #0f172a2e}:root[data-theme=dark] .ff-portrait-panel[data-v-78e71d57]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}.ff-portrait-head[data-v-78e71d57]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 8px;flex-shrink:0}.ff-portrait-head h2[data-v-78e71d57]{margin:0;font-size:18px;font-weight:700;line-height:1.3}.ff-portrait-head p[data-v-78e71d57]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-portrait-head p[data-v-78e71d57]{color:#a1a1aa}.ff-portrait-head>button[data-v-78e71d57]{width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-portrait-head>button[data-v-78e71d57]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-portrait-head>button[data-v-78e71d57]{color:#a1a1aa}:root[data-theme=dark] .ff-portrait-head>button[data-v-78e71d57]:hover{background:var(--ff-canvas-panel-hover)}.ff-portrait-body[data-v-78e71d57]{flex:1;min-height:0;overflow:auto;padding:6px 18px 4px}.ff-portrait-status[data-v-78e71d57]{margin:12px 0;color:#71717a;font-size:13px;text-align:center}.ff-portrait-status.is-error[data-v-78e71d57]{color:#dc2626}.ff-portrait-grid[data-v-78e71d57]{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:8px}.ff-portrait-card[data-v-78e71d57]{position:relative;min-height:88px;padding:0;border:2px solid transparent;border-radius:14px;background:#fafafa;text-align:left;cursor:pointer;overflow:hidden;display:grid;grid-template-columns:72px 1fr;gap:0}.ff-portrait-card[data-v-78e71d57]:hover{background:#f4f4f5}.ff-portrait-card.active[data-v-78e71d57]{border-color:#18181b;background:#f4f4f5}.ff-portrait-thumb[data-v-78e71d57]{display:block;width:72px;height:100%;min-height:88px;background:#e4e4e7}.ff-portrait-thumb img[data-v-78e71d57]{width:100%;height:100%;object-fit:cover;display:block}.ff-portrait-meta[data-v-78e71d57]{display:flex;flex-direction:column;gap:6px;padding:12px 12px 12px 10px;min-width:0}.ff-portrait-meta strong[data-v-78e71d57]{color:#18181b;font-size:14px;font-weight:650;line-height:1.3}.ff-portrait-meta>span[data-v-78e71d57]{color:#71717a;font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.ff-portrait-check[data-v-78e71d57]{position:absolute;top:6px;right:6px;width:20px;height:20px;border-radius:50%;background:#18181b;color:#fff;display:grid;place-items:center}:root[data-theme=dark] .ff-portrait-card[data-v-78e71d57]{background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-portrait-card[data-v-78e71d57]:hover,:root[data-theme=dark] .ff-portrait-card.active[data-v-78e71d57]{background:color-mix(in srgb,#fff 10%,var(--ff-canvas-panel-hover))}:root[data-theme=dark] .ff-portrait-card.active[data-v-78e71d57]{border-color:#f4f4f5}:root[data-theme=dark] .ff-portrait-meta strong[data-v-78e71d57]{color:#f4f4f5}:root[data-theme=dark] .ff-portrait-meta>span[data-v-78e71d57]{color:#a1a1aa}:root[data-theme=dark] .ff-portrait-check[data-v-78e71d57]{background:var(--primary)}.ff-portrait-foot[data-v-78e71d57]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:10px 18px 18px;flex-shrink:0}.ff-portrait-menu[data-v-78e71d57]{position:relative}.ff-portrait-pill[data-v-78e71d57]{height:42px;padding:0 14px;border:0;border-radius:999px;background:#f4f4f5;color:#18181b;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:650;cursor:pointer}.ff-portrait-pill[data-v-78e71d57]:hover{background:#ececf0}:root[data-theme=dark] .ff-portrait-pill[data-v-78e71d57]{background:var(--ff-canvas-panel-hover);color:#f4f4f5}.ff-portrait-drop[data-v-78e71d57]{position:absolute;right:0;bottom:calc(100% + 8px);z-index:5;min-width:88px;padding:8px;border:1px solid #e4e4e7;border-radius:14px;background:#fff;box-shadow:0 14px 32px #0f172a24}:root[data-theme=dark] .ff-portrait-drop[data-v-78e71d57]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-portrait-drop button[data-v-78e71d57]{width:100%;height:36px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;font-size:13px;text-align:left;cursor:pointer}.ff-portrait-drop button.active[data-v-78e71d57],.ff-portrait-drop button[data-v-78e71d57]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-portrait-drop button[data-v-78e71d57]{color:#e4e4e7}:root[data-theme=dark] .ff-portrait-drop button.active[data-v-78e71d57],:root[data-theme=dark] .ff-portrait-drop button[data-v-78e71d57]:hover{background:var(--ff-canvas-panel-hover)}.ff-portrait-generate[data-v-78e71d57]{height:42px;padding:0 18px;border:0;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:650;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow)}.ff-portrait-generate[data-v-78e71d57]:hover:not(:disabled){filter:brightness(1.06)}.ff-portrait-generate[data-v-78e71d57]:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.ff-portrait-head[data-v-78e71d57] .icon,.ff-portrait-check[data-v-78e71d57] .icon,.ff-portrait-pill[data-v-78e71d57] .icon,.ff-portrait-generate[data-v-78e71d57] .icon{width:15px;height:15px;display:inline-flex}.ff-portrait-head[data-v-78e71d57] svg,.ff-portrait-check[data-v-78e71d57] svg,.ff-portrait-pill[data-v-78e71d57] svg,.ff-portrait-generate[data-v-78e71d57] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-portrait-generate[data-v-78e71d57] svg{stroke:#fff;stroke-width:2.1}@media(max-width:520px){.ff-portrait-grid[data-v-78e71d57]{grid-template-columns:1fr}}.ff-character-console[data-v-74dd12c8]{position:fixed;z-index:1100;display:flex;align-items:center;gap:2px;width:max-content;max-width:calc(100vw - 16px);min-height:52px;padding:6px 8px;border:1px solid #e8e8ec;border-radius:18px;background:#fff;box-shadow:0 10px 28px #0f172a1a}.ff-character-tool[data-v-74dd12c8]{height:38px;padding:0 7px;border:0;border-radius:10px;background:transparent;color:#27272a;display:inline-flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap;cursor:pointer}.ff-character-tool[data-v-74dd12c8]:hover,.ff-character-icon-button[data-v-74dd12c8]:hover:not(:disabled){background:#f4f4f5}.ff-character-tool[data-v-74dd12c8]:disabled{opacity:.35;cursor:not-allowed}.ff-character-icon[data-v-74dd12c8]{position:relative;width:17px;height:17px;display:grid;place-items:center}.ff-character-gem[data-v-74dd12c8]{position:absolute;top:-3px;right:-4px;width:7px;height:7px;border-radius:1px;background:var(--primary);transform:rotate(45deg);box-shadow:0 0 0 1.5px #fff}.ff-character-more[data-v-74dd12c8]{position:relative}.ff-character-icon-button[data-v-74dd12c8]{width:36px;height:36px;padding:0;border:0;border-radius:10px;background:transparent;color:#27272a;display:grid;place-items:center;cursor:pointer}.ff-character-icon-button[data-v-74dd12c8]:disabled{opacity:.3;cursor:not-allowed}.ff-character-divider[data-v-74dd12c8]{width:1px;height:24px;margin:0 4px;background:#e4e4e7}.ff-character-menu[data-v-74dd12c8]{position:absolute;top:calc(100% + 10px);right:-42px;z-index:3;width:150px;padding:8px;border:1px solid #e4e4e7;border-radius:16px;background:#fff;box-shadow:0 16px 36px #0f172a24}.ff-character-menu button[data-v-74dd12c8]{width:100%;height:40px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer}.ff-character-menu button[data-v-74dd12c8]:hover{background:#f4f4f5}.ff-character-menu button[data-v-74dd12c8]:disabled{opacity:.35;cursor:not-allowed}.ff-character-tool[data-v-74dd12c8] .icon,.ff-character-icon-button[data-v-74dd12c8] .icon,.ff-character-menu[data-v-74dd12c8] .icon{width:16px;height:16px;display:inline-flex}.ff-character-tool[data-v-74dd12c8] svg,.ff-character-icon-button[data-v-74dd12c8] svg,.ff-character-menu[data-v-74dd12c8] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}:root[data-theme=dark] .ff-character-console[data-v-74dd12c8],:root[data-theme=dark] .ff-character-menu[data-v-74dd12c8]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}:root[data-theme=dark] .ff-character-tool[data-v-74dd12c8],:root[data-theme=dark] .ff-character-icon-button[data-v-74dd12c8],:root[data-theme=dark] .ff-character-menu button[data-v-74dd12c8]{color:var(--ff-node-console-fg)}:root[data-theme=dark] .ff-character-tool[data-v-74dd12c8]:disabled,:root[data-theme=dark] .ff-character-icon-button[data-v-74dd12c8]:disabled,:root[data-theme=dark] .ff-character-menu button[data-v-74dd12c8]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}:root[data-theme=dark] .ff-character-tool[data-v-74dd12c8]:hover:not(:disabled),:root[data-theme=dark] .ff-character-icon-button[data-v-74dd12c8]:hover:not(:disabled),:root[data-theme=dark] .ff-character-menu button[data-v-74dd12c8]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}:root[data-theme=dark] .ff-character-gem[data-v-74dd12c8]{box-shadow:0 0 0 1.5px var(--ff-canvas-panel)}.ff-scene-console[data-v-a96fcf08]{position:fixed;z-index:1100;display:flex;align-items:center;gap:3px;width:max-content;max-width:calc(100vw - 16px);min-height:52px;padding:6px 8px;border:1px solid #e8e8ec;border-radius:18px;background:#fff;box-shadow:0 10px 28px #0f172a1a}.ff-scene-tool[data-v-a96fcf08]{height:38px;padding:0 9px;border:0;border-radius:10px;background:transparent;color:#27272a;display:inline-flex;align-items:center;gap:6px;font-size:13px;white-space:nowrap;cursor:pointer}.ff-scene-tool[data-v-a96fcf08]:hover,.ff-scene-icon-button[data-v-a96fcf08]:hover:not(:disabled){background:#f4f4f5}.ff-scene-tool[data-v-a96fcf08]:disabled{opacity:.35;cursor:not-allowed}.ff-scene-tool-icon[data-v-a96fcf08]{position:relative;width:17px;height:17px;display:grid;place-items:center}.ff-scene-gem[data-v-a96fcf08]{position:absolute;top:-3px;right:-4px;width:7px;height:7px;border-radius:1px;background:var(--primary);transform:rotate(45deg);box-shadow:0 0 0 1.5px #fff}.ff-scene-more[data-v-a96fcf08]{position:relative}.ff-scene-icon-button[data-v-a96fcf08]{width:36px;height:36px;padding:0;border:0;border-radius:10px;background:transparent;color:#27272a;display:grid;place-items:center;cursor:pointer}.ff-scene-icon-button[data-v-a96fcf08]:disabled{opacity:.3;cursor:not-allowed}.ff-scene-divider[data-v-a96fcf08]{width:1px;height:24px;margin:0 5px;background:#e4e4e7}.ff-scene-menu[data-v-a96fcf08]{position:absolute;top:calc(100% + 10px);right:-42px;z-index:3;width:150px;padding:8px;border:1px solid #e4e4e7;border-radius:16px;background:#fff;box-shadow:0 16px 36px #0f172a24}.ff-scene-menu button[data-v-a96fcf08]{width:100%;height:40px;padding:0 10px;border:0;border-radius:9px;background:transparent;color:#27272a;display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer}.ff-scene-menu button[data-v-a96fcf08]:hover{background:#f4f4f5}.ff-scene-menu button[data-v-a96fcf08]:disabled{opacity:.35;cursor:not-allowed}.ff-scene-tool[data-v-a96fcf08] .icon,.ff-scene-icon-button[data-v-a96fcf08] .icon,.ff-scene-menu[data-v-a96fcf08] .icon{width:16px;height:16px;display:inline-flex}.ff-scene-tool[data-v-a96fcf08] svg,.ff-scene-icon-button[data-v-a96fcf08] svg,.ff-scene-menu[data-v-a96fcf08] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}:root[data-theme=dark] .ff-scene-console[data-v-a96fcf08],:root[data-theme=dark] .ff-scene-menu[data-v-a96fcf08]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}:root[data-theme=dark] .ff-scene-tool[data-v-a96fcf08],:root[data-theme=dark] .ff-scene-icon-button[data-v-a96fcf08],:root[data-theme=dark] .ff-scene-menu button[data-v-a96fcf08]{color:var(--ff-node-console-fg)}:root[data-theme=dark] .ff-scene-tool[data-v-a96fcf08]:disabled,:root[data-theme=dark] .ff-scene-icon-button[data-v-a96fcf08]:disabled,:root[data-theme=dark] .ff-scene-menu button[data-v-a96fcf08]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}:root[data-theme=dark] .ff-scene-tool[data-v-a96fcf08]:hover:not(:disabled),:root[data-theme=dark] .ff-scene-icon-button[data-v-a96fcf08]:hover:not(:disabled),:root[data-theme=dark] .ff-scene-menu button[data-v-a96fcf08]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-cam-mask[data-v-e7b83a19]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;display:grid;place-items:center;padding:24px;background:#0f121a5c;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-cam-panel[data-v-e7b83a19]{width:min(860px,calc(100vw - 32px));height:min(640px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid #e8e8ec;border-radius:22px;background:#fff;box-shadow:0 24px 60px #0f172a2e}:root[data-theme=dark] .ff-cam-panel[data-v-e7b83a19]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:#f4f4f5}.ff-cam-head[data-v-e7b83a19]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:14px 16px 6px}.ff-cam-head h2[data-v-e7b83a19]{margin:0;font-size:16px;font-weight:700}.ff-cam-head>button[data-v-e7b83a19]{width:32px;height:32px;border:0;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer}.ff-cam-head>button[data-v-e7b83a19]:hover{background:#f4f4f5}:root[data-theme=dark] .ff-cam-head>button[data-v-e7b83a19]{color:#a1a1aa}:root[data-theme=dark] .ff-cam-head>button[data-v-e7b83a19]:hover{background:var(--ff-canvas-panel-hover)}.ff-cam-tabs[data-v-e7b83a19]{display:flex;flex-wrap:wrap;flex-shrink:0;gap:4px;margin:8px 16px 12px;padding:4px;border-radius:14px;background:#f4f4f5}:root[data-theme=dark] .ff-cam-tabs[data-v-e7b83a19]{background:var(--ff-canvas-panel-hover)}.ff-cam-tab[data-v-e7b83a19]{flex:1 1 auto;min-width:88px;height:36px;border:0;border-radius:11px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-cam-tab.active[data-v-e7b83a19]{background:#fff;color:#18181b;font-weight:650;box-shadow:0 4px 12px #0f172a14}:root[data-theme=dark] .ff-cam-tab.active[data-v-e7b83a19]{background:color-mix(in srgb,#fff 10%,var(--ff-canvas-panel-hover));color:#f4f4f5}.ff-cam-body[data-v-e7b83a19]{flex:1 1 auto;min-height:0;overflow:auto;padding:0 16px 16px}.ff-cam-status[data-v-e7b83a19]{margin:8px 0 12px;color:#71717a;font-size:13px;line-height:1.45}.ff-cam-status.is-error[data-v-e7b83a19]{color:#b91c1c}:root[data-theme=dark] .ff-cam-status[data-v-e7b83a19]{color:#a1a1aa}:root[data-theme=dark] .ff-cam-status.is-error[data-v-e7b83a19]{color:#fca5a5}.ff-cam-retry[data-v-e7b83a19]{margin-left:8px;border:0;background:transparent;color:inherit;text-decoration:underline;cursor:pointer;font-size:13px}.ff-cam-grid[data-v-e7b83a19]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start}.ff-cam-card[data-v-e7b83a19]{display:flex;flex-direction:column;gap:8px;min-width:0;padding:0;border:1px solid #e8e8ec;border-radius:14px;background:#fafafa;text-align:left;cursor:pointer;overflow:hidden}.ff-cam-card[data-v-e7b83a19]:hover,.ff-cam-card.active[data-v-e7b83a19]{border-color:#18181b}.ff-cam-card.busy[data-v-e7b83a19]{opacity:.7}.ff-cam-card[data-v-e7b83a19]:disabled{cursor:progress}:root[data-theme=dark] .ff-cam-card[data-v-e7b83a19]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover)}:root[data-theme=dark] .ff-cam-card[data-v-e7b83a19]:hover,:root[data-theme=dark] .ff-cam-card.active[data-v-e7b83a19]{border-color:#f4f4f5}.ff-cam-thumb[data-v-e7b83a19]{display:grid;place-items:center;aspect-ratio:1 / 1;background:#18181b;color:#a1a1aa;overflow:hidden}.ff-cam-thumb video[data-v-e7b83a19]{width:100%;height:100%;object-fit:cover;display:block}.ff-cam-meta[data-v-e7b83a19]{display:flex;flex-direction:column;gap:2px;min-width:0;padding:0 10px 10px}.ff-cam-meta strong[data-v-e7b83a19]{font-size:13px;font-weight:650;color:#18181b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ff-cam-meta small[data-v-e7b83a19]{font-size:12px;line-height:1.4;color:#71717a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}:root[data-theme=dark] .ff-cam-meta strong[data-v-e7b83a19]{color:#f4f4f5}:root[data-theme=dark] .ff-cam-meta small[data-v-e7b83a19]{color:#a1a1aa}.ff-cam-head[data-v-e7b83a19] .icon,.ff-cam-thumb[data-v-e7b83a19] .icon{width:16px;height:16px;display:inline-flex}.ff-cam-head[data-v-e7b83a19] svg,.ff-cam-thumb[data-v-e7b83a19] svg{width:100%;height:100%;fill:none;stroke:currentColor}@media(max-width:720px){.ff-cam-grid[data-v-e7b83a19]{grid-template-columns:repeat(2,minmax(0,1fr))}}[data-v-b13cf27a] .ff-edit-bar.is-video{border-radius:22px;padding:14px 16px 12px;border-color:#ebebef;box-shadow:0 14px 36px #0f172a14;max-width:min(960px,calc(100vw - 16px))}.ff-video-refs[data-v-b13cf27a]{display:flex;flex-wrap:wrap;gap:8px 10px;margin-bottom:8px;max-width:100%}.ff-frame-slot[data-v-b13cf27a]{position:relative;width:56px;flex:0 0 auto}.ff-frame-slot-card[data-v-b13cf27a]{position:relative;box-sizing:border-box;width:56px;height:56px;padding:4px 4px 20px;border-radius:12px;border:1px dashed color-mix(in srgb,var(--text) 22%,transparent);background:color-mix(in srgb,var(--text) 4%,transparent);color:color-mix(in srgb,var(--text) 55%,transparent);overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.ff-frame-slot.uploading .ff-frame-slot-card[data-v-b13cf27a]{opacity:.65}.ff-frame-slot.has-media .ff-frame-slot-card[data-v-b13cf27a]{padding:0;border-style:solid;border-color:color-mix(in srgb,var(--text) 12%,transparent);background:#f4f4f5}:root[data-theme=dark] .ff-frame-slot.has-media .ff-frame-slot-card[data-v-b13cf27a]{background:#2a3140;border-color:#3f4654}.ff-frame-slot-img[data-v-b13cf27a]{width:100%;height:100%;object-fit:cover;display:block}.ff-frame-slot-pic[data-v-b13cf27a]{width:18px;height:18px;display:grid;place-items:center;line-height:0;opacity:.85;margin-top:-6px}.ff-frame-slot-pic[data-v-b13cf27a] .icon{width:18px!important;height:18px!important;display:flex}.ff-frame-slot-pic[data-v-b13cf27a] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.5}.ff-frame-slot-label[data-v-b13cf27a]{font-size:10px;font-weight:500;line-height:1;white-space:nowrap}.ff-frame-slot-icons[data-v-b13cf27a]{position:absolute;left:0;right:0;bottom:3px;display:flex;align-items:center;justify-content:center;gap:2px;z-index:1}.ff-frame-slot.has-media .ff-frame-slot-icons[data-v-b13cf27a]{opacity:0;padding-bottom:2px;background:linear-gradient(transparent,#0000008c);bottom:0;padding-top:10px;transition:opacity .12s ease}.ff-frame-slot.has-media:hover .ff-frame-slot-icons[data-v-b13cf27a]{opacity:1}.ff-frame-ico[data-v-b13cf27a]{width:20px;height:20px;padding:0;border:0;border-radius:6px;background:transparent;color:inherit;display:grid;place-items:center;cursor:pointer}.ff-frame-slot.has-media .ff-frame-ico[data-v-b13cf27a]{color:#fff}.ff-frame-ico[data-v-b13cf27a]:hover:not(:disabled){background:color-mix(in srgb,var(--text) 12%,transparent)}.ff-frame-slot.has-media .ff-frame-ico[data-v-b13cf27a]:hover:not(:disabled){background:#ffffff2e}.ff-frame-ico[data-v-b13cf27a]:disabled{opacity:.45;cursor:wait}.ff-frame-ico[data-v-b13cf27a] .icon{width:14px!important;height:14px!important;display:flex}.ff-frame-ico[data-v-b13cf27a] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-frame-slot>.ff-video-ref-x[data-v-b13cf27a]{top:-5px;right:-5px;z-index:2}.ff-file-hidden[data-v-b13cf27a]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ff-video-ref[data-v-b13cf27a]{display:flex;flex-direction:column;align-items:center;width:52px;flex:0 0 auto}.ff-video-ref-card[data-v-b13cf27a]{position:relative;width:52px;height:52px;border-radius:12px;overflow:hidden;background:#f4f4f5;border:1px solid #e4e4e7}:root[data-theme=dark] .ff-video-ref-card[data-v-b13cf27a]{background:#2a3140;border-color:#3f4654}.ff-video-ref-img[data-v-b13cf27a]{width:100%;height:100%;object-fit:cover;display:block}.ff-video-ref-placeholder[data-v-b13cf27a]{width:100%;height:100%;display:grid;place-items:center;color:#a1a1aa;background:#f4f4f5}:root[data-theme=dark] .ff-video-ref-placeholder[data-v-b13cf27a]{background:#2a3140}.ff-video-ref-placeholder[data-v-b13cf27a] .icon{width:22px;height:22px;display:inline-flex}.ff-video-ref-placeholder[data-v-b13cf27a] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6}.ff-video-ref-x[data-v-b13cf27a]{position:absolute;top:3px;right:3px;width:16px;height:16px;padding:0;border:0;border-radius:999px;background:#18181bb8;color:#fff;font-size:12px;line-height:1;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-video-ref-x[data-v-b13cf27a]:hover{background:#18181beb}.ff-video-ref-at[data-v-b13cf27a]{position:absolute;right:3px;bottom:3px;width:18px;height:18px;padding:0;border:0;border-radius:999px;background:#18181bc7;color:#fff;display:grid;place-items:center;cursor:pointer;z-index:1}.ff-video-ref-at[data-v-b13cf27a]:hover{background:var(--primary)}.ff-video-ref-at[data-v-b13cf27a] .icon{width:11px;height:11px;display:inline-flex}.ff-video-ref-at[data-v-b13cf27a] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2}.ff-prompt-wrap[data-v-b13cf27a]{position:relative;min-width:0}.ff-video-prompt[data-v-b13cf27a]{display:block;width:100%;box-sizing:border-box;min-height:64px;max-height:360px;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:13px;line-height:1.55;padding-right:28px;overflow-y:auto;white-space:pre-wrap;word-break:break-word}.ff-video-prompt[data-empty="1"][data-v-b13cf27a]:before{content:attr(data-placeholder);color:#a1a1aa;pointer-events:none}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin:0 2px;padding:1px 8px 1px 3px;border-radius:8px;border:1px solid #e4e4e7;background:#f4f4f5;color:#18181b;font-size:12px;font-weight:700;line-height:1.4;vertical-align:middle;-webkit-user-select:none;user-select:none;cursor:default}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip.is-previewable{cursor:zoom-in}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip.is-previewable:hover{border-color:#a1a1aa;background:#ececef}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-img{width:18px;height:18px;border-radius:5px;overflow:hidden;flex-shrink:0;background:#e4e4e7}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-img img,.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-img video{width:100%;height:100%;object-fit:cover;display:block}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-ph{width:18px;height:18px;border-radius:5px;display:grid;place-items:center;background:#e4e4e7;color:#a1a1aa;font-size:10px;flex-shrink:0}.ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}:root[data-theme=dark] .ff-video-prompt[data-v-b13cf27a] .ff-mention-chip{border-color:#3f4654;background:#2a3140;color:#f4f4f5}:root[data-theme=dark] .ff-video-prompt[data-v-b13cf27a] .ff-mention-chip.is-previewable:hover{border-color:#636b7c;background:#343c4d}:root[data-theme=dark] .ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-img,:root[data-theme=dark] .ff-video-prompt[data-v-b13cf27a] .ff-mention-chip-ph{background:#3f4654}:root .ff-video-prompt[data-v-b13cf27a] .ff-camera-chip .ff-mention-chip-ph{background:#7ec8ff;color:#fff}:root .ff-video-prompt[data-v-b13cf27a] .ff-camera-chip .ff-mention-chip-ph svg{width:12px;height:12px;fill:none;stroke:currentColor;stroke-width:2}:root .ff-video-prompt[data-v-b13cf27a] .ff-camera-chip .ff-mention-chip-ph svg path,:root .ff-video-prompt[data-v-b13cf27a] .ff-camera-chip .ff-mention-chip-ph svg circle{fill:none;stroke:currentColor}.ff-edit-foot[data-v-b13cf27a]{display:flex;align-items:center;gap:2px;flex-wrap:wrap;margin-top:10px;min-height:40px}.ff-frame-at-hint[data-v-b13cf27a]{margin:4px 0 0;padding:0 2px;font-size:11px;line-height:1.4;color:#b45309}:root[data-theme=dark] .ff-frame-at-hint[data-v-b13cf27a]{color:#fbbf24}.ff-ico[data-v-b13cf27a]{width:32px;height:32px;border:none;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-ico[data-v-b13cf27a]:disabled{opacity:.35;cursor:not-allowed}.ff-ico[data-v-b13cf27a]:disabled:hover{background:transparent}.ff-ico.disabled[data-v-b13cf27a]{opacity:.38;cursor:not-allowed}.ff-ico.disabled[data-v-b13cf27a]:hover{background:transparent}.ff-ico[data-v-b13cf27a]:hover,.ff-ico.open[data-v-b13cf27a],.ff-pill[data-v-b13cf27a]:hover,.ff-pill.open[data-v-b13cf27a]{background:#f4f4f5}.ff-pill-wrap[data-v-b13cf27a]{position:relative}.ff-pill[data-v-b13cf27a]{position:relative;display:inline-flex;align-items:center;gap:4px;max-width:200px;height:32px;padding:0 8px;border:none;border-radius:999px;color:#3f3f46;background:transparent;cursor:pointer;font:inherit}.ff-pill.disabled[data-v-b13cf27a],.ff-pill[data-v-b13cf27a]:disabled{opacity:.4;cursor:not-allowed}.ff-pill.disabled[data-v-b13cf27a]:hover,.ff-pill[data-v-b13cf27a]:disabled:hover{background:transparent}.ff-pill-compact[data-v-b13cf27a]{max-width:148px}.ff-pill-sm[data-v-b13cf27a]{max-width:96px}.ff-pill-text[data-v-b13cf27a]{font-size:12px;font-weight:500;color:#27272a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.ff-pill-sm .ff-pill-text[data-v-b13cf27a]{max-width:64px}.ff-pill[data-v-b13cf27a]>.icon:last-child{width:12px;height:12px;opacity:.55;flex-shrink:0;pointer-events:none}.ff-foot-right[data-v-b13cf27a]{display:inline-flex;align-items:center;gap:4px;margin-left:auto}.ff-ico[data-v-b13cf27a] .icon,.ff-pill[data-v-b13cf27a] .icon,.ff-style-search-btn[data-v-b13cf27a] .icon,.ff-more-item[data-v-b13cf27a] .icon,.ff-model-item[data-v-b13cf27a] .icon,.ff-ratio-item[data-v-b13cf27a] .icon,.ff-simple-item[data-v-b13cf27a] .icon,.ff-style-custom-ico[data-v-b13cf27a] .icon{width:15px;height:15px;display:inline-flex}.ff-ico[data-v-b13cf27a] .icon svg,.ff-pill[data-v-b13cf27a] .icon svg,.ff-style-search-btn[data-v-b13cf27a] .icon svg,.ff-more-item[data-v-b13cf27a] .icon svg,.ff-model-item[data-v-b13cf27a] .icon svg,.ff-ratio-item[data-v-b13cf27a] .icon svg,.ff-simple-item[data-v-b13cf27a] .icon svg,.ff-style-custom-ico[data-v-b13cf27a] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.ff-drop-panel[data-v-b13cf27a]{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;min-width:200px;padding:10px;border-radius:18px;background:var(--ff-canvas-panel);border:1px solid var(--ff-canvas-panel-border);box-shadow:0 16px 40px var(--shadow);color:var(--text)}.ff-drop-title[data-v-b13cf27a]{padding:4px 8px 10px;font-size:13px;font-weight:500;color:var(--text2)}.ff-style-panel[data-v-b13cf27a]{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;width:min(640px,calc(100vw - 32px));max-height:min(420px,60vh);overflow:auto;padding:14px;border-radius:18px;background:var(--ff-canvas-panel);border:1px solid var(--ff-canvas-panel-border);box-shadow:0 18px 48px var(--shadow);color:var(--text)}.ff-style-head[data-v-b13cf27a]{display:flex;align-items:center;gap:10px;margin-bottom:12px}.ff-style-head strong[data-v-b13cf27a]{font-size:15px;font-weight:650;color:var(--text);flex-shrink:0}.ff-style-tabs[data-v-b13cf27a]{display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto}.ff-style-tab[data-v-b13cf27a]{border:1px solid var(--border);background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--text2);border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer;white-space:nowrap}.ff-style-tab.active[data-v-b13cf27a]{background:var(--nav-active);border-color:transparent;color:#fff}.ff-style-search-btn[data-v-b13cf27a]{width:32px;height:32px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--text2);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-style-search[data-v-b13cf27a]{width:100%;box-sizing:border-box;margin-bottom:10px;border:1px solid var(--border);border-radius:10px;padding:8px 10px;font:inherit;font-size:13px;outline:none;background:color-mix(in srgb,var(--card) 55%,transparent);color:var(--text)}.ff-style-grid[data-v-b13cf27a]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ff-style-card[data-v-b13cf27a]{position:relative;aspect-ratio:4 / 3;border:1px solid transparent;border-radius:14px;overflow:hidden;cursor:pointer;padding:0;color:#fff;text-align:center;background:var(--card)}.ff-style-card.active[data-v-b13cf27a]{border-color:var(--nav-active-solid);box-shadow:0 0 0 1px var(--nav-active-solid),0 8px 24px var(--glow)}.ff-style-card.is-custom[data-v-b13cf27a]{background:color-mix(in srgb,var(--card) 80%,transparent);color:var(--text2);border-color:var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:500}.ff-style-card.is-custom.active[data-v-b13cf27a]{color:var(--nav-active-solid)}.ff-style-custom-ico[data-v-b13cf27a]{width:36px;height:36px;border-radius:999px;background:color-mix(in srgb,var(--sidebar-bg) 80%,transparent);border:1px solid var(--border);display:grid;place-items:center;color:inherit}.ff-style-card-label[data-v-b13cf27a]{position:absolute;left:0;right:0;bottom:0;padding:22px 8px 10px;font-size:11px;font-weight:600;line-height:1.3;background:linear-gradient(to top,rgba(0,0,0,.62),transparent)}.ff-style-card.tone-cyber[data-v-b13cf27a]{background:linear-gradient(145deg,#0f172a,var(--primary) 55%,#22d3ee)}.ff-style-card.tone-desert[data-v-b13cf27a]{background:linear-gradient(145deg,#92400e,#f59e0b 50%,#fde68a)}.ff-style-card.tone-palace[data-v-b13cf27a]{background:linear-gradient(145deg,#3b1d1d,#b45309 55%,#fcd34d)}.ff-style-card.tone-noir[data-v-b13cf27a]{background:linear-gradient(145deg,#0c0a09,#334155 60%,#64748b)}.ff-style-card.tone-blossom[data-v-b13cf27a]{background:linear-gradient(145deg,#9d174d,#fda4af 50%,#fce7f3)}.ff-style-card.tone-film[data-v-b13cf27a]{background:linear-gradient(145deg,#57534e,#a8a29e 45%,#f5f5f4)}.ff-style-card.tone-soft[data-v-b13cf27a]{background:linear-gradient(145deg,#9a3412,#fb923c 50%,#fed7aa)}.ff-style-card.tone-mountain[data-v-b13cf27a]{background:linear-gradient(145deg,#1e3a5f,#64748b 50%,#cbd5e1)}.ff-style-card.tone-retro[data-v-b13cf27a]{background:linear-gradient(145deg,#44403c,#a8a29e 40%,#d6d3d1)}.ff-style-card.tone-night[data-v-b13cf27a]{background:linear-gradient(145deg,#111827,#1e3a8a 55%,#f59e0b)}.ff-style-card.tone-neon[data-v-b13cf27a]{background:linear-gradient(145deg,#020617,#db2777 45%,#22d3ee)}.ff-model-panel[data-v-b13cf27a]{width:300px;padding:10px 8px}.ff-model-item[data-v-b13cf27a]{width:100%;display:flex;align-items:flex-start;gap:8px;border:none;border-radius:12px;background:transparent;padding:7px 8px;text-align:left;cursor:pointer;color:var(--text)}.ff-model-item[data-v-b13cf27a]:hover,.ff-model-item.active[data-v-b13cf27a]{background:color-mix(in srgb,var(--nav-active-solid) 14%,transparent)}.ff-model-ico[data-v-b13cf27a]{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--card) 80%,transparent);color:var(--text2);display:grid;place-items:center;flex-shrink:0}.ff-model-body[data-v-b13cf27a]{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ff-model-name[data-v-b13cf27a]{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text);line-height:1.3}.ff-model-body small[data-v-b13cf27a]{font-size:10px;color:var(--text3);line-height:1.25;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:normal;opacity:.85;font-weight:400}.ff-vip[data-v-b13cf27a]{width:9px;height:9px;background:var(--nav-active-solid);transform:rotate(45deg);border-radius:1px;display:inline-block}.ff-model-check[data-v-b13cf27a]{color:var(--nav-active-solid);flex-shrink:0;margin-top:4px}.ff-ratio-panel[data-v-b13cf27a]{min-width:180px;padding:8px}.ff-ratio-item[data-v-b13cf27a]{width:100%;display:flex;align-items:center;gap:10px;border:none;border-radius:12px;background:transparent;padding:10px 12px;font-size:13px;color:var(--text);cursor:pointer;text-align:left}.ff-ratio-item[data-v-b13cf27a]:hover,.ff-ratio-item.active[data-v-b13cf27a]{background:color-mix(in srgb,var(--nav-active-solid) 14%,transparent)}.ff-ratio-item.active[data-v-b13cf27a]{color:var(--nav-active-solid);font-weight:600}.ff-ratio-item[data-v-b13cf27a] .icon{margin-left:auto;opacity:.7}.ff-ratio-ico[data-v-b13cf27a]{width:18px;height:14px;border:1.5px solid currentColor;border-radius:2px;flex-shrink:0;opacity:.75;position:relative}.ff-ratio-ico[data-shape=auto][data-v-b13cf27a]{width:16px;height:14px}.ff-ratio-ico[data-shape=auto][data-v-b13cf27a]:after{content:"";position:absolute;left:2px;right:2px;bottom:2px;height:2px;background:currentColor;opacity:.7}.ff-ratio-ico[data-shape=landscape][data-v-b13cf27a]{width:18px;height:11px}.ff-ratio-ico[data-shape=cinema][data-v-b13cf27a]{width:20px;height:8px}.ff-ratio-ico[data-shape=portrait][data-v-b13cf27a]{width:10px;height:16px}.ff-ratio-ico[data-shape=classic][data-v-b13cf27a]{width:15px;height:12px}.ff-dur-panel[data-v-b13cf27a]{left:auto;right:0;min-width:300px;padding:12px 14px;display:flex;flex-direction:column;gap:10px}.ff-dur-smart[data-v-b13cf27a]{align-self:flex-start;height:28px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--control-bg);color:var(--text2);font-size:12px;font-weight:500;cursor:pointer}.ff-dur-smart[data-v-b13cf27a]:hover{background:var(--control-bg-hover);color:var(--text)}.ff-dur-smart.active[data-v-b13cf27a]{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));background:color-mix(in srgb,var(--accent) 22%,transparent);color:var(--text)}.ff-dur-row[data-v-b13cf27a]{display:grid;grid-template-columns:auto minmax(108px,1fr) auto;align-items:center;gap:12px;min-height:36px}.ff-dur-label[data-v-b13cf27a]{font-size:13px;color:var(--text2);white-space:nowrap}.ff-dur-track[data-v-b13cf27a]{--pct: 0%;position:relative;width:100%;height:20px;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}.ff-dur-rail[data-v-b13cf27a],.ff-dur-fill[data-v-b13cf27a]{position:absolute;left:0;top:50%;height:4px;border-radius:999px;transform:translateY(-50%);pointer-events:none}.ff-dur-rail[data-v-b13cf27a]{right:0;background:color-mix(in srgb,var(--text) 16%,transparent)}.ff-dur-fill[data-v-b13cf27a]{width:var(--pct);background:var(--accent)}.ff-dur-thumb[data-v-b13cf27a]{position:absolute;top:50%;left:var(--pct);width:16px;height:16px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--bg) 50%,transparent),0 2px 6px var(--shadow);transform:translate(-50%,-50%);pointer-events:none}.ff-dur-value[data-v-b13cf27a]{min-width:58px;height:32px;padding:0 10px;border-radius:12px;background:var(--control-bg);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:4px;font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.ff-dur-value span[data-v-b13cf27a]{color:var(--text2)}.ff-simple-panel[data-v-b13cf27a]{min-width:120px;padding:8px}.ff-simple-item[data-v-b13cf27a]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:none;border-radius:12px;background:transparent;padding:10px 12px;font-size:13px;color:var(--text);cursor:pointer}.ff-simple-item[data-v-b13cf27a]:hover,.ff-simple-item.active[data-v-b13cf27a]{background:color-mix(in srgb,var(--nav-active-solid) 14%,transparent)}.ff-more-panel[data-v-b13cf27a]{right:0;left:auto;min-width:200px;padding:8px}.ff-seed-row[data-v-b13cf27a]{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;font-size:13px;color:var(--text)}.ff-seed-row input[data-v-b13cf27a]{width:88px;border:none;outline:none;background:transparent;text-align:right;font:inherit;font-size:12px;color:var(--text3)}.ff-more-item[data-v-b13cf27a]{width:100%;display:flex;align-items:center;gap:8px;border:none;border-radius:12px;background:transparent;padding:10px 12px;font-size:13px;color:var(--text);cursor:pointer}.ff-more-item[data-v-b13cf27a]:hover{background:color-mix(in srgb,var(--nav-active-solid) 14%,transparent)}:root[data-theme=dark] .ff-pill-text[data-v-b13cf27a]{color:#f4f4f5}:root[data-theme=dark] .ff-ico[data-v-b13cf27a],:root[data-theme=dark] .ff-pill[data-v-b13cf27a]{color:#e4e4e7}:root[data-theme=dark] .ff-ico[data-v-b13cf27a]:hover,:root[data-theme=dark] .ff-ico.open[data-v-b13cf27a],:root[data-theme=dark] .ff-pill[data-v-b13cf27a]:hover,:root[data-theme=dark] .ff-pill.open[data-v-b13cf27a]{background:#2a3140}:root[data-theme=dark] .ff-ref[data-v-b13cf27a]{background:#2a3140;border-color:#4b5568}.ff-extract-mask[data-v-50e5a445]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-extract-dialog[data-v-50e5a445]{width:min(520px,calc(100vw - 32px));max-height:min(92vh,860px);overflow:auto;padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-extract-dialog[data-v-50e5a445]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-extract-head[data-v-50e5a445]{margin-bottom:14px}.ff-extract-head h3[data-v-50e5a445]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-extract-head p[data-v-50e5a445]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-extract-head h3[data-v-50e5a445]{color:#f4f4f5}:root[data-theme=dark] .ff-extract-head p[data-v-50e5a445]{color:#a1a1aa}.ff-extract-player[data-v-50e5a445]{margin-bottom:18px}.ff-extract-stage[data-v-50e5a445]{position:relative;border-radius:14px;overflow:hidden;background:#111318;aspect-ratio:16 / 9}.ff-extract-video[data-v-50e5a445]{width:100%;height:100%;object-fit:contain;display:block;background:#000;cursor:pointer}.ff-extract-play[data-v-50e5a445]{position:absolute;right:12px;bottom:12px;width:40px;height:40px;border:none;border-radius:999px;display:grid;place-items:center;padding:0 0 0 1px;cursor:pointer;color:#fff;background:#0f121ab8;box-shadow:0 4px 14px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:transform .15s ease,background .15s ease}.ff-extract-play[data-v-50e5a445]:hover{background:#0f121ae6;transform:scale(1.05)}.ff-extract-play[data-v-50e5a445] .icon{width:16px;height:16px;display:inline-flex}.ff-extract-play[data-v-50e5a445] .icon svg{width:100%;height:100%;fill:currentColor;stroke:none}.ff-extract-timeline[data-v-50e5a445]{display:flex;align-items:center;gap:10px;margin-top:10px}.ff-extract-time[data-v-50e5a445]{flex-shrink:0;min-width:36px;color:#71717a;font-size:12px;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}:root[data-theme=dark] .ff-extract-time[data-v-50e5a445]{color:#a1a1aa}.ff-extract-seek[data-v-50e5a445]{flex:1;min-width:0;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:999px;background:#e4e4e7;cursor:pointer}:root[data-theme=dark] .ff-extract-seek[data-v-50e5a445]{background:#3f4654}.ff-extract-seek[data-v-50e5a445]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid #fff;box-shadow:0 1px 4px #0f172a40;cursor:pointer}.ff-extract-seek[data-v-50e5a445]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--primary);border:2px solid #fff;box-shadow:0 1px 4px #0f172a40;cursor:pointer}.ff-extract-seek[data-v-50e5a445]:disabled{opacity:.45;cursor:not-allowed}.ff-extract-hint[data-v-50e5a445]{margin:8px 0 0;color:#a1a1aa;font-size:12px;line-height:1.4}.ff-extract-body[data-v-50e5a445]{margin-bottom:20px}.ff-extract-label[data-v-50e5a445]{margin-bottom:10px;color:#71717a;font-size:13px;font-weight:500}:root[data-theme=dark] .ff-extract-label[data-v-50e5a445]{color:#a1a1aa}.ff-extract-modes[data-v-50e5a445]{display:flex;flex-wrap:wrap;gap:8px}.ff-extract-mode[data-v-50e5a445]{flex:1 1 auto;min-width:0;height:40px;padding:0 12px;border:1px solid #e4e4e7;border-radius:12px;background:#fff;color:#52525b;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.ff-extract-mode[data-v-50e5a445]:hover:not(.active){background:#f4f4f5;border-color:#d4d4d8}.ff-extract-mode.active[data-v-50e5a445]{border-color:color-mix(in srgb,var(--primary) 55%,#e4e4e7);background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}:root[data-theme=dark] .ff-extract-mode[data-v-50e5a445]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#a1a1aa}:root[data-theme=dark] .ff-extract-mode[data-v-50e5a445]:hover:not(.active){background:#2a3140;border-color:#4b5568}:root[data-theme=dark] .ff-extract-mode.active[data-v-50e5a445]{border-color:color-mix(in srgb,var(--primary-border) 50%,#4b5568);background:color-mix(in srgb,var(--primary-border) 18%,#1e2330);color:#c4b5fd}.ff-extract-foot[data-v-50e5a445]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-extract-cancel[data-v-50e5a445]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-extract-cancel[data-v-50e5a445]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-extract-cancel[data-v-50e5a445]{color:#a1a1aa}:root[data-theme=dark] .ff-extract-cancel[data-v-50e5a445]:hover{background:#2a3140;color:#e4e4e7}.ff-extract-submit[data-v-50e5a445]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-extract-submit[data-v-50e5a445]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-extract-submit[data-v-50e5a445]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-extract-submit[data-v-50e5a445] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-extract-submit[data-v-50e5a445] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-video-hd-mask[data-v-5cd4840a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-video-hd-dialog[data-v-5cd4840a]{width:min(480px,calc(100vw - 32px));padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-video-hd-dialog[data-v-5cd4840a]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-video-hd-head[data-v-5cd4840a]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:20px}.ff-video-hd-head h3[data-v-5cd4840a]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-video-hd-head p[data-v-5cd4840a]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-video-hd-head h3[data-v-5cd4840a]{color:#f4f4f5}:root[data-theme=dark] .ff-video-hd-head p[data-v-5cd4840a]{color:#a1a1aa}.ff-video-hd-body[data-v-5cd4840a]{display:flex;flex-direction:column;gap:18px;margin-bottom:22px}.ff-video-hd-label[data-v-5cd4840a]{margin-bottom:10px;color:#71717a;font-size:13px;font-weight:500}:root[data-theme=dark] .ff-video-hd-label[data-v-5cd4840a]{color:#a1a1aa}.ff-video-hd-options[data-v-5cd4840a]{display:flex;flex-wrap:wrap;gap:8px}.ff-video-hd-opt[data-v-5cd4840a]{flex:1 1 auto;min-width:0;height:40px;padding:0 12px;border:1px solid #e4e4e7;border-radius:12px;background:#fff;color:#52525b;font-size:13px;font-weight:500;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.ff-video-hd-opt[data-v-5cd4840a]:hover:not(.active):not(:disabled){background:#f4f4f5;border-color:#d4d4d8}.ff-video-hd-opt.active[data-v-5cd4840a]{border-color:color-mix(in srgb,var(--primary) 55%,#e4e4e7);background:color-mix(in srgb,var(--primary) 12%,#fff);color:var(--primary);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 18%,transparent)}.ff-video-hd-opt[data-v-5cd4840a]:disabled{opacity:.38;cursor:not-allowed;color:#a1a1aa}:root[data-theme=dark] .ff-video-hd-opt[data-v-5cd4840a]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#a1a1aa}:root[data-theme=dark] .ff-video-hd-opt[data-v-5cd4840a]:hover:not(.active):not(:disabled){background:#2a3140;border-color:#4b5568}:root[data-theme=dark] .ff-video-hd-opt.active[data-v-5cd4840a]{border-color:color-mix(in srgb,var(--primary-border) 50%,#4b5568);background:color-mix(in srgb,var(--primary-border) 18%,#1e2330);color:#c4b5fd}.ff-video-hd-foot[data-v-5cd4840a]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-video-hd-cancel[data-v-5cd4840a]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-video-hd-cancel[data-v-5cd4840a]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-video-hd-cancel[data-v-5cd4840a]{color:#a1a1aa}:root[data-theme=dark] .ff-video-hd-cancel[data-v-5cd4840a]:hover{background:#2a3140;color:#e4e4e7}.ff-video-hd-submit[data-v-5cd4840a]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-video-hd-submit[data-v-5cd4840a]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-video-hd-submit[data-v-5cd4840a]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-video-hd-submit[data-v-5cd4840a] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-video-hd-submit[data-v-5cd4840a] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-clip-mask[data-v-bec61ad6]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:16px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-clip-dialog[data-v-bec61ad6]{width:min(420px,calc(100vw - 32px));max-height:min(88vh,580px);overflow:auto;padding:14px 14px 12px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:16px;background:var(--ff-canvas-panel);box-shadow:0 16px 40px #0f172a2e}:root[data-theme=dark] .ff-clip-dialog[data-v-bec61ad6]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 16px 40px #0000006b}.ff-clip-head[data-v-bec61ad6]{margin-bottom:10px}.ff-clip-head h3[data-v-bec61ad6]{margin:0;color:#18181b;font-size:15px;font-weight:700;line-height:1.3}.ff-clip-head p[data-v-bec61ad6]{margin:4px 0 0;color:#71717a;font-size:12px;line-height:1.4}:root[data-theme=dark] .ff-clip-head h3[data-v-bec61ad6]{color:#f4f4f5}:root[data-theme=dark] .ff-clip-head p[data-v-bec61ad6]{color:#a1a1aa}.ff-clip-preview[data-v-bec61ad6]{position:relative;border-radius:12px;overflow:hidden;background:#111318;height:148px;margin-bottom:10px}.ff-clip-video[data-v-bec61ad6]{width:100%;height:100%;object-fit:contain;display:block;background:#000;cursor:pointer}.ff-clip-play[data-v-bec61ad6]{position:absolute;right:8px;bottom:8px;width:30px;height:30px;border:none;border-radius:999px;display:grid;place-items:center;padding:0 0 0 1px;cursor:pointer;color:#fff;background:#0f121ab8;box-shadow:0 3px 10px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ff-clip-play[data-v-bec61ad6]:hover{background:#0f121ae6}.ff-clip-play[data-v-bec61ad6] .icon{width:13px;height:13px;display:inline-flex}.ff-clip-play[data-v-bec61ad6] .icon svg{width:100%;height:100%;fill:currentColor;stroke:none}.ff-clip-timeline[data-v-bec61ad6]{margin-bottom:12px}.ff-clip-time-row[data-v-bec61ad6]{display:flex;justify-content:space-between;margin-bottom:6px;color:#71717a;font-size:11px;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ff-clip-time-mid[data-v-bec61ad6]{color:var(--primary);font-weight:600}:root[data-theme=dark] .ff-clip-time-row[data-v-bec61ad6]{color:#a1a1aa}.ff-clip-range-meta[data-v-bec61ad6]{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 8px;font-size:12px;font-variant-numeric:tabular-nums}.ff-clip-range-label[data-v-bec61ad6]{font-weight:600;color:#3f3f46;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ff-clip-range-len[data-v-bec61ad6]{font-weight:600;color:var(--primary)}:root[data-theme=dark] .ff-clip-range-label[data-v-bec61ad6]{color:#e4e4e7}.ff-clip-track[data-v-bec61ad6]{position:relative;height:48px;margin-bottom:2px;border-radius:10px;-webkit-user-select:none;user-select:none;touch-action:none;cursor:pointer;overflow:visible;contain:layout style}.ff-clip-track.loading[data-v-bec61ad6]{opacity:.92}.ff-clip-film[data-v-bec61ad6]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;border-radius:10px;overflow:hidden;background:#18181b}.ff-clip-frame[data-v-bec61ad6]{flex:1 0 0;min-width:0;height:100%;background-color:#27272a;background-size:cover;background-position:center;border-right:1px solid rgba(255,255,255,.55)}.ff-clip-frame[data-v-bec61ad6]:last-child{border-right:none}.ff-clip-loading[data-v-bec61ad6]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#a1a1aa;font-size:12px;background:#1f2937;z-index:1}.ff-clip-shade[data-v-bec61ad6]{position:absolute;top:0;bottom:0;z-index:2;background:#0000007a;pointer-events:none}.ff-clip-shade.left[data-v-bec61ad6]{left:0}.ff-clip-shade.right[data-v-bec61ad6]{right:0}.ff-clip-range[data-v-bec61ad6]{position:absolute;top:0;bottom:0;z-index:3;box-sizing:border-box;border:2px solid #fff;border-radius:8px;cursor:grab;box-shadow:0 0 0 1px #0003}.ff-clip-range[data-v-bec61ad6]:active{cursor:grabbing}.ff-clip-duration-badge[data-v-bec61ad6]{position:absolute;left:50%;bottom:-18px;transform:translate(-50%);padding:0 6px;border-radius:999px;background:#fffffff2;color:#27272a;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 2px 6px #0f172a1f;pointer-events:none}:root[data-theme=dark] .ff-clip-duration-badge[data-v-bec61ad6]{background:#e4e4e7;color:#18181b}.ff-clip-handle[data-v-bec61ad6]{position:absolute;top:50%;transform:translateY(-50%);width:8px;height:30px;padding:0;border:none;border-radius:999px;background:#18181b;box-shadow:0 0 0 2px #fff;cursor:ew-resize;z-index:4}.ff-clip-handle.left[data-v-bec61ad6]{left:-4px}.ff-clip-handle.right[data-v-bec61ad6]{right:-4px}.ff-clip-handle[data-v-bec61ad6]:hover{background:#000}.ff-clip-playhead[data-v-bec61ad6]{position:absolute;top:-3px;bottom:-3px;width:2px;margin-left:-1px;background:#fff;z-index:5;cursor:ew-resize;box-shadow:0 0 0 1px #00000026;will-change:left}.ff-clip-playhead-tip[data-v-bec61ad6]{position:absolute;top:-22px;left:50%;transform:translate(-50%);padding:1px 6px;border-radius:6px;background:#fff;color:#18181b;font-size:10px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap;box-shadow:0 3px 10px #0f172a26;pointer-events:none}:root[data-theme=dark] .ff-clip-playhead-tip[data-v-bec61ad6]{background:#f4f4f5}.ff-clip-hint[data-v-bec61ad6]{margin:22px 0 0;color:#a1a1aa;font-size:11px;line-height:1.35}.ff-clip-foot[data-v-bec61ad6]{display:flex;align-items:center;justify-content:flex-end;gap:8px}.ff-clip-cancel[data-v-bec61ad6]{height:34px;padding:0 12px;border:none;border-radius:10px;background:transparent;color:#71717a;font-size:12px;font-weight:500;cursor:pointer}.ff-clip-cancel[data-v-bec61ad6]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-clip-cancel[data-v-bec61ad6]{color:#a1a1aa}:root[data-theme=dark] .ff-clip-cancel[data-v-bec61ad6]:hover{background:#2a3140;color:#e4e4e7}.ff-clip-submit[data-v-bec61ad6]{height:34px;padding:0 14px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;cursor:pointer;box-shadow:0 6px 16px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-clip-submit[data-v-bec61ad6]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-clip-submit[data-v-bec61ad6]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-clip-submit[data-v-bec61ad6] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-clip-submit[data-v-bec61ad6] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-audio-split-mask[data-v-e8270034]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-audio-split-dialog[data-v-e8270034]{width:min(380px,calc(100vw - 32px));padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-audio-split-dialog[data-v-e8270034]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-audio-split-head[data-v-e8270034]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.ff-audio-split-head h3[data-v-e8270034]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-audio-split-head p[data-v-e8270034]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-audio-split-head h3[data-v-e8270034]{color:#f4f4f5}:root[data-theme=dark] .ff-audio-split-head p[data-v-e8270034]{color:#a1a1aa}.ff-audio-split-foot[data-v-e8270034]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-audio-split-cancel[data-v-e8270034]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-audio-split-cancel[data-v-e8270034]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-audio-split-cancel[data-v-e8270034]{color:#a1a1aa}:root[data-theme=dark] .ff-audio-split-cancel[data-v-e8270034]:hover{background:#2a3140;color:#e4e4e7}.ff-audio-split-submit[data-v-e8270034]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-audio-split-submit[data-v-e8270034]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-audio-split-submit[data-v-e8270034]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-audio-split-submit[data-v-e8270034] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-audio-split-submit[data-v-e8270034] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-video-analyze-mask[data-v-5d792447]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:24px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-video-analyze-dialog[data-v-5d792447]{width:min(380px,calc(100vw - 32px));padding:22px 20px 16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:20px;background:var(--ff-canvas-panel);box-shadow:0 22px 56px #0f172a33}:root[data-theme=dark] .ff-video-analyze-dialog[data-v-5d792447]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 22px 56px #00000073}.ff-video-analyze-head[data-v-5d792447]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:28px}.ff-video-analyze-head h3[data-v-5d792447]{margin:0;color:#18181b;font-size:18px;font-weight:700;line-height:1.3}.ff-video-analyze-head p[data-v-5d792447]{margin:8px 0 0;color:#71717a;font-size:13px;line-height:1.5}:root[data-theme=dark] .ff-video-analyze-head h3[data-v-5d792447]{color:#f4f4f5}:root[data-theme=dark] .ff-video-analyze-head p[data-v-5d792447]{color:#a1a1aa}.ff-video-analyze-foot[data-v-5d792447]{display:flex;align-items:center;justify-content:flex-end;gap:10px}.ff-video-analyze-cancel[data-v-5d792447]{height:40px;padding:0 14px;border:none;border-radius:12px;background:transparent;color:#71717a;font-size:13px;font-weight:500;cursor:pointer}.ff-video-analyze-cancel[data-v-5d792447]:hover{background:#f4f4f5;color:#3f3f46}:root[data-theme=dark] .ff-video-analyze-cancel[data-v-5d792447]{color:#a1a1aa}:root[data-theme=dark] .ff-video-analyze-cancel[data-v-5d792447]:hover{background:#2a3140;color:#e4e4e7}.ff-video-analyze-submit[data-v-5d792447]{height:40px;padding:0 16px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,opacity .15s ease}.ff-video-analyze-submit[data-v-5d792447]:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.ff-video-analyze-submit[data-v-5d792447]:disabled{opacity:.55;cursor:not-allowed;transform:none}.ff-video-analyze-submit[data-v-5d792447] .icon{width:15px;height:15px;display:inline-flex;color:#fff}.ff-video-analyze-submit[data-v-5d792447] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.ff-reshoot-mask[data-v-bf906134]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1350;display:grid;place-items:center;padding:16px;background:#0f121a6b;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ff-reshoot-dialog[data-v-bf906134]{width:min(560px,calc(100vw - 24px));max-height:min(90vh,720px);overflow:auto;padding:16px;border:1px solid color-mix(in srgb,var(--primary) 22%,#e4e4e7);border-radius:18px;background:var(--ff-canvas-panel);box-shadow:0 18px 48px #0f172a33}:root[data-theme=dark] .ff-reshoot-dialog[data-v-bf906134]{border-color:color-mix(in srgb,var(--primary-border) 36%,#4b5568);background:var(--ff-canvas-panel);box-shadow:0 18px 48px #00000073}.ff-reshoot-head[data-v-bf906134]{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.ff-reshoot-head h3[data-v-bf906134]{margin:0;font-size:16px;font-weight:700;color:#18181b}.ff-reshoot-head p[data-v-bf906134]{margin:4px 0 0;font-size:12px;color:#71717a;line-height:1.4}:root[data-theme=dark] .ff-reshoot-head h3[data-v-bf906134]{color:#f4f4f5}:root[data-theme=dark] .ff-reshoot-head p[data-v-bf906134]{color:#a1a1aa}.ff-reshoot-close[data-v-bf906134]{width:32px;height:32px;border:none;border-radius:10px;background:transparent;color:#71717a;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-reshoot-close[data-v-bf906134]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-reshoot-close[data-v-bf906134]:hover{background:#2a3140;color:#f4f4f5}.ff-reshoot-close[data-v-bf906134] .icon{width:16px;height:16px;display:inline-flex}.ff-reshoot-close[data-v-bf906134] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-reshoot-top[data-v-bf906134]{margin-bottom:12px}.ff-reshoot-preview[data-v-bf906134]{position:relative;display:flex;align-items:center;justify-content:center;width:min(100%,420px);margin:0 auto 10px;border-radius:12px;overflow:hidden;background:#0f121a;aspect-ratio:16 / 9;max-height:200px}.ff-reshoot-video[data-v-bf906134]{width:100%;height:100%;object-fit:contain;object-position:center center;display:block;margin:0 auto;cursor:pointer;background:#0f121a}.ff-reshoot-play[data-v-bf906134]{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:44px;height:44px;border:none;border-radius:999px;background:#0f121a9e;color:#fff;display:grid;place-items:center;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.ff-reshoot-play[data-v-bf906134]:hover{background:#0f121ac7}.ff-reshoot-play[data-v-bf906134] .icon{width:18px;height:18px;display:inline-flex}.ff-reshoot-play[data-v-bf906134] svg{width:100%;height:100%;fill:currentColor;stroke:none}.ff-reshoot-range-row[data-v-bf906134]{display:flex;align-items:center;gap:10px;margin-bottom:8px;flex-wrap:wrap}.ff-reshoot-range-badge[data-v-bf906134]{display:inline-flex;align-items:center;gap:6px;height:28px;padding:0 10px;border-radius:999px;background:#f4f4f5;color:#3f3f46;font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}:root[data-theme=dark] .ff-reshoot-range-badge[data-v-bf906134]{background:#2a3140;color:#e4e4e7}.ff-reshoot-range-badge[data-v-bf906134] .icon{width:14px;height:14px;display:inline-flex}.ff-reshoot-range-badge[data-v-bf906134] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-reshoot-range-len[data-v-bf906134]{font-size:12px;font-weight:700;color:var(--primary);font-variant-numeric:tabular-nums}.ff-reshoot-range-hint[data-v-bf906134]{font-size:11px;color:#a1a1aa;margin-left:auto}.ff-reshoot-track[data-v-bf906134]{position:relative;height:56px;border-radius:10px;-webkit-user-select:none;user-select:none;touch-action:none;overflow:visible;contain:layout style}.ff-reshoot-track.loading[data-v-bf906134]{opacity:.9}.ff-reshoot-film[data-v-bf906134]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;border-radius:10px;overflow:hidden;background:#18181b}.ff-reshoot-frame[data-v-bf906134]{flex:1 0 0;min-width:0;height:100%;background:#27272a center/cover no-repeat;border-right:1px solid rgba(255,255,255,.45)}.ff-reshoot-frame[data-v-bf906134]:last-child{border-right:none}.ff-reshoot-loading[data-v-bf906134]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#a1a1aa;font-size:12px;background:#1f2937;z-index:1}.ff-reshoot-shade[data-v-bf906134]{position:absolute;top:0;bottom:0;z-index:2;background:#00000080;pointer-events:none}.ff-reshoot-shade.left[data-v-bf906134]{left:0}.ff-reshoot-shade.right[data-v-bf906134]{right:0}.ff-reshoot-range[data-v-bf906134]{position:absolute;top:0;bottom:0;z-index:3;box-sizing:border-box;border:2px solid #fff;border-radius:8px;cursor:grab;box-shadow:0 0 0 1px #0000002e}.ff-reshoot-range[data-v-bf906134]:active{cursor:grabbing}.ff-reshoot-handle[data-v-bf906134]{position:absolute;top:50%;transform:translateY(-50%);width:8px;height:34px;padding:0;border:none;border-radius:999px;background:#18181b;box-shadow:0 0 0 2px #fff;cursor:ew-resize;z-index:4}.ff-reshoot-handle.left[data-v-bf906134]{left:-4px}.ff-reshoot-handle.right[data-v-bf906134]{right:-4px}.ff-reshoot-playhead[data-v-bf906134]{position:absolute;top:-6px;bottom:-4px;width:2px;margin-left:-1px;background:var(--primary);z-index:5;cursor:ew-resize;border-radius:2px;will-change:left;pointer-events:auto}.ff-reshoot-playhead[data-v-bf906134]:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%,-35%);width:8px;height:8px;border-radius:50%;background:var(--primary);box-shadow:0 0 0 2px #fff}.ff-reshoot-editor[data-v-bf906134]{border:1px solid #e4e4e7;border-radius:16px;background:#fafafa;padding:12px 12px 10px}:root[data-theme=dark] .ff-reshoot-editor[data-v-bf906134]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover)}.ff-reshoot-textarea[data-v-bf906134]{width:100%;min-height:96px;border:none;resize:vertical;background:transparent;color:#18181b;font-size:13px;line-height:1.55;outline:none;font-family:inherit}:root[data-theme=dark] .ff-reshoot-textarea[data-v-bf906134]{color:#f4f4f5}.ff-reshoot-textarea[data-v-bf906134]::placeholder{color:#a1a1aa}.ff-reshoot-bar[data-v-bf906134]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;flex-wrap:wrap}.ff-reshoot-bar-left[data-v-bf906134],.ff-reshoot-bar-right[data-v-bf906134]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ff-reshoot-ico[data-v-bf906134]{width:32px;height:32px;border:1px solid #e4e4e7;border-radius:999px;background:#fff;color:#52525b;display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-reshoot-ico[data-v-bf906134]:hover{border-color:color-mix(in srgb,var(--primary) 40%,#e4e4e7);background:color-mix(in srgb,var(--primary) 8%,#fff)}:root[data-theme=dark] .ff-reshoot-ico[data-v-bf906134]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#a1a1aa}.ff-reshoot-ico[data-v-bf906134] .icon{width:14px;height:14px;display:inline-flex}.ff-reshoot-ico[data-v-bf906134] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-reshoot-menu-root[data-v-bf906134]{position:relative}.ff-reshoot-pill[data-v-bf906134]{height:32px;max-width:132px;padding:0 10px;border:1px solid #e4e4e7;border-radius:999px;background:#fff;color:#52525b;font-size:12px;font-weight:500;display:inline-flex;align-items:center;gap:5px;cursor:pointer}.ff-reshoot-pill>span[data-v-bf906134]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-reshoot-pill.open[data-v-bf906134],.ff-reshoot-pill[data-v-bf906134]:hover{border-color:color-mix(in srgb,var(--primary) 40%,#e4e4e7);background:color-mix(in srgb,var(--primary) 8%,#fff)}:root[data-theme=dark] .ff-reshoot-pill[data-v-bf906134]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel-hover);color:#a1a1aa}:root[data-theme=dark] .ff-reshoot-pill.open[data-v-bf906134],:root[data-theme=dark] .ff-reshoot-pill[data-v-bf906134]:hover{border-color:var(--ff-canvas-panel-border);background:color-mix(in srgb,#fff 10%,var(--ff-canvas-panel-hover));color:#e4e4e7}.ff-reshoot-pill[data-v-bf906134] .icon{width:13px;height:13px;display:inline-flex}.ff-reshoot-pill[data-v-bf906134] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8}.ff-reshoot-drop[data-v-bf906134]{position:absolute;left:0;bottom:calc(100% + 6px);z-index:4;min-width:140px;max-height:240px;overflow:auto;padding:6px;border-radius:12px;border:1px solid #e4e4e7;background:#fff;box-shadow:0 10px 28px #0f172a1f;display:flex;flex-direction:column;gap:2px}.ff-reshoot-drop-wide[data-v-bf906134]{min-width:200px}:root[data-theme=dark] .ff-reshoot-drop[data-v-bf906134]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-reshoot-drop button[data-v-bf906134]{height:34px;border:none;border-radius:8px;background:transparent;text-align:left;padding:0 10px;font-size:12px;color:#3f3f46;cursor:pointer}:root[data-theme=dark] .ff-reshoot-drop button[data-v-bf906134]{color:#e4e4e7}.ff-reshoot-drop button[data-v-bf906134]:hover,.ff-reshoot-drop button.active[data-v-bf906134]{background:color-mix(in srgb,var(--primary) 12%,transparent);color:var(--primary)}.ff-reshoot-send[data-v-bf906134]{width:36px;height:36px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--primary-fg);display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 16px var(--ff-action-shadow)}.ff-reshoot-send[data-v-bf906134]:hover:not(:disabled){filter:brightness(1.06)}.ff-reshoot-send[data-v-bf906134]:disabled{opacity:.5;cursor:not-allowed}.ff-reshoot-send[data-v-bf906134] .icon{width:16px;height:16px;display:inline-flex}.ff-reshoot-send[data-v-bf906134] svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2.1}.ff-video-console[data-v-786fcaa6]{position:fixed;z-index:1100;display:flex;align-items:center;gap:8px;min-height:52px;width:max-content;max-width:min(1080px,calc(100vw - 16px));padding:8px 10px;border-radius:16px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 10px 28px #0f172a1a;pointer-events:auto}:root[data-theme=dark] .ff-video-console[data-v-786fcaa6]{border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px #00000073}.ff-console-tools[data-v-786fcaa6],.ff-console-utils[data-v-786fcaa6]{display:flex;align-items:center;gap:2px;min-width:0}.ff-console-divider[data-v-786fcaa6]{width:1px;height:24px;background:#e8e8ec;flex-shrink:0}:root[data-theme=dark] .ff-console-divider[data-v-786fcaa6]{background:#3f4654}.ff-console-tool[data-v-786fcaa6]{position:relative;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:5px;min-width:auto;height:36px;padding:0 8px;border:none;border-radius:12px;background:transparent;color:#3f3f46;cursor:pointer}:root[data-theme=dark] .ff-console-tool[data-v-786fcaa6]{color:var(--ff-node-console-fg)}.ff-console-tool[data-v-786fcaa6]:hover:not(:disabled){background:#f4f4f5}.ff-console-tool[data-v-786fcaa6]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-console-tool[data-v-786fcaa6]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}.ff-console-tool[data-v-786fcaa6]:disabled:hover{background:transparent}:root[data-theme=dark] .ff-console-tool[data-v-786fcaa6]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-tool-icon-wrap[data-v-786fcaa6],.ff-menu-icon-wrap[data-v-786fcaa6]{position:relative;width:18px;height:18px;display:grid;place-items:center;flex-shrink:0}.ff-tool-label[data-v-786fcaa6]{font-size:12px;line-height:1.2;font-weight:500;color:#52525b;white-space:nowrap}:root[data-theme=dark] .ff-tool-label[data-v-786fcaa6]{color:inherit}.ff-console-icon-btn[data-v-786fcaa6]{width:36px;height:36px;border:none;border-radius:10px;background:transparent;color:#3f3f46;display:grid;place-items:center;cursor:pointer}:root[data-theme=dark] .ff-console-icon-btn[data-v-786fcaa6]{color:var(--ff-node-console-fg)}.ff-console-icon-btn[data-v-786fcaa6]:hover:not(:disabled){background:#f4f4f5}:root[data-theme=dark] .ff-console-icon-btn[data-v-786fcaa6]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-console-icon-btn[data-v-786fcaa6]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-console-icon-btn[data-v-786fcaa6]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}.ff-console-tool[data-v-786fcaa6] .icon,.ff-console-icon-btn[data-v-786fcaa6] .icon{width:16px;height:16px;display:inline-flex}.ff-console-tool[data-v-786fcaa6] .icon svg,.ff-console-icon-btn[data-v-786fcaa6] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-diamond[data-v-786fcaa6]{position:absolute;top:-3px;right:-5px;width:7px;height:7px;background:var(--primary);transform:rotate(45deg);border-radius:1px;box-shadow:0 0 0 1.5px #fff}:root[data-theme=dark] .ff-diamond[data-v-786fcaa6]{box-shadow:0 0 0 1.5px var(--ff-canvas-panel)}.ff-more[data-v-786fcaa6]{position:relative}.ff-more-menu[data-v-786fcaa6]{position:absolute;top:calc(100% + 6px);right:0;z-index:2;min-width:168px;padding:8px;border-radius:16px;border:1px solid #e8e8ec;background:#fff;box-shadow:0 12px 28px #0f172a1f;display:flex;flex-direction:column;gap:2px}:root[data-theme=dark] .ff-more-menu[data-v-786fcaa6]{border-color:var(--ff-canvas-panel-border);background:var(--ff-canvas-panel)}.ff-more-menu button[data-v-786fcaa6]{width:100%;height:40px;border:none;border-radius:9px;background:transparent;display:flex;align-items:center;gap:10px;text-align:left;padding:0 10px;font-size:13px;color:#3f3f46;cursor:pointer}:root[data-theme=dark] .ff-more-menu button[data-v-786fcaa6]{color:var(--ff-node-console-fg)}.ff-more-menu button[data-v-786fcaa6]:hover:not(:disabled){background:#f4f4f5}.ff-more-menu button[data-v-786fcaa6]:disabled{opacity:.35;cursor:not-allowed}:root[data-theme=dark] .ff-more-menu button[data-v-786fcaa6]:disabled{color:var(--ff-node-console-fg-muted);opacity:1}:root[data-theme=dark] .ff-more-menu button[data-v-786fcaa6]:hover:not(:disabled){background:var(--ff-canvas-panel-hover);color:var(--ff-node-console-fg)}.ff-more-menu[data-v-786fcaa6] .icon{width:16px;height:16px;flex-shrink:0;display:inline-flex}.ff-more-menu[data-v-786fcaa6] svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ff-video-fs-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:grid;place-items:center;padding:32px;background:#090a0fb8}.ff-video-fs-player{max-width:min(960px,100%);max-height:90vh;border-radius:16px;background:#000;box-shadow:0 24px 64px #00000059}.ff-video-fs-close{position:absolute;top:20px;right:20px;width:40px;height:40px;border:none;border-radius:12px;background:#fff;color:#18181b;display:grid;place-items:center;cursor:pointer}.ff-video-fs-close .icon{width:18px;height:18px;display:inline-flex}.ff-video-fs-close .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.85}.ff-top[data-v-c9b4a202]{position:absolute;top:0;left:0;right:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;pointer-events:none}.ff-top-left-wrap[data-v-c9b4a202],.ff-top-right[data-v-c9b4a202]{display:flex;align-items:center;gap:10px;min-width:0;pointer-events:auto}.ff-top-left[data-v-c9b4a202]{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ff-scope-meta[data-v-c9b4a202]{display:flex;align-items:center;gap:6px;min-width:0;max-width:280px;font-size:12px;color:var(--text2);white-space:nowrap}.ff-scope-project[data-v-c9b4a202]{font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis}.ff-scope-sep[data-v-c9b4a202]{opacity:.5}.ff-ep-root[data-v-c9b4a202]{position:relative}.ff-ep-trigger[data-v-c9b4a202]{max-width:140px}.ff-ep-trigger span[data-v-c9b4a202]{overflow:hidden;text-overflow:ellipsis}.ff-ep-menu[data-v-c9b4a202]{left:0;right:auto;min-width:180px;padding:6px;display:flex;flex-direction:column;gap:2px}.ff-ep-item[data-v-c9b4a202]{border:none;background:transparent;color:var(--text);text-align:left;padding:8px 10px;border-radius:10px;font-size:12px;cursor:pointer}.ff-ep-item[data-v-c9b4a202]:hover,.ff-ep-item.active[data-v-c9b4a202]{background:var(--card)}.ff-brand-name[data-v-c9b4a202]{border:none;background:var(--nav-item-active);padding:0;cursor:pointer;font:inherit;font-size:15px;font-weight:800;letter-spacing:-.03em;white-space:nowrap;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 3px 8px var(--nav-item-shadow));transition:transform .15s ease,filter .15s ease}.ff-brand-name[data-v-c9b4a202]:hover{transform:scale(1.03);filter:drop-shadow(0 4px 12px var(--nav-item-shadow)) brightness(1.06)}.ff-brand-static[data-v-c9b4a202]{cursor:default;pointer-events:none}.ff-return[data-v-c9b4a202]{border-color:color-mix(in srgb,var(--primary) 38%,var(--border));color:var(--primary);font-weight:600}.ff-title[data-v-c9b4a202]{border:none;outline:none;background:transparent;color:var(--text);font-size:14px;font-weight:500;min-width:72px;max-width:200px}.ff-saved[data-v-c9b4a202]{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text3);white-space:nowrap}.ff-saved[data-v-c9b4a202] .icon{width:12px;height:12px;flex-shrink:0}.ff-saved[data-v-c9b4a202] .icon svg{display:block;width:100%;height:100%;stroke-width:2.2}.ff-saved.is-saving[data-v-c9b4a202]{color:var(--text2)}.ff-saved.is-saving .ff-saved-spin[data-v-c9b4a202]{animation:ff-saved-spin-c9b4a202 .7s linear infinite}@keyframes ff-saved-spin-c9b4a202{to{transform:rotate(360deg)}}.ff-ghost[data-v-c9b4a202]{border:none;background:transparent;color:var(--text);width:34px;height:34px;border-radius:10px;cursor:pointer;display:grid;place-items:center}.ff-ghost[data-v-c9b4a202]:hover{background:var(--card)}.ff-chip[data-v-c9b4a202]{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 90%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);color:var(--text);border-radius:999px;padding:7px 12px;font-size:12px;cursor:pointer;max-width:220px}.ff-chip[data-v-c9b4a202]:hover,.ff-chip.open[data-v-c9b4a202]{background:var(--card);border-color:color-mix(in srgb,var(--primary) 40%,var(--border))}.ff-chip-label[data-v-c9b4a202]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-output-json[data-v-c9b4a202]{border-color:color-mix(in srgb,var(--primary) 38%,var(--border));color:var(--primary)}.ff-chip[data-v-c9b4a202] .icon{width:14px;height:14px;flex-shrink:0}.ff-menu-root[data-v-c9b4a202]{position:relative}.ff-pop[data-v-c9b4a202]{position:absolute;top:calc(100% + 8px);right:0;z-index:40;border-radius:16px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 18px 48px var(--shadow);color:var(--text)}.ff-style-pop[data-v-c9b4a202]{width:min(720px,calc(100vw - 24px));max-height:min(480px,70vh);overflow:auto;padding:14px}.ff-style-head[data-v-c9b4a202]{display:flex;align-items:center;gap:10px;margin-bottom:12px}.ff-style-head strong[data-v-c9b4a202]{font-size:15px;font-weight:650;color:var(--text);flex-shrink:0}.ff-style-tabs[data-v-c9b4a202]{display:flex;gap:6px;flex:1;min-width:0;overflow-x:auto}.ff-style-tab[data-v-c9b4a202]{border:1px solid var(--border);background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--text2);border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer;white-space:nowrap}.ff-style-tab.active[data-v-c9b4a202]{background:var(--nav-active);border-color:transparent;color:#fff}.ff-style-search-btn[data-v-c9b4a202]{width:32px;height:32px;border:1px solid var(--border);border-radius:999px;background:color-mix(in srgb,var(--card) 70%,transparent);color:var(--text2);display:grid;place-items:center;cursor:pointer;flex-shrink:0}.ff-style-search-btn.active[data-v-c9b4a202]{border-color:color-mix(in srgb,var(--nav-active-solid) 45%,var(--border));color:var(--nav-active-solid)}.ff-style-search[data-v-c9b4a202]{width:100%;box-sizing:border-box;margin-bottom:10px;border:1px solid var(--border);border-radius:10px;padding:8px 10px;font:inherit;font-size:13px;outline:none;background:color-mix(in srgb,var(--card) 55%,transparent);color:var(--text)}.ff-style-search[data-v-c9b4a202]::placeholder{color:var(--text3)}.ff-style-grid[data-v-c9b4a202]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.ff-style-card[data-v-c9b4a202]{position:relative;aspect-ratio:4 / 3;border:1px solid transparent;border-radius:14px;overflow:hidden;cursor:pointer;padding:0;color:#fff;text-align:center;background:var(--card)}.ff-style-card.active[data-v-c9b4a202]{border-color:var(--nav-active-solid);box-shadow:0 0 0 1px var(--nav-active-solid),0 8px 24px var(--glow)}.ff-style-card.is-custom[data-v-c9b4a202]{background:color-mix(in srgb,var(--card) 80%,transparent);color:var(--text2);border-color:var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;font-size:12px;font-weight:500}.ff-style-card.is-custom.active[data-v-c9b4a202]{color:var(--nav-active-solid);border-color:var(--nav-active-solid)}.ff-style-custom-ico[data-v-c9b4a202]{width:36px;height:36px;border-radius:999px;background:color-mix(in srgb,var(--sidebar-bg) 80%,transparent);border:1px solid var(--border);display:grid;place-items:center;color:inherit}.ff-style-card-label[data-v-c9b4a202]{position:absolute;left:0;right:0;bottom:0;padding:22px 8px 10px;font-size:11px;font-weight:600;line-height:1.3;background:linear-gradient(to top,rgba(0,0,0,.62),transparent)}.ff-style-check[data-v-c9b4a202]{position:absolute;top:8px;right:8px;width:22px;height:22px;border-radius:999px;background:var(--nav-active);display:grid;place-items:center;color:#fff}.ff-style-check[data-v-c9b4a202] .icon{width:12px;height:12px}.ff-style-card.tone-cyber[data-v-c9b4a202]{background:linear-gradient(145deg,#0f172a,var(--primary) 55%,#22d3ee)}.ff-style-card.tone-desert[data-v-c9b4a202]{background:linear-gradient(145deg,#92400e,#f59e0b 50%,#fde68a)}.ff-style-card.tone-palace[data-v-c9b4a202]{background:linear-gradient(145deg,#3b1d1d,#b45309 55%,#fcd34d)}.ff-style-card.tone-noir[data-v-c9b4a202]{background:linear-gradient(145deg,#0c0a09,#334155 60%,#64748b)}.ff-style-card.tone-blossom[data-v-c9b4a202]{background:linear-gradient(145deg,#9d174d,#fda4af 50%,#fce7f3)}.ff-style-card.tone-film[data-v-c9b4a202]{background:linear-gradient(145deg,#57534e,#a8a29e 45%,#f5f5f4)}.ff-style-card.tone-soft[data-v-c9b4a202]{background:linear-gradient(145deg,#9a3412,#fb923c 50%,#fed7aa)}.ff-style-card.tone-mountain[data-v-c9b4a202]{background:linear-gradient(145deg,#1e3a5f,#64748b 50%,#cbd5e1)}.ff-style-card.tone-retro[data-v-c9b4a202]{background:linear-gradient(145deg,#44403c,#a8a29e 40%,#d6d3d1)}.ff-style-card.tone-night[data-v-c9b4a202]{background:linear-gradient(145deg,#111827,#1e3a8a 55%,#f59e0b)}.ff-style-card.tone-neon[data-v-c9b4a202]{background:linear-gradient(145deg,#020617,#db2777 45%,#22d3ee)}.ff-ratio-pop[data-v-c9b4a202]{min-width:200px;padding:8px}.ff-ratio-item[data-v-c9b4a202]{width:100%;display:flex;align-items:center;gap:10px;border:none;border-radius:12px;background:transparent;padding:10px 12px;font-size:13px;color:var(--text);cursor:pointer;text-align:left}.ff-ratio-item[data-v-c9b4a202]:hover,.ff-ratio-item.active[data-v-c9b4a202]{background:color-mix(in srgb,var(--nav-active-solid) 14%,transparent)}.ff-ratio-item.active[data-v-c9b4a202]{color:var(--nav-active-solid);font-weight:600}.ff-ratio-check[data-v-c9b4a202]{margin-left:auto;opacity:.9}.ff-ratio-check[data-v-c9b4a202] .icon{width:14px;height:14px}.ff-ratio-ico[data-v-c9b4a202]{width:18px;height:14px;border:1.5px solid currentColor;border-radius:2px;flex-shrink:0;opacity:.75}.ff-ratio-ico[data-shape=landscape][data-v-c9b4a202]{width:18px;height:11px}.ff-ratio-ico[data-shape=cinema][data-v-c9b4a202]{width:20px;height:8px}.ff-ratio-ico[data-shape=portrait][data-v-c9b4a202]{width:10px;height:16px}.ff-ratio-ico[data-shape=softPortrait][data-v-c9b4a202]{width:12px;height:16px}.ff-ratio-ico[data-shape=classic][data-v-c9b4a202]{width:15px;height:12px}.ff-ratio-ico[data-shape=square][data-v-c9b4a202]{width:14px;height:14px}.ff-top-right[data-v-c9b4a202] .locale-switcher{width:auto;flex-direction:row;align-items:center;gap:6px}.ff-top-right[data-v-c9b4a202] .locale-switcher-label{display:none}.ff-top-right[data-v-c9b4a202] .locale-switcher-trigger{width:auto;min-width:88px;padding:7px 12px;font-size:12px}.ff-top-right[data-v-c9b4a202] .locale-switcher-menu{left:auto;right:0;min-width:148px}@media(max-width:900px){.ff-style-grid[data-v-c9b4a202]{grid-template-columns:repeat(3,minmax(0,1fr))}}.ff-left-rail[data-v-00a607d9]{position:absolute;left:16px;top:50%;transform:translateY(-50%);z-index:25;display:flex;flex-direction:column;align-items:center;gap:18px;padding:14px 10px 28px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 32px var(--shadow)}.ff-add-main[data-v-00a607d9]{width:44px;height:44px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;color:var(--ff-action-fg);background:var(--ff-action-bg);box-shadow:0 6px 18px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}.ff-add-main[data-v-00a607d9]:hover{filter:brightness(1.08);transform:scale(1.04);box-shadow:0 8px 22px var(--ff-action-shadow)}.ff-add-main[data-v-00a607d9]:active{transform:scale(.96)}.ff-rail-btn[data-v-00a607d9]{width:40px;height:40px;border-radius:50%;border:none;background:transparent;color:var(--text2);cursor:pointer;display:grid;place-items:center}.ff-rail-btn[data-v-00a607d9]:hover,.ff-rail-btn.active[data-v-00a607d9]{background:var(--card);color:var(--text)}.ff-bottom[data-v-97442a8c]{position:absolute;left:16px;right:16px;bottom:16px;z-index:10000;display:flex;align-items:center;justify-content:flex-start;gap:16px;pointer-events:none}.ff-bottom-left[data-v-97442a8c]{display:flex;align-items:center;gap:10px;pointer-events:auto;flex-wrap:wrap;z-index:1}.ff-tools[data-v-97442a8c],.ff-zoom[data-v-97442a8c]{display:flex;align-items:center;gap:2px;padding:4px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--sidebar-bg) 92%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 8px 24px var(--shadow)}.ff-tool-btn[data-v-97442a8c],.ff-zoom-btn[data-v-97442a8c]{width:34px;height:34px;border:none;border-radius:50%;background:transparent;color:#18181b;cursor:pointer;display:grid;place-items:center}:root[data-theme=dark] .ff-tool-btn[data-v-97442a8c],:root[data-theme=dark] .ff-zoom-btn[data-v-97442a8c]{color:#fff}.ff-tool-btn[data-v-97442a8c]:hover,.ff-zoom-btn[data-v-97442a8c]:hover{background:var(--card);color:#18181b}:root[data-theme=dark] .ff-tool-btn[data-v-97442a8c]:hover,:root[data-theme=dark] .ff-zoom-btn[data-v-97442a8c]:hover{color:#fff}.ff-tool-btn.active[data-v-97442a8c]{background:var(--card);color:#18181b}:root[data-theme=dark] .ff-tool-btn.active[data-v-97442a8c]{color:#fff}.ff-zoom-label[data-v-97442a8c]{min-width:52px;border:none;background:transparent;color:#18181b;font-size:12px;font-variant-numeric:tabular-nums;cursor:pointer;padding:6px 4px;border-radius:8px}:root[data-theme=dark] .ff-zoom-label[data-v-97442a8c]{color:#fff}.ff-zoom-label[data-v-97442a8c]:hover{background:var(--card)}.vue-flow{position:relative;width:100%;height:100%;overflow:hidden;z-index:0;direction:ltr}.vue-flow__container{position:absolute;height:100%;width:100%;left:0;top:0}.vue-flow__pane{z-index:1}.vue-flow__pane.draggable{cursor:grab}.vue-flow__pane.selection{cursor:pointer}.vue-flow__pane.dragging{cursor:grabbing}.vue-flow__transformationpane{transform-origin:0 0;z-index:2;pointer-events:none}.vue-flow__viewport{z-index:4;overflow:clip}.vue-flow__selection{z-index:6}.vue-flow__edge-labels{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible{outline:none}.vue-flow .vue-flow__edges{pointer-events:none;overflow:visible}.vue-flow__edge-path,.vue-flow__connection-path{stroke:#b1b1b7;stroke-width:1;fill:none}.vue-flow__edge{pointer-events:visibleStroke;cursor:pointer}.vue-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__edge.animated path.vue-flow__edge-interaction{stroke-dasharray:none;animation:none}.vue-flow__edge.inactive{pointer-events:none}.vue-flow__edge.selected,.vue-flow__edge:focus,.vue-flow__edge:focus-visible{outline:none}.vue-flow__edge.selected .vue-flow__edge-path,.vue-flow__edge:focus .vue-flow__edge-path,.vue-flow__edge:focus-visible .vue-flow__edge-path{stroke:#555}.vue-flow__edge-textwrapper{pointer-events:all}.vue-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.vue-flow__connection{pointer-events:none}.vue-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.vue-flow__connectionline{z-index:1001}.vue-flow__nodes{pointer-events:none;transform-origin:0 0}.vue-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.vue-flow__node.draggable{cursor:grab;pointer-events:all}.vue-flow__node.draggable.dragging{cursor:grabbing}.vue-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.vue-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.vue-flow__nodesselection-rect.dragging{cursor:grabbing}.vue-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px}.vue-flow__handle.connectable{pointer-events:all;cursor:crosshair}.vue-flow__handle-bottom{left:50%;bottom:0;transform:translate(-50%,50%)}.vue-flow__handle-top{left:50%;top:0;transform:translate(-50%,-50%)}.vue-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.vue-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.vue-flow__edgeupdater{cursor:move;pointer-events:all}.vue-flow__panel{position:absolute;z-index:5;margin:15px}.vue-flow__panel.top{top:0}.vue-flow__panel.bottom{bottom:0}.vue-flow__panel.left{left:0}.vue-flow__panel.right{right:0}.vue-flow__panel.center{left:50%;transform:translate(-50%)}@keyframes dashdraw{0%{stroke-dashoffset:10}}:root{--vf-node-bg: #fff;--vf-node-text: #222;--vf-connection-path: #b1b1b7;--vf-handle: #555}.vue-flow__edge.updating .vue-flow__edge-path{stroke:#777}.vue-flow__edge-text{font-size:10px}.vue-flow__edge-textbg{fill:#fff}.vue-flow__connection-path{stroke:var(--vf-connection-path)}.vue-flow__node{cursor:grab}.vue-flow__node.selectable:focus,.vue-flow__node.selectable:focus-visible{outline:none}.vue-flow__node-default,.vue-flow__node-input,.vue-flow__node-output{padding:10px;border-radius:3px;width:150px;font-size:12px;text-align:center;border-width:1px;border-style:solid;color:var(--vf-node-text);background-color:var(--vf-node-bg);border-color:var(--vf-node-color)}.vue-flow__node-default.selected,.vue-flow__node-default.selected:hover,.vue-flow__node-input.selected,.vue-flow__node-input.selected:hover,.vue-flow__node-output.selected,.vue-flow__node-output.selected:hover{box-shadow:0 0 0 .5px var(--vf-box-shadow)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible,.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible,.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid #555}.vue-flow__node-default .vue-flow__handle,.vue-flow__node-input .vue-flow__handle,.vue-flow__node-output .vue-flow__handle{background:var(--vf-handle)}.vue-flow__node-default.selectable:hover,.vue-flow__node-input.selectable:hover,.vue-flow__node-output.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.vue-flow__node-input{--vf-node-color: var(--vf-node-color, #0041d0);--vf-handle: var(--vf-node-color, #0041d0);--vf-box-shadow: var(--vf-node-color, #0041d0);background:var(--vf-node-bg);border-color:var(--vf-node-color, #0041d0)}.vue-flow__node-input.selected,.vue-flow__node-input:focus,.vue-flow__node-input:focus-visible{outline:none;border:1px solid var(--vf-node-color, #0041d0)}.vue-flow__node-default{--vf-handle: var(--vf-node-color, #1a192b);--vf-box-shadow: var(--vf-node-color, #1a192b);background:var(--vf-node-bg);border-color:var(--vf-node-color, #1a192b)}.vue-flow__node-default.selected,.vue-flow__node-default:focus,.vue-flow__node-default:focus-visible{outline:none;border:1px solid var(--vf-node-color, #1a192b)}.vue-flow__node-output{--vf-handle: var(--vf-node-color, #ff0072);--vf-box-shadow: var(--vf-node-color, #ff0072);background:var(--vf-node-bg);border-color:var(--vf-node-color, #ff0072)}.vue-flow__node-output.selected,.vue-flow__node-output:focus,.vue-flow__node-output:focus-visible{outline:none;border:1px solid var(--vf-node-color, #ff0072)}.vue-flow__nodesselection-rect,.vue-flow__selection{background:#0059dc14;border:1px dotted rgba(0,89,220,.8)}.vue-flow__nodesselection-rect:focus,.vue-flow__nodesselection-rect:focus-visible,.vue-flow__selection:focus,.vue-flow__selection:focus-visible{outline:none}.vue-flow__handle{width:6px;height:6px;background:var(--vf-handle);border:1px solid #fff;border-radius:100%}.vue-flow__minimap{background-color:#fff}.vue-flow__minimap.pannable{cursor:grab}.vue-flow__minimap.dragging{cursor:grabbing}.vue-flow__minimap-mask.pannable{cursor:grab}.ff-add-panel[data-v-afa8289a]{position:absolute;left:92px;top:50%;transform:translateY(-50%);width:280px;max-height:min(70vh,560px);overflow:auto;z-index:28;border-radius:16px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:0 16px 40px var(--shadow);padding:12px}.ff-add-head[data-v-afa8289a]{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;padding:0 10px}.ff-add-head h4[data-v-afa8289a]{margin:0;font-size:16px;font-weight:650;color:var(--text)}.ff-icon-btn[data-v-afa8289a]{border:none;background:transparent;color:var(--text2);font-size:22px;cursor:pointer;line-height:1;padding:0 2px}.ff-sec[data-v-afa8289a]{margin:12px 10px 8px;font-size:12px;color:var(--text3);letter-spacing:.02em}.ff-add-list[data-v-afa8289a]{display:flex;flex-direction:column;gap:0}.ff-add-item[data-v-afa8289a]{width:100%;box-sizing:border-box;text-align:left;border:1px solid transparent;background:transparent;color:var(--text);border-radius:10px;padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;gap:4px}.ff-add-item[data-v-afa8289a]:hover{background:color-mix(in srgb,var(--card) 92%,transparent);border-color:var(--border)}.ff-add-item strong[data-v-afa8289a]{font-size:13px}.ff-add-item span[data-v-afa8289a]{font-size:12px;color:var(--text2)}.ff-quick-add[data-v-c99b337d]{position:absolute;left:0;right:0;top:42%;transform:translateY(-50%);z-index:12;display:flex;flex-direction:column;align-items:center;gap:22px;pointer-events:none;width:100%;padding:0 96px;box-sizing:border-box}.ff-quick-grid[data-v-c99b337d]{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;width:100%;pointer-events:auto}.ff-quick-chip[data-v-c99b337d]{position:relative;display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:10px;width:100%;min-width:0;height:64px;padding:0 16px;border-radius:16px;border:1px solid color-mix(in srgb,var(--text) 16%,transparent);background:color-mix(in srgb,var(--sidebar-bg) 38%,transparent);-webkit-backdrop-filter:blur(20px) saturate(1.4);backdrop-filter:blur(20px) saturate(1.4);box-shadow:0 10px 28px color-mix(in srgb,var(--shadow) 55%,transparent),0 2px 8px color-mix(in srgb,var(--shadow) 35%,transparent);color:var(--text);cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.ff-quick-chip[data-v-c99b337d]:hover{transform:translateY(-2px);background:color-mix(in srgb,var(--sidebar-bg) 55%,transparent);border-color:color-mix(in srgb,var(--text) 18%,transparent);box-shadow:0 16px 36px color-mix(in srgb,var(--shadow) 75%,transparent),0 6px 14px color-mix(in srgb,var(--shadow) 45%,transparent)}.ff-quick-chip[data-v-c99b337d]:active{transform:translateY(0);box-shadow:0 6px 16px color-mix(in srgb,var(--shadow) 50%,transparent)}:root[data-theme=dark]{border-color:#ffffff52;background:color-mix(in srgb,var(--sidebar-bg) 52%,transparent);box-shadow:0 10px 28px #00000059,0 2px 8px #0003}:root[data-theme=dark]{border-color:#ffffff6b;background:color-mix(in srgb,var(--sidebar-bg) 68%,transparent)}.ff-quick-icon[data-v-c99b337d]{width:26px;height:26px;display:grid;place-items:center;color:var(--text2);flex-shrink:0}.ff-quick-icon[data-v-c99b337d] .icon{width:24px;height:24px}.ff-quick-label[data-v-c99b337d]{font-size:16px;font-weight:550;letter-spacing:.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ff-badge[data-v-c99b337d]{position:absolute;top:-7px;right:8px;font-size:11px;font-weight:650;line-height:1;padding:4px 7px;border-radius:999px;color:#fff;background:#7c5cfc;box-shadow:0 2px 6px #7c5cfc59}.ff-quick-hint[data-v-c99b337d]{margin:0;display:inline-flex;align-items:center;gap:8px;color:var(--text3);font-size:14px;pointer-events:none}.ff-quick-hint[data-v-c99b337d] .icon{width:15px;height:15px;opacity:.85}@media(max-width:1100px){.ff-quick-add[data-v-c99b337d]{padding:0 72px}.ff-quick-chip[data-v-c99b337d]{height:56px}.ff-quick-label[data-v-c99b337d]{font-size:15px}}@media(max-width:900px){.ff-quick-grid[data-v-c99b337d]{grid-template-columns:repeat(3,minmax(0,1fr))}.ff-quick-add[data-v-c99b337d]{padding:0 48px}}@media(max-width:560px){.ff-quick-grid[data-v-c99b337d]{grid-template-columns:repeat(2,minmax(0,1fr))}.ff-quick-add[data-v-c99b337d]{padding:0 20px}.ff-quick-chip[data-v-c99b337d]{height:52px;gap:8px}.ff-quick-label[data-v-c99b337d]{font-size:14px}}.ff-node-ctx[data-v-1ae464aa]{position:fixed;z-index:4200;min-width:168px;padding:8px;border-radius:14px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px var(--shadow);animation:ff-node-ctx-in-1ae464aa .12s ease}.ff-node-ctx-item[data-v-1ae464aa]{display:block;width:100%;padding:12px 14px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:13px;font-weight:500;line-height:1.4;text-align:left;cursor:pointer}.ff-node-ctx-item[data-v-1ae464aa]:hover:not(:disabled){background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-node-ctx-item[data-v-1ae464aa]:disabled{opacity:.38;cursor:not-allowed}.ff-node-ctx-item.danger[data-v-1ae464aa]{color:var(--danger, #e5484d)}@keyframes ff-node-ctx-in-1ae464aa{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ff-pane-ctx[data-v-35826ea6]{position:fixed;z-index:4200;min-width:168px;padding:8px;border-radius:14px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 32px var(--shadow);animation:ff-pane-ctx-in-35826ea6 .12s ease}.ff-pane-ctx-item[data-v-35826ea6]{display:block;width:100%;padding:12px 14px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:13px;font-weight:500;line-height:1.4;text-align:left;cursor:pointer}.ff-pane-ctx-item[data-v-35826ea6]:hover:not(:disabled){background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-pane-ctx-item[data-v-35826ea6]:disabled{opacity:.38;cursor:not-allowed}@keyframes ff-pane-ctx-in-35826ea6{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.ff-sel-toolbar[data-v-5664130c]{position:absolute;left:0;top:0;z-index:12;pointer-events:none;will-change:transform}.ff-sel-toolbar-inner[data-v-5664130c]{display:inline-flex;align-items:center;gap:2px;padding:5px 6px;border-radius:999px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 10px 28px var(--shadow);pointer-events:auto}.ff-sel-btn[data-v-5664130c]{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:0;border-radius:999px;background:transparent;color:var(--text);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}.ff-sel-btn.icon-only[data-v-5664130c]{width:34px;padding:0;justify-content:center}.ff-sel-btn[data-v-5664130c]:hover:not(:disabled),.ff-sel-btn.active[data-v-5664130c]{background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-sel-btn[data-v-5664130c]:disabled{opacity:.4;cursor:not-allowed}.ff-sel-btn[data-v-5664130c] .icon,.ff-sel-btn[data-v-5664130c] svg{width:16px;height:16px;flex:0 0 auto}.ff-sel-btn[data-v-5664130c] .icon:last-child{width:12px;height:12px;opacity:.65}.ff-sel-btn.icon-only[data-v-5664130c] .icon:last-child{width:16px;height:16px;opacity:1}.ff-sel-arrange[data-v-5664130c]{position:relative}.ff-sel-menu[data-v-5664130c]{position:absolute;left:0;bottom:calc(100% + 8px);min-width:148px;padding:6px;border-radius:12px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 28px var(--shadow);z-index:2}.ff-sel-menu-item[data-v-5664130c]{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.ff-sel-menu-item[data-v-5664130c]:hover{background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-sel-menu-item[data-v-5664130c] .icon,.ff-sel-menu-item[data-v-5664130c] svg{width:16px;height:16px}.ff-sel-connect[data-v-0fd32e29]{position:absolute;left:0;top:0;z-index:13;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:transparent;cursor:crosshair;pointer-events:auto;will-change:transform;touch-action:none}.ff-sel-connect.is-active[data-v-0fd32e29]{pointer-events:none}.ff-sel-connect-face[data-v-0fd32e29]{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1.5px solid #6b7280;background:#2a3140;color:#e5e7eb;font-size:16px;font-weight:500;line-height:1;box-shadow:0 2px 8px #00000059;transition:border-color .12s,background .12s,color .12s,box-shadow .12s}:root:not([data-theme=dark]) .ff-sel-connect-face[data-v-0fd32e29]{border:1px solid #e4e4e7;background:#fff;color:#a1a1aa;box-shadow:0 1px 4px #0f172a0f}.ff-sel-connect:hover .ff-sel-connect-face[data-v-0fd32e29],.ff-sel-connect.is-active .ff-sel-connect-face[data-v-0fd32e29]{border-color:var(--nav-active-solid, #3b82f6);color:var(--nav-active-solid, #3b82f6)}.ff-sel-connect.is-valid .ff-sel-connect-face[data-v-0fd32e29]{border-color:var(--nav-active-solid, #3b82f6);background:color-mix(in srgb,var(--nav-active-solid, #3b82f6) 18%,#2a3140);color:#fff;box-shadow:0 0 0 3px color-mix(in srgb,var(--nav-active-solid, #3b82f6) 35%,transparent)}:root:not([data-theme=dark]) .ff-sel-connect.is-valid .ff-sel-connect-face[data-v-0fd32e29]{background:color-mix(in srgb,var(--nav-active-solid, #3b82f6) 12%,#ffffff);color:var(--nav-active-solid, #3b82f6)}.ff-sel-connect-face[data-v-0fd32e29]:before{content:"";position:absolute;top:-10px;right:-10px;bottom:-10px;left:-10px;border-radius:999px}.ff-sel-connect-face[data-v-0fd32e29]{position:relative}.ff-group-toolbar[data-v-7da84ccc]{position:absolute;left:0;top:0;z-index:13;pointer-events:none;will-change:transform}.ff-group-toolbar-inner[data-v-7da84ccc]{display:inline-flex;align-items:center;gap:2px;padding:5px 6px;border-radius:14px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 10px 28px var(--shadow);pointer-events:auto}.ff-group-color[data-v-7da84ccc]{width:22px;height:22px;margin:0 4px 0 2px;border:1px solid rgba(255,255,255,.35);border-radius:999px;cursor:pointer;flex:0 0 auto}.ff-group-color.is-theme[data-v-7da84ccc]{background:linear-gradient(135deg,#2c2c2c 50%,#fff 50%);border-color:var(--ff-canvas-panel-border)}.ff-group-btn[data-v-7da84ccc]{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:13px;font-weight:500;white-space:nowrap;cursor:pointer}.ff-group-btn.icon-only[data-v-7da84ccc]{width:34px;padding:0;justify-content:center;gap:0}.ff-group-btn.arrange-trigger[data-v-7da84ccc]{width:auto;min-width:34px;padding:0 8px;gap:2px}.ff-group-btn.arrange-trigger[data-v-7da84ccc] .icon:last-child{width:12px;height:12px;opacity:.65}.ff-group-btn.active[data-v-7da84ccc]{background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-group-btn[data-v-7da84ccc]:hover:not(:disabled){background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-group-btn[data-v-7da84ccc]:disabled{opacity:.38;cursor:not-allowed}.ff-group-btn[data-v-7da84ccc] .icon,.ff-group-btn[data-v-7da84ccc] svg{width:15px;height:15px}.ff-group-sep[data-v-7da84ccc]{width:1px;height:18px;margin:0 4px;background:var(--ff-canvas-panel-border)}.ff-group-arrange[data-v-7da84ccc]{position:relative}.ff-group-menu[data-v-7da84ccc]{position:absolute;left:0;bottom:calc(100% + 8px);min-width:148px;padding:6px;border-radius:12px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 12px 28px var(--shadow);z-index:2;pointer-events:auto}.ff-group-menu-item[data-v-7da84ccc]{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:10px;background:transparent;color:var(--text);font-size:13px;font-weight:500;text-align:left;cursor:pointer}.ff-group-menu-item[data-v-7da84ccc]:hover{background:var(--ff-canvas-panel-hover, rgba(120, 130, 150, .12))}.ff-group-menu-item[data-v-7da84ccc] .icon,.ff-group-menu-item[data-v-7da84ccc] svg{width:16px;height:16px}.ff-group-palette[data-v-7da84ccc]{display:grid;grid-template-columns:repeat(6,22px);gap:8px;margin:0 auto 8px;padding:10px;width:max-content;border-radius:14px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);box-shadow:0 10px 28px var(--shadow);pointer-events:auto}.ff-group-swatch[data-v-7da84ccc]{width:22px;height:22px;border:1px solid rgba(255,255,255,.25);border-radius:999px;cursor:pointer;padding:0}.ff-group-swatch.is-reset[data-v-7da84ccc]{background:linear-gradient(135deg,#2c2c2c 50%,#fff 50%);border-color:var(--ff-canvas-panel-border)}.ff-group-swatch.active[data-v-7da84ccc]{outline:2px solid var(--text);outline-offset:2px}.ff-disconnect-edge[data-v-8d4bb891]{--ff-theme: var(--nav-active-solid)}.ff-edge-base[data-v-8d4bb891]{stroke:#94a3b88c;stroke-width:var(--ff-edge-width);stroke-linecap:round;stroke-linejoin:round}.ff-disconnect-edge.hovered .ff-edge-base[data-v-8d4bb891],.ff-disconnect-edge.active .ff-edge-base[data-v-8d4bb891],.ff-disconnect-edge.picked .ff-edge-base[data-v-8d4bb891]{stroke:#94a3b88c;stroke-width:var(--ff-edge-width-active)}.ff-edge-cut-wrap[data-v-8d4bb891]{display:flex;align-items:center;justify-content:center}.ff-edge-cut[data-v-8d4bb891]{width:20px;height:20px;border-radius:999px;border:1px solid color-mix(in srgb,var(--border) 80%,transparent);background:color-mix(in srgb,var(--bg) 92%,white);color:var(--text2);box-shadow:0 4px 12px var(--shadow);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:background .15s,color .15s,border-color .15s,transform .15s}.ff-edge-cut[data-v-8d4bb891] svg{width:10px;height:10px}.ff-edge-cut[data-v-8d4bb891]:hover{background:#ef44441f;border-color:color-mix(in srgb,#f87171 55%,var(--border));color:#ef4444;transform:scale(1.06)}.ff-cluster[data-v-24fe8a64]{position:relative;box-sizing:border-box;width:100%;height:100%;cursor:grab;-webkit-user-select:none;user-select:none}.ff-cluster[data-v-24fe8a64]:active{cursor:grabbing}.ff-cluster-frame[data-v-24fe8a64]{position:absolute;left:0;right:0;top:var(--ff-cluster-title-band, 36px);bottom:0;box-sizing:border-box;border-radius:20px;background:color-mix(in srgb,var(--ff-canvas-panel) 58%,transparent);border:1px solid color-mix(in srgb,#fff 14%,transparent);color:#fff}:root:not([data-theme=dark]) .ff-cluster-frame[data-v-24fe8a64]{color:#18181b;border-color:color-mix(in srgb,#18181b 12%,transparent);background:color-mix(in srgb,var(--ff-canvas-panel) 56%,transparent)}.ff-cluster-title[data-v-24fe8a64]{position:absolute;top:0;left:0;right:32px;margin:0;height:28px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font-size:var(--ff-node-font-size, 19px);font-weight:500;line-height:28px;pointer-events:none}.ff-cluster-delete[data-v-24fe8a64]{position:absolute;top:3px;right:0;z-index:2;pointer-events:auto;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:6px;background:transparent;color:#a1a1aa;cursor:pointer;line-height:1;font-size:1.1em}.ff-cluster-delete[data-v-24fe8a64]:hover{background:#f4f4f5;color:#18181b}:root[data-theme=dark] .ff-cluster-delete[data-v-24fe8a64]:hover{background:#2a3140;color:#f4f4f5}:root:not([data-theme=dark]) .ff-cluster-title[data-v-24fe8a64]{color:#18181b}.ff-cluster-label[data-v-24fe8a64]{position:absolute;left:40px;display:flex;align-items:center;gap:10px;height:32px;color:#e4e4e4;font-size:var(--ff-node-font-size, 19px);font-weight:600;line-height:1;pointer-events:none}:root:not([data-theme=dark]) .ff-cluster-label[data-v-24fe8a64]{color:#18181b}.ff-cluster-add[data-v-24fe8a64]{pointer-events:auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;padding:0;border:1px solid color-mix(in srgb,#fff 36%,transparent);border-radius:8px;background:color-mix(in srgb,#fff 18%,transparent);color:#fff;cursor:pointer}.ff-cluster-add[data-v-24fe8a64]:hover{background:color-mix(in srgb,#fff 32%,transparent);border-color:color-mix(in srgb,#fff 55%,transparent)}:root:not([data-theme=dark]) .ff-cluster-add[data-v-24fe8a64]{color:#18181b;border-color:color-mix(in srgb,#18181b 28%,transparent);background:color-mix(in srgb,#18181b 8%,transparent)}:root:not([data-theme=dark]) .ff-cluster-add[data-v-24fe8a64]:hover{background:color-mix(in srgb,#18181b 14%,transparent);border-color:color-mix(in srgb,#18181b 42%,transparent)}.ff-cluster-add[data-v-24fe8a64] .icon{width:16px;height:16px;display:inline-flex}.ff-cluster-add[data-v-24fe8a64] .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.25}.ff-node-group[data-v-c47c10ad]{position:relative;width:100%;height:100%;border-radius:20px;border:1px solid color-mix(in srgb,var(--ff-group-accent, #fff) 22%,transparent);background:rgb(from var(--ff-group-tint, var(--ff-canvas-panel)) r g b / var(--ff-group-fill-a, .58));box-sizing:border-box;pointer-events:all}.ff-node-group.selected[data-v-c47c10ad]{border-color:color-mix(in srgb,var(--ff-group-accent, #fff) 70%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--ff-group-accent, #fff) 22%,transparent)}:root:not([data-theme=dark]) .ff-node-group[data-v-c47c10ad]{background:rgb(from var(--ff-group-tint, var(--ff-canvas-panel)) r g b / var(--ff-group-fill-a-light, .56));border-color:color-mix(in srgb,var(--ff-group-accent, #18181b) 18%,transparent)}.ff-node-group-title[data-v-c47c10ad]{position:absolute;left:12px;top:-30px;height:28px;font-size:var(--ff-node-font-size, 19px);font-weight:500;line-height:28px;color:#fff;pointer-events:none;white-space:nowrap}:root:not([data-theme=dark]) .ff-node-group-title[data-v-c47c10ad]{color:#18181b}.ff-node-group-note[data-v-c47c10ad]{position:absolute;left:12px;top:100%;margin-top:6px;z-index:2;display:flex;align-items:center;min-height:22px;max-width:calc(100% - 28px);pointer-events:auto}.ff-node-group-note-text[data-v-c47c10ad]{display:block;max-width:100%;font-size:.9em;font-weight:500;line-height:1.3;color:#fff;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text;-webkit-user-select:none;user-select:none}.ff-node-group-note.empty .ff-node-group-note-text[data-v-c47c10ad]{opacity:.45}.ff-node-group-note-input[data-v-c47c10ad]{width:100%;min-width:120px;max-width:280px;margin:0;padding:1px 0;border:none;border-bottom:1px solid color-mix(in srgb,var(--primary, #fff) 55%,transparent);background:transparent;color:#fff;font:inherit;font-size:.9em;font-weight:500;line-height:1.3;outline:none}:root:not([data-theme=dark]) .ff-node-group-note-text[data-v-c47c10ad],:root:not([data-theme=dark]) .ff-node-group-note-input[data-v-c47c10ad]{color:#18181b}.ff-node-group-body[data-v-c47c10ad]{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none}.ff-node-group-handle[data-v-c47c10ad]{position:absolute;padding:0;border:0;border-radius:2px;background:#fff;box-shadow:0 0 0 1px #00000047;cursor:nwse-resize;z-index:3;pointer-events:auto;touch-action:none}.ff-node-group-handle[data-v-c47c10ad]:before{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.ff-node-group-handle.is-ne[data-v-c47c10ad],.ff-node-group-handle.is-sw[data-v-c47c10ad]{cursor:nesw-resize}.ff-node-group-handle.is-nw[data-v-c47c10ad]{left:0;top:0}.ff-node-group-handle.is-ne[data-v-c47c10ad]{left:100%;top:0}.ff-node-group-handle.is-sw[data-v-c47c10ad]{left:0;top:100%}.ff-node-group-handle.is-se[data-v-c47c10ad]{left:100%;top:100%}:root:not([data-theme=dark]) .ff-node-group-handle[data-v-c47c10ad]{background:#0f172a;box-shadow:0 0 0 1px #ffffff80}.ff-canvas-board[data-v-e238cd73]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bg, #f3f4f6);--ff-theme: var(--nav-active-solid)}.ff-pane-upload-input[data-v-e238cd73]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ff-marquee[data-v-e238cd73]{position:absolute;left:0;top:0;z-index:6;pointer-events:none;border:1px dashed rgba(255,255,255,.55);background:#ffffff12;border-radius:4px;box-sizing:border-box;will-change:transform}.ff-multi-connect-layer[data-v-e238cd73]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:11;width:100%;height:100%;overflow:visible;pointer-events:none}.ff-multi-connect-path[data-v-e238cd73]{fill:none}.ff-canvas-board.is-multi-connecting[data-v-e238cd73],.ff-canvas-board.is-multi-connecting[data-v-e238cd73] .vue-flow__node{cursor:crosshair}.ff-marquee.is-dragging[data-v-e238cd73]{border-color:#ffffffb3;background:#ffffff17}:root:not([data-theme=dark]) .ff-marquee[data-v-e238cd73]{border-color:#0f172a61;background:#0f172a0d}:root:not([data-theme=dark]) .ff-marquee.is-dragging[data-v-e238cd73]{border-color:#0f172a80;background:#0f172a12}[data-v-e238cd73] .vue-flow__node.selected{cursor:grab}[data-v-e238cd73] .vue-flow__node.selected.dragging{cursor:grabbing}.ff-flow[data-v-e238cd73]{width:100%;height:100%}[data-v-e238cd73] .vue-flow__viewport{will-change:transform}.ff-canvas-board.is-viewport-moving[data-v-e238cd73] .vue-flow__background{visibility:hidden!important}.ff-canvas-board.is-viewport-moving[data-v-e238cd73] .vue-flow__minimap{opacity:.35;pointer-events:none}[data-v-e238cd73] .vue-flow__edges{z-index:0!important}[data-v-e238cd73] .vue-flow__nodes{z-index:1!important}[data-v-e238cd73] .vue-flow__pane{cursor:default}[data-v-e238cd73] .vue-flow__pane.dragging{cursor:grabbing}.ff-canvas-board.is-ctrl-panning[data-v-e238cd73],.ff-canvas-board.is-ctrl-panning[data-v-e238cd73] .vue-flow__pane,.ff-canvas-board.is-ctrl-panning[data-v-e238cd73] .vue-flow__node{cursor:grabbing!important}[data-v-e238cd73] .vue-flow__minimap{background:var(--ff-canvas-panel)!important;border:1px solid var(--border)!important;border-radius:12px!important;overflow:hidden;box-shadow:0 10px 28px var(--shadow);margin-bottom:72px!important;margin-left:16px!important;z-index:9990!important}[data-v-e238cd73] .vue-flow__node{font-size:var(--ff-node-font-size, 15px);overflow:visible}[data-v-e238cd73] .vue-flow__node-assetCluster,[data-v-e238cd73] .vue-flow__node-storyboardCluster,[data-v-e238cd73] .vue-flow__node-nodeGroup{background:transparent;border:none;padding:0;border-radius:20px;box-shadow:none;overflow:visible}[data-v-e238cd73] .vue-flow__node.ff-asset-cluster-child .ff-handle-plus-anchor .ff-handle-plus-face{width:18px;height:18px;font-size:12px;transform:translate(-50%,-50%) translate(-14px)}[data-v-e238cd73] .vue-flow__node.ff-asset-cluster-child .ff-handle-plus-anchor .ff-handle-plus-face.is-right{transform:translate(-50%,-50%) translate(14px)}[data-v-e238cd73] .vue-flow__node.ff-asset-cluster-child .ff-handle-plus-anchor .ff-handle-plus-face:before{top:-4px;right:-4px;bottom:-4px;left:-4px}:root[data-theme=dark][data-v-e238cd73] .vue-flow__node.ff-asset-cluster-child .ff-kind{color:#6e6e6e}[data-v-e238cd73]:root:not([data-theme=dark]) .vue-flow__node.ff-asset-cluster-child .ff-kind{color:#3f3f46}[data-v-e238cd73] .vue-flow__node.dragging .ff-text-toolbar-wrap{visibility:hidden!important;pointer-events:none!important}[data-v-e238cd73] .vue-flow__connection-path{stroke:var(--ff-theme, var(--nav-active-solid))!important}[data-v-e238cd73] .ff-media-node .vue-flow__handle,[data-v-e238cd73] .ff-image-node .vue-flow__handle,[data-v-e238cd73] .ff-text-node .vue-flow__handle,[data-v-e238cd73] .ff-storyboard .vue-flow__handle{top:50%!important}[data-v-e238cd73] .ff-media-node .vue-flow__handle-left,[data-v-e238cd73] .ff-image-node .vue-flow__handle-left,[data-v-e238cd73] .ff-text-node .vue-flow__handle-left,[data-v-e238cd73] .ff-storyboard .vue-flow__handle-left{left:10px!important}[data-v-e238cd73] .ff-media-node .vue-flow__handle-right,[data-v-e238cd73] .ff-image-node .vue-flow__handle-right,[data-v-e238cd73] .ff-text-node .vue-flow__handle-right,[data-v-e238cd73] .ff-storyboard .vue-flow__handle-right{right:10px!important}[data-v-e238cd73] .vue-flow__handle.ff-handle{width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;border:none!important;background:transparent!important;z-index:5}[data-v-e238cd73] .vue-flow__handle.ff-handle-anchor:before,[data-v-e238cd73] .vue-flow__handle.ff-handle-frame:before{content:"";position:absolute;top:-22px;right:-22px;bottom:-22px;left:-22px;border-radius:999px;background:transparent}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor{width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;border:none!important;background:transparent!important;overflow:visible!important;z-index:6;box-shadow:none!important}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.connecting,[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.valid,[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.invalid{background:transparent!important;box-shadow:none!important}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor .ff-handle-plus-face{position:absolute;left:50%;top:50%;width:28px;height:28px;transform:translate(-50%,-50%) translate(-34px);border-radius:50%;border:1px solid #e4e4e7;background:#fff;color:#a1a1aa;font-size:16px;font-weight:500;display:grid;place-items:center;box-shadow:0 1px 4px #0f172a0f;opacity:0;pointer-events:auto;cursor:crosshair;transition:opacity .15s,border-color .15s,color .15s,background .15s}:root[data-theme=dark][data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor .ff-handle-plus-face{border:1.5px solid #6b7280;background:#2a3140;color:#e5e7eb;box-shadow:0 2px 8px #00000059}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor .ff-handle-plus-face.is-right{transform:translate(-50%,-50%) translate(34px)}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor .ff-handle-plus-face:before{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px;border-radius:999px}[data-v-e238cd73] .vue-flow__node:hover .ff-handle-plus-face,[data-v-e238cd73] .vue-flow__node.selected .ff-handle-plus-face{opacity:1}[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.connecting .ff-handle-plus-face,[data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.valid .ff-handle-plus-face,[data-v-e238cd73] .vue-flow__node.selected .ff-handle-plus-face{border-color:#e4e4e7;background:#fff;color:#a1a1aa;box-shadow:0 1px 4px #0f172a0f}:root[data-theme=dark][data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.connecting .ff-handle-plus-face,:root[data-theme=dark][data-v-e238cd73] .vue-flow__handle.ff-handle-plus-anchor.valid .ff-handle-plus-face,:root[data-theme=dark][data-v-e238cd73] .vue-flow__node.selected .ff-handle-plus-face{border-color:var(--primary-border);background:#2a3140;color:#e5e7eb;box-shadow:0 2px 8px #00000059}[data-v-e238cd73] .vue-flow__handle.ff-handle-frame{background:transparent!important;border:none!important}.ff-shortcuts-panel[data-v-1f3495c4]{position:absolute;left:92px;top:50%;transform:translateY(-50%);z-index:28;width:min(720px,calc(100vw - 120px));max-height:min(78vh,560px);overflow:auto;padding:16px 18px 18px;border-radius:16px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:var(--text);box-shadow:0 18px 48px var(--shadow)}.ff-shortcuts-head[data-v-1f3495c4]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.ff-shortcuts-head h4[data-v-1f3495c4]{margin:0;font-size:15px;font-weight:650}.ff-shortcuts-close[data-v-1f3495c4]{width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text2);font-size:18px;line-height:1;cursor:pointer}.ff-shortcuts-close[data-v-1f3495c4]:hover{background:var(--control-bg-hover);color:var(--text)}.ff-shortcuts-grid[data-v-1f3495c4]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ff-shortcuts-col h5[data-v-1f3495c4]{margin:0 0 10px;color:var(--text);font-size:13px;font-weight:650;letter-spacing:.02em}.ff-shortcuts-col ul[data-v-1f3495c4]{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.ff-shortcuts-col li[data-v-1f3495c4]{display:flex;flex-direction:column;gap:6px}.ff-shortcuts-label[data-v-1f3495c4]{font-size:12px;font-weight:500;color:var(--text2)}.ff-shortcuts-keys[data-v-1f3495c4]{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.ff-shortcuts-keys kbd[data-v-1f3495c4]{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:6px;border:1px solid var(--border);background:color-mix(in srgb,var(--control-bg) 88%,transparent);color:var(--text);font:600 11px/1 ui-sans-serif,system-ui,sans-serif;box-shadow:0 1px color-mix(in srgb,var(--text) 8%,transparent)}.ff-shortcuts-hint[data-v-1f3495c4]{font-size:12px;color:var(--text);line-height:1.35;font-weight:500}@media(max-width:900px){.ff-shortcuts-grid[data-v-1f3495c4]{grid-template-columns:1fr}.ff-shortcuts-panel[data-v-1f3495c4]{width:min(360px,calc(100vw - 110px))}}.ff-asset-drawer[data-v-eace7fc0]{position:absolute;top:16px;bottom:16px;left:92px;z-index:10020;width:300px;display:flex;flex-direction:column;min-height:0;padding:14px 12px 16px;border-radius:18px;border:1px solid var(--ff-canvas-panel-border);background:var(--ff-canvas-panel);color:var(--text);box-shadow:0 18px 48px var(--shadow)}.ff-asset-drawer-head[data-v-eace7fc0]{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.ff-asset-drawer-head h4[data-v-eace7fc0]{margin:0;font-size:15px;font-weight:650}.ff-asset-drawer-close[data-v-eace7fc0]{width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text2);font-size:18px;line-height:1;cursor:pointer}.ff-asset-drawer-close[data-v-eace7fc0]:hover{background:var(--control-bg-hover);color:var(--text)}.ff-asset-drawer-tabs[data-v-eace7fc0]{display:flex;gap:6px;margin:12px 0 8px;overflow-x:auto;flex-shrink:0}.ff-asset-drawer-tab[data-v-eace7fc0]{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;height:30px;padding:0 9px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text2);font:inherit;font-size:12px;cursor:pointer}.ff-asset-drawer-tab[data-v-eace7fc0] .icon{width:13px;height:13px}.ff-asset-drawer-tab.active[data-v-eace7fc0]{border-color:var(--border);background:var(--card);color:var(--text)}.ff-asset-drawer-glyph[data-v-eace7fc0]{font-size:13px;line-height:1}.ff-asset-drawer-toolbar[data-v-eace7fc0]{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-bottom:10px;flex-shrink:0}.ff-asset-drawer-tool-wrap[data-v-eace7fc0]{position:relative}.ff-asset-drawer-tool[data-v-eace7fc0]{width:30px;height:30px;border:none;border-radius:8px;background:transparent;color:var(--text2);cursor:pointer;display:grid;place-items:center}.ff-asset-drawer-tool[data-v-eace7fc0]:hover,.ff-asset-drawer-tool.active[data-v-eace7fc0]{background:var(--card);color:var(--text)}.ff-asset-drawer-tool[data-v-eace7fc0] .icon{width:15px;height:15px}.ff-asset-drawer-pop[data-v-eace7fc0]{position:absolute;top:calc(100% + 6px);right:0;z-index:2;min-width:148px;padding:6px;border-radius:12px;border:1px solid var(--border);background:var(--ff-canvas-panel);box-shadow:0 12px 28px var(--shadow)}.ff-asset-drawer-pop-item[data-v-eace7fc0]{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;height:32px;padding:0 10px;border:none;border-radius:8px;background:transparent;color:var(--text2);font:inherit;font-size:12px;cursor:pointer;text-align:left}.ff-asset-drawer-pop-item[data-v-eace7fc0]:hover,.ff-asset-drawer-pop-item.active[data-v-eace7fc0]{background:var(--card);color:var(--text)}.ff-asset-drawer-pop-item[data-v-eace7fc0] .icon{width:14px;height:14px}.ff-asset-drawer-status[data-v-eace7fc0]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text2);font-size:13px;text-align:center}.ff-asset-drawer-status p[data-v-eace7fc0]{margin:0}.ff-asset-drawer-retry[data-v-eace7fc0]{height:32px;padding:0 14px;border:none;border-radius:999px;background:var(--ff-action-bg);color:var(--ff-action-fg);font:inherit;font-size:13px;cursor:pointer}.ff-asset-drawer-list[data-v-eace7fc0]{flex:1;min-height:0;overflow:auto;align-content:start;padding-right:2px}.ff-asset-drawer-list.is-grid[data-v-eace7fc0]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ff-asset-drawer-list.is-list[data-v-eace7fc0]{display:flex;flex-direction:column;gap:8px}.ff-asset-drawer-card[data-v-eace7fc0]{position:relative;display:flex;min-width:0;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--card);color:inherit;text-align:left;cursor:pointer;overflow:hidden}.ff-asset-drawer-card[data-v-eace7fc0]:has(.ff-asset-drawer-card-pop){overflow:visible;z-index:3}.ff-asset-drawer-list.is-grid .ff-asset-drawer-card[data-v-eace7fc0]{flex-direction:column;gap:6px}.ff-asset-drawer-list.is-list .ff-asset-drawer-card[data-v-eace7fc0]{flex-direction:row;align-items:stretch;gap:10px;padding:0 36px 0 0}.ff-asset-drawer-card[data-v-eace7fc0]:hover{border-color:color-mix(in srgb,var(--nav-active-solid) 45%,var(--border))}.ff-asset-drawer-more-wrap[data-v-eace7fc0]{position:absolute;right:5px;bottom:5px;z-index:4}.ff-asset-drawer-list.is-list .ff-asset-drawer-more-wrap[data-v-eace7fc0]{top:50%;bottom:auto;transform:translateY(-50%)}.ff-asset-drawer-more[data-v-eace7fc0]{width:26px;height:26px;border:none;border-radius:999px;display:grid;place-items:center;background:color-mix(in srgb,var(--ff-canvas-panel) 88%,transparent);color:var(--text);box-shadow:0 4px 12px var(--shadow);cursor:pointer}.ff-asset-drawer-more[data-v-eace7fc0]:hover,.ff-asset-drawer-more.active[data-v-eace7fc0]{background:var(--ff-action-bg);color:var(--ff-action-fg)}.ff-asset-drawer-more[data-v-eace7fc0] .icon{width:14px;height:14px}.ff-asset-drawer-card-pop[data-v-eace7fc0]{position:absolute;right:0;bottom:calc(100% + 6px);min-width:120px;padding:6px;border-radius:12px;border:1px solid var(--border);background:var(--ff-canvas-panel);box-shadow:0 12px 28px var(--shadow)}.ff-asset-drawer-list.is-list .ff-asset-drawer-card-pop[data-v-eace7fc0]{bottom:auto;top:calc(100% + 6px)}.ff-asset-drawer-pop-item.is-danger[data-v-eace7fc0]{color:#ef4444}.ff-asset-drawer-pop-item[data-v-eace7fc0]:disabled{opacity:.55;cursor:not-allowed}.ff-asset-drawer-thumb[data-v-eace7fc0]{position:relative;display:grid;place-items:center;flex-shrink:0;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text3);overflow:hidden}.ff-asset-drawer-list.is-grid .ff-asset-drawer-thumb[data-v-eace7fc0]{aspect-ratio:4 / 3;width:100%}.ff-asset-drawer-list.is-list .ff-asset-drawer-thumb[data-v-eace7fc0]{width:64px;min-height:52px;align-self:stretch}.ff-asset-drawer-thumb img[data-v-eace7fc0],.ff-asset-drawer-thumb video[data-v-eace7fc0]{width:100%;height:100%;object-fit:cover;display:block}.ff-asset-drawer-thumb[data-v-eace7fc0] .icon{width:24px;height:24px}.ff-asset-drawer-meta[data-v-eace7fc0]{min-width:0;display:flex;flex-direction:column;gap:4px}.ff-asset-drawer-list.is-grid .ff-asset-drawer-meta[data-v-eace7fc0]{padding:0 8px 8px}.ff-asset-drawer-list.is-list .ff-asset-drawer-meta[data-v-eace7fc0]{flex:1;justify-content:center;padding:8px 0}.ff-asset-drawer-name[data-v-eace7fc0]{font-size:12px;line-height:1.4;word-break:break-word;overflow-wrap:anywhere;white-space:normal}.ff-asset-drawer-kind[data-v-eace7fc0]{font-size:11px;color:var(--text3)}.ff-asset-drawer-enter-active[data-v-eace7fc0],.ff-asset-drawer-leave-active[data-v-eace7fc0]{transition:transform .22s ease,opacity .22s ease}.ff-asset-drawer-enter-from[data-v-eace7fc0],.ff-asset-drawer-leave-to[data-v-eace7fc0]{opacity:0;transform:translate(-12px)}.ff-node-search[data-v-47f3516b]{position:absolute;top:64px;left:50%;transform:translate(-50%);z-index:35;display:flex;align-items:center;gap:6px;width:min(520px,calc(100vw - 48px));min-height:44px;height:44px;padding:0 10px 0 14px;border-radius:999px;border:1px solid var(--ff-canvas-panel-border, var(--border));background:color-mix(in srgb,var(--ff-canvas-panel, var(--sidebar-bg)) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 14px 40px var(--shadow);color:var(--text);pointer-events:auto;overflow:visible}.ff-node-search-ico[data-v-47f3516b]{display:grid;place-items:center;color:var(--text2);flex-shrink:0}.ff-node-search-ico[data-v-47f3516b] .icon{width:16px;height:16px}.ff-node-search-input[data-v-47f3516b]{flex:1 1 auto;min-width:10em;width:0;height:28px;margin:0;padding:0 4px;border:none;outline:none;background:transparent;color:inherit;font-size:14px;font-weight:500;line-height:28px;overflow:visible}.ff-node-search-input[data-v-47f3516b]::placeholder{color:var(--text3, var(--text2));line-height:28px;opacity:1}.ff-node-search-count[data-v-47f3516b]{flex-shrink:0;min-width:2.5em;text-align:right;font-size:12px;font-variant-numeric:tabular-nums;color:var(--text2)}.ff-node-search-sep[data-v-47f3516b]{width:1px;height:16px;margin:0 2px;background:var(--border);flex-shrink:0}.ff-node-search-btn[data-v-47f3516b]{width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text2);cursor:pointer;display:grid;place-items:center;font-size:16px;line-height:1;flex-shrink:0}.ff-node-search-btn[data-v-47f3516b]:hover:not(:disabled){background:var(--control-bg-hover);color:var(--text)}.ff-node-search-btn[data-v-47f3516b]:disabled{opacity:.35;cursor:default}.ff-node-search-btn[data-v-47f3516b] .icon{width:14px;height:14px}.ff-node-search-chord[data-v-47f3516b]{flex-shrink:0;margin-left:2px;padding:3px 8px;border-radius:8px;border:1px solid var(--border);background:color-mix(in srgb,var(--control-bg) 90%,transparent);color:var(--text2);font:600 11px/1 ui-sans-serif,system-ui,sans-serif;white-space:nowrap}.ff-shell[data-v-6041faa5]{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.ff-shell[data-v-6041faa5] .icon{display:inline-flex;width:18px;height:18px;line-height:0}.ff-shell[data-v-6041faa5] .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ff-canvas-page[data-v-a56015de]{position:relative;height:100vh;height:100dvh;background:var(--bg, #f3f4f6);color:var(--text);overflow:hidden}.ff-loading[data-v-a56015de]{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text2)}:root{--ff-node-font-size: 19px;--ff-canvas-default-zoom: .5}:root[data-theme=dark]{--bg: #090a0f;--bg2: rgba(9, 10, 15, .42);--sidebar-bg: rgba(20, 24, 36, .58);--sidebar-border: rgba(255, 255, 255, .1);--sidebar-shadow: rgba(0, 0, 0, .45);--sidebar-icon: #ffffff;--sidebar-label: #ffffff;--text: #ffffff;--text2: #64748b;--text3: rgba(255, 255, 255, .45);--card: rgba(255, 255, 255, .03);--border: rgba(255, 255, 255, .08);--accent: #10b981;--hot: #f43f5e;--shadow: rgba(0, 0, 0, .4);--primary: #ffffff;--primary-fg: #0a0a0c;--primary-muted: rgba(255, 255, 255, .12);--primary-ring: rgba(255, 255, 255, .24);--primary-border: rgba(255, 255, 255, .45);--control-bg: rgba(255, 255, 255, .04);--control-bg-hover: rgba(255, 255, 255, .07);--control-ring: rgba(255, 255, 255, .18);--nav-active: var(--primary);--nav-active-solid: var(--primary);--nav-item-active: var(--primary);--nav-item-shadow: transparent;--ff-action-bg: var(--primary);--ff-action-fg: var(--primary-fg);--ff-action-shadow: transparent;--ff-credit-fg: var(--text2);--ff-credit-gem: var(--primary);--glow: color-mix(in srgb, var(--primary) 15%, transparent);--particle: color-mix(in srgb, var(--primary) 50%, transparent);--ff-node-console-fg: #ffffff;--ff-node-console-fg-muted: #a1a1aa;--ff-canvas-panel: #2c2c2c;--ff-canvas-panel-border: rgba(255, 255, 255, .08);--ff-canvas-panel-hover: #3a3a3a;--ff-node-surface-shadow: none;--home-send-bg: var(--primary);--home-send-fg: var(--primary-fg);--home-item-bg: var(--control-bg);--home-item-bg-hover: var(--control-bg-hover);--home-item-ring: var(--control-ring)}:root[data-theme=light]{--bg: #f1f5f9;--bg2: rgba(255, 255, 255, .45);--sidebar-bg: rgba(255, 255, 255, .55);--sidebar-border: rgba(15, 23, 42, .08);--sidebar-shadow: rgba(15, 23, 42, .1);--sidebar-icon: #334155;--sidebar-label: #475569;--text: #0f172a;--text2: #64748b;--text3: rgba(15, 23, 42, .55);--card: rgba(255, 255, 255, .42);--border: rgba(15, 23, 42, .08);--accent: #059669;--hot: #db2777;--shadow: rgba(15, 23, 42, .1);--primary: #0f172a;--primary-fg: #ffffff;--primary-muted: rgba(15, 23, 42, .08);--primary-ring: rgba(15, 23, 42, .12);--primary-border: rgba(15, 23, 42, .35);--control-bg: rgba(15, 23, 42, .04);--control-bg-hover: rgba(15, 23, 42, .06);--control-ring: rgba(15, 23, 42, .14);--nav-active: var(--primary);--nav-active-solid: var(--primary);--nav-item-active: var(--primary);--nav-item-shadow: transparent;--ff-action-bg: var(--primary);--ff-action-fg: var(--primary-fg);--ff-action-shadow: transparent;--ff-credit-fg: var(--text2);--ff-credit-gem: var(--primary);--glow: color-mix(in srgb, var(--primary) 10%, transparent);--particle: color-mix(in srgb, var(--primary) 40%, transparent);--home-send-bg: var(--primary);--home-send-fg: var(--primary-fg);--home-item-bg: var(--control-bg);--home-item-bg-hover: var(--control-bg-hover);--home-item-ring: var(--control-ring);--ff-canvas-panel: #ffffff;--ff-canvas-panel-border: #e8e8ec;--ff-canvas-panel-hover: #f4f4f5;--ff-node-surface-shadow: 0 8px 18px rgba(15, 23, 42, .09), 0 1px 3px rgba(15, 23, 42, .045)}.asset-btn.primary,.project-modal-foot .asset-btn.primary,.price-card.featured .pbtn,.community-tab.active,.assets-tab.active,.menu-link.active,.auth-tab.active,.ff-action-send,.ff-add-main,.ff-action-chip.active,.ff-action-chip.is-active,.sp-model-badge.new,.fc-model-badge.new,.fc-mode-icon,.ws-tree-text-btn.primary,.ws-stage-card.primary .asset-btn,.sidebar-main .nav-item.active{color:var(--primary-fg)}.asset-btn.primary .icon,.asset-btn.primary .icon svg,.asset-btn.primary .icon svg path,.asset-btn.primary .icon svg circle,.asset-btn.primary .icon svg line,.ff-action-send .icon,.ff-action-send .icon svg,.ff-action-send .icon svg path,.ff-action-send .icon svg circle,.ff-action-send .icon svg line,.ff-add-main .icon,.ff-add-main .icon svg,.ff-add-main .icon svg path,.ff-add-main .icon svg circle,.ff-add-main .icon svg line,.ff-action-chip.active .icon,.ff-action-chip.is-active .icon,.ff-action-chip.active .icon svg,.ff-action-chip.is-active .icon svg,.ff-action-chip.active .icon svg path,.ff-action-chip.is-active .icon svg path{color:var(--primary-fg);stroke:var(--primary-fg);fill:none}[class^=ff-][class*=-start],[class^=ff-][class*=-go],[class^=ff-][class*=-apply],[class^=ff-][class*=-confirm],[class^=ff-][class*=-send],.ff-script-enter:hover,.ff-script-outline-close:hover,.ff-ref-at,.ff-media-ref-at,.ff-video-ref-at,.ff-mention-item.is-active{color:var(--primary-fg)}[class^=ff-][class*=-start] .icon,[class^=ff-][class*=-start] .icon svg,[class^=ff-][class*=-start] svg,[class^=ff-][class*=-send] .icon,[class^=ff-][class*=-send] svg,.ff-script-enter:hover .icon,.ff-script-enter:hover svg,.ff-script-outline-close:hover .icon svg{color:var(--primary-fg);stroke:var(--primary-fg)}:root{--home-control-radius: 10px}:root[data-theme=dark]{--home-surface: rgba(18, 18, 26, .65);--home-surface-hover: rgba(28, 28, 40, .85);--home-tape-frame: rgba(255, 255, 255, .1);--home-tape-canvas-bg: rgba(255, 255, 255, .025);--home-tape-cover-bg: rgba(255, 255, 255, .04);--home-tape-divider: rgba(255, 255, 255, .14);--home-tape-canvas-tint: rgba(12, 14, 22, .35);--home-tape-cover-tint: rgba(0, 0, 0, .08);--home-accent-fg: #ffffff;--home-accent-grad: linear-gradient(135deg, #ffffff 0%, #a1a1aa 100%);--home-accent-glow: rgba(255, 255, 255, .24);--home-text-sub: #5e5e72;--home-prompt-bg: rgba(255, 255, 255, .035);--home-prompt-focus: rgba(255, 255, 255, .05);--home-send-bg: var(--primary);--home-send-fg: var(--primary-fg);--home-item-bg: var(--control-bg);--home-item-bg-hover: var(--control-bg-hover);--home-item-ring: var(--control-ring);--home-chip: rgba(255, 255, 255, .32);--home-nav-fg: #ffffff;--home-nav-fg-muted: rgba(255, 255, 255, .88);--home-fluid-a: rgba(255, 255, 255, .12);--home-fluid-b: rgba(200, 210, 225, .1);--home-hero-flow: linear-gradient( 90deg, rgba(210, 218, 230, .55) 0%, rgba(9, 10, 15, .15) 22%, rgba(255, 255, 255, .92) 44%, rgba(160, 172, 190, .42) 66%, rgba(245, 247, 250, .78) 88%, rgba(210, 218, 230, .55) 100% )}:root[data-theme=light]{--home-surface: rgba(255, 255, 255, .78);--home-surface-hover: rgba(255, 255, 255, .92);--home-tape-frame: rgba(15, 23, 42, .08);--home-tape-canvas-bg: rgba(15, 23, 42, .03);--home-tape-cover-bg: rgba(15, 23, 42, .05);--home-tape-divider: rgba(15, 23, 42, .12);--home-tape-canvas-tint: rgba(241, 245, 249, .45);--home-tape-cover-tint: rgba(255, 255, 255, .12);--home-accent-fg: #0f172a;--home-accent-grad: linear-gradient(135deg, #0f172a 0%, #475569 100%);--home-accent-glow: rgba(15, 23, 42, .12);--home-text-sub: #64748b;--home-prompt-bg: rgba(255, 255, 255, .55);--home-prompt-focus: rgba(255, 255, 255, .72);--home-send-bg: var(--primary);--home-send-fg: var(--primary-fg);--home-item-bg: var(--control-bg);--home-item-bg-hover: var(--control-bg-hover);--home-item-ring: var(--control-ring);--home-chip: rgba(15, 23, 42, .45);--home-nav-fg: var(--text);--home-nav-fg-muted: var(--text2);--home-fluid-a: rgba(15, 23, 42, .06);--home-fluid-b: rgba(100, 116, 139, .08);--home-hero-flow: linear-gradient( 90deg, rgba(15, 23, 42, .72) 0%, rgba(241, 245, 249, .2) 22%, rgba(15, 23, 42, .95) 44%, rgba(100, 116, 139, .45) 66%, rgba(15, 23, 42, .82) 88%, rgba(15, 23, 42, .72) 100% )}.app--topnav{display:flex;flex-direction:column;padding:0;gap:0;height:100vh;overflow:hidden}.main--topnav{flex:1;min-height:0;height:auto;border:none;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}[data-theme=dark] .app--topnav .main.main--topnav,[data-theme=light] .app--topnav .main.main--topnav{background:transparent;border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.main--topnav .content{overflow:hidden;overflow-x:hidden;background:transparent;height:100%;min-height:0}.main--topnav .panel[data-panel=create],.main--topnav .home-v2{background:transparent}.main--topnav .panel:not([data-panel=create]):not([data-panel=examples]){padding:24px 40px 40px;overflow-y:auto;height:100%;box-sizing:border-box}.main--topnav .panel[data-panel=examples]{padding:0;overflow:hidden;height:100%;background:transparent;border:none;box-shadow:none}.main--topnav .panel[data-panel=create]{padding:0;height:100%;border:none;outline:none;box-shadow:none}.home-bg-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.home-bg-fluid-flow{position:absolute;top:0;left:-20%;width:140%;height:42%;background:linear-gradient(105deg,transparent 0%,transparent 32%,rgba(255,255,255,.02) 42%,rgba(255,255,255,.1) 50%,rgba(200,210,225,.06) 56%,transparent 68%,transparent 100%);background-size:220% 100%;filter:blur(48px);opacity:.55;animation:homeLiquidFlow 10s linear infinite}[data-theme=light] .home-bg-fluid-flow{opacity:.35;background:linear-gradient(105deg,transparent 0%,transparent 32%,rgba(99,102,241,.04) 42%,rgba(139,92,246,.08) 50%,rgba(99,102,241,.04) 56%,transparent 68%,transparent 100%)}.home-bg-fluid-flow.alt{top:8%;height:28%;opacity:.3;filter:blur(56px);animation:homeLiquidFlow 14s linear infinite reverse}.home-bg-fluid-blob{position:absolute;filter:blur(44px);will-change:border-radius,transform;mix-blend-mode:screen}[data-theme=light] .home-bg-fluid-blob{mix-blend-mode:normal}.home-bg-fluid-blob.a{width:22vw;height:18vw;max-width:280px;max-height:240px;top:6%;left:22%;background:var(--home-fluid-a);opacity:.55;animation:homeLiquidMorphA 10s ease-in-out infinite}.home-bg-fluid-blob.b{width:20vw;height:20vw;max-width:260px;max-height:260px;top:10%;right:18%;left:auto;background:var(--home-fluid-b);opacity:.45;animation:homeLiquidMorphB 12s ease-in-out infinite}.home-bg-fluid-blob.c{width:14vw;height:14vw;max-width:180px;max-height:180px;top:22%;left:42%;background:var(--home-fluid-a);opacity:.4;animation:homeLiquidMorphC 9s ease-in-out infinite}@keyframes homeLiquidFlow{0%{background-position:0% 50%;transform:translate(-4%)}to{background-position:100% 50%;transform:translate(4%)}}@keyframes homeLiquidMorphA{0%{border-radius:60% 40% 55% 45%/50% 55% 45% 50%;transform:translate(0) rotate(0)}25%{border-radius:40% 60%/60% 35% 65% 40%;transform:translate(50px,24px) rotate(8deg)}50%{border-radius:55% 45% 65% 35%/40% 60%;transform:translate(20px,48px) rotate(-4deg)}75%{border-radius:35% 65% 50% 50%/55% 45%;transform:translate(-40px,18px) rotate(6deg)}to{border-radius:60% 40% 55% 45%/50% 55% 45% 50%;transform:translate(0) rotate(0)}}@keyframes homeLiquidMorphB{0%{border-radius:45% 55% 50% 50%/55% 45%;transform:translate(0) scale(1)}33%{border-radius:65% 35% 40% 60%/40% 60% 45% 55%;transform:translate(-55px,30px) scale(1.12)}66%{border-radius:40% 60% 55% 45%/60% 40%;transform:translate(-30px,-10px) scale(.9)}to{border-radius:45% 55% 50% 50%/55% 45%;transform:translate(0) scale(1)}}@keyframes homeLiquidMorphC{0%{border-radius:50%;transform:translate(0);opacity:.5}50%{border-radius:62% 38% 48% 52%/42% 58%;transform:translate(36px,-28px);opacity:.85}to{border-radius:50%;transform:translate(0);opacity:.5}}.home-site-header{height:48px;min-height:48px;max-height:48px;box-sizing:border-box;padding:0 28px;display:flex;align-items:center;justify-content:space-between;background:transparent;position:relative;z-index:20;flex-shrink:0}.site-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:inherit}.brand-mark{width:28px;height:28px;border-radius:var(--home-control-radius);background:var(--home-accent-grad);display:grid;place-items:center;color:var(--home-send-fg);font-weight:900;font-size:15px;border:none;outline:none;box-shadow:none}.brand-title{font-size:16px;font-weight:750;letter-spacing:-.02em;color:var(--text)}.site-menu{display:flex;align-items:center;gap:6px;overflow-x:auto;scrollbar-width:none}.site-menu::-webkit-scrollbar{display:none}.menu-link{padding:7px 12px;border-radius:var(--home-control-radius);border:none;font-size:13px;font-weight:500;color:var(--home-nav-fg-muted);background:transparent;cursor:pointer;transition:color .2s,background .2s;display:flex;align-items:center;gap:6px;white-space:nowrap}.menu-link:hover:not(.active){color:var(--home-nav-fg);background:color-mix(in srgb,var(--text) 6%,transparent)}.menu-link.active{background:var(--home-send-bg);color:var(--home-send-fg);font-weight:600;box-shadow:none}.menu-link .icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:inherit}.menu-link .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.home-site-header .icon-button .icon{display:flex;align-items:center;justify-content:center}.home-site-header .icon-button .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.site-user-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.home-site-header .icon-button{width:32px;height:32px;border-radius:var(--home-control-radius);border:none;background:color-mix(in srgb,var(--text) 3%,transparent);color:var(--text2);display:grid;place-items:center;cursor:pointer;transition:all .2s}.home-site-header .icon-button:hover{color:var(--text);background:color-mix(in srgb,var(--text) 8%,transparent)}.user-profile-badge{display:flex;align-items:center;gap:10px;padding:3px 4px;border-radius:var(--home-control-radius);background:color-mix(in srgb,var(--text) 4%,transparent);border:none;cursor:pointer;transition:all .2s}.user-profile-badge:hover,.user-profile-badge.active{background:color-mix(in srgb,var(--text) 8%,transparent)}.user-avatar-img{width:26px;height:26px;border-radius:50%;object-fit:cover;display:block}.home-v2{position:relative;z-index:2;display:flex;flex-direction:column;min-height:min(100%,100vh - 48px);border:none;outline:none;box-shadow:none}.home-v2.is-starting{pointer-events:none;opacity:.85}.home-a2-layout{padding:10px 40px 24px;max-width:1320px;margin:0 auto;width:100%;box-sizing:border-box}.home-hero-center{text-align:center;margin-top:18px;margin-bottom:22px}.home-hero-h1{font-size:clamp(28px,4vw,34px);font-weight:750;letter-spacing:-.035em;line-height:1.15;background:var(--home-hero-flow);background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:homeHeroGradFlow 9s linear infinite}:root[data-theme=dark] .home-hero-h1{mix-blend-mode:plus-lighter}@keyframes homeHeroGradFlow{0%{background-position:0% center}to{background-position:100% center}}.home-sec-block{margin-top:36px}.home-sec-block+.home-sec-block{margin-top:44px}.home-sec-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 0 18px;margin:0}.home-sec-title{margin:0;font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.02em;line-height:1.3}.home-sec-header--examples{gap:12px}.home-ex-head-left{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.home-ex-tabs{display:flex;align-items:center;gap:2px;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.home-ex-tabs::-webkit-scrollbar{display:none}.home-ex-tab{flex-shrink:0;padding:4px 10px 6px;border:none;background:transparent;color:var(--text3);font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;position:relative;transition:color .2s ease}.home-ex-tab:hover{color:var(--text2)}.home-ex-tab.active{color:var(--text);font-weight:600}.home-ex-tab.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:1px;background:var(--text)}.home-ex-tab-fire{margin-right:2px;font-size:12px;line-height:1}.home-ex-empty{padding:28px 12px;text-align:center;color:var(--text3);font-size:13px;border:1px dashed var(--home-item-ring);border-radius:14px}.home-sec-action{font-size:12px;font-weight:500;color:var(--text3);background:none;border:none;cursor:pointer;padding:0;flex-shrink:0;transition:color .2s}.home-sec-action:hover{color:var(--text);opacity:1}.glowing-prompt-frame{position:relative;max-width:760px;margin:0 auto 28px;width:100%}.home-create-entries{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px;padding:0;background:none;border:0;box-shadow:none}.home-create-entry{position:relative;display:flex;flex-direction:row;align-items:center;gap:10px;height:50px;min-width:0;padding:0 12px 0 10px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:12px;cursor:pointer;color:var(--text);overflow:hidden;background:var(--home-prompt-bg);box-shadow:0 6px 16px color-mix(in srgb,var(--shadow) 28%,transparent);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}.home-create-entry-glow{display:none}.home-create-entry:hover:not(:disabled){transform:translateY(-1px);border-color:color-mix(in srgb,var(--text) 22%,transparent);background:var(--home-prompt-focus, var(--home-prompt-bg));box-shadow:0 8px 20px color-mix(in srgb,var(--shadow) 38%,transparent)}.home-create-entry:disabled{opacity:.55;cursor:not-allowed}.home-create-entry-tile{flex-shrink:0;width:30px;height:30px;border-radius:8px;display:grid;place-items:center;color:var(--text);background:color-mix(in srgb,var(--text) 8%,transparent);border:1px solid color-mix(in srgb,var(--text) 14%,transparent)}.home-create-entry-tile .icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center}.home-create-entry-tile .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.home-create-entry-label{min-width:0;font-size:13px;font-weight:600;letter-spacing:.01em;line-height:1.2;text-align:left;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=dark] .home-create-entry{background:#202024eb;border-color:#ffffff1a;box-shadow:0 6px 16px #00000047}[data-theme=dark] .home-create-entry:hover:not(:disabled){background:#28282ef5;border-color:#fff3}[data-theme=dark] .home-create-entry-tile{color:#ffffffe6;background:#ffffff0f;border-color:#ffffff1f}@media(max-width:720px){.home-create-entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}@media(max-width:420px){.home-create-entries{grid-template-columns:1fr}}.glowing-prompt-inner{position:relative;border-radius:20px;background:var(--home-prompt-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:none;outline:none;box-shadow:0 20px 50px var(--shadow);transition:background .25s ease,box-shadow .25s ease;overflow:hidden}.glowing-prompt-frame:focus-within .glowing-prompt-inner{background:var(--home-prompt-focus);box-shadow:0 24px 60px var(--shadow)}.glowing-prompt-inner.has-prompt-footer .prompt-row{padding-bottom:8px}.glowing-prompt-inner.has-prompt-footer{min-height:118px;box-sizing:border-box}.home-prompt-footer{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;min-height:46px;padding:0 16px 12px 18px;box-sizing:border-box}.home-prompt-footer-left{flex:1;min-width:0;display:flex;align-items:center}.home-prompt-script-toolbar.script-composer-toolbar{padding:0;justify-content:flex-start;width:100%}.home-prompt-script-toolbar .script-composer-plus{width:34px;height:34px;border-radius:var(--home-control-radius);border:none;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text2)}.home-prompt-script-toolbar .script-composer-plus:hover:not(:disabled){color:var(--text);background:color-mix(in srgb,var(--text) 10%,transparent)}.home-prompt-script-toolbar .script-composer-divider{background:color-mix(in srgb,var(--text) 14%,transparent)}.home-prompt-script-toolbar .script-composer-chip{padding:7px 12px;border-radius:var(--home-control-radius);color:var(--text3)}.home-prompt-script-toolbar .script-composer-chip:hover:not(:disabled):not(.active){color:var(--text2);background:color-mix(in srgb,var(--text) 4%,transparent)}.home-prompt-script-toolbar .script-composer-chip.active{background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text);font-weight:650;box-shadow:none}.home-script-file-input{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.prompt-row{padding:16px 18px 8px}.home-prompt-file.script-composer-file{min-height:72px;padding:2px 0 0;margin:0}.home-prompt-file .script-composer-file-name{font-size:15px}.home-prompt-file .script-composer-file-format{color:var(--text2);border-color:color-mix(in srgb,var(--text) 18%,transparent);background:color-mix(in srgb,var(--text) 6%,transparent)}.home-prompt-file .script-composer-file-icon>.icon{background:color-mix(in srgb,var(--home-send-bg) 18%,transparent);color:var(--home-send-bg)}[data-theme=dark] .home-prompt-file .script-composer-file-format{color:#ffffffb8;border-color:#ffffff24;background:#ffffff0f}.prompt-box-text{flex:1;min-width:0;min-height:56px;max-height:140px;padding:2px 0;background:transparent;border:none;outline:none;box-shadow:none;color:var(--text);font-family:inherit;font-size:15px;line-height:1.6;resize:none}.prompt-box-text::placeholder{color:var(--text3)}.btn-send{flex-shrink:0;width:40px;height:40px;border-radius:var(--home-control-radius);border:none;outline:none;background:var(--home-send-bg);color:var(--home-send-fg);display:grid;place-items:center;cursor:pointer;transition:transform .2s,opacity .2s;box-shadow:none}.btn-send:hover:not(:disabled){transform:scale(1.04)}.btn-send:disabled{opacity:.5;cursor:not-allowed}.prompt-under{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;padding:0 4px}.prompt-chips{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end}.prompt-chip{border:0;background:transparent;color:var(--home-chip);font-size:11px;padding:4px 0;cursor:pointer;transition:color .2s}.prompt-chip:hover{color:var(--text2)}.prompt-chip+.prompt-chip:before{content:"·";margin-right:6px;color:var(--text3)}.home-project-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.home-project-card{display:block;padding:7px;border:none;outline:none;box-shadow:inset 0 0 0 1px var(--home-tape-frame);background:var(--home-item-bg);border-radius:12px;cursor:pointer;text-align:left;color:inherit;transition:transform .22s ease,background .22s ease,box-shadow .22s ease}.home-project-card:hover{transform:translateY(-3px);background:var(--home-item-bg-hover);box-shadow:0 10px 28px #0000002e,inset 0 0 0 1px var(--home-item-ring)}.home-project-split{display:grid;grid-template-columns:1fr 1fr;gap:0;height:84px;border-radius:8px;overflow:hidden;isolation:isolate}.home-project-pane{position:relative;overflow:hidden;min-width:0;height:100%}.home-project-pane--canvas{display:flex;align-items:center;justify-content:center;border-radius:0;background-color:var(--home-tape-canvas-bg);background-image:radial-gradient(circle at 1px 1px,color-mix(in srgb,var(--text) 9%,transparent) .75px,transparent 0);background-size:9px 9px}.home-project-wire-icon{width:56px;height:34px;display:flex;align-items:center;justify-content:center;color:color-mix(in srgb,var(--text) 48%,transparent);opacity:.9;flex-shrink:0}.home-project-wire-icon.icon{line-height:0}.home-project-wire-icon.icon svg{width:56px;height:34px;display:block}.home-project-pane--cover{border-radius:0;background:var(--home-tape-cover-bg)}.home-project-split:before{display:none}.home-project-pane-img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s ease,filter .3s ease}.home-project-pane--cover .home-project-pane-img{filter:saturate(1.04) contrast(1.02)}.home-project-card:hover .home-project-pane--cover .home-project-pane-img{transform:scale(1.05);filter:saturate(1.08) contrast(1.04)}.home-project-card:hover .home-project-wire-icon{color:color-mix(in srgb,var(--text) 62%,transparent)}.home-v2 .home-project-meta{display:flex;flex-direction:column;gap:4px;padding:20px 8px 6px;min-width:0}.home-v2 .home-project-name{font-size:14px;font-weight:600;color:var(--text);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-v2 .home-project-edited{font-size:12px;font-weight:400;color:var(--text3);line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-projects-hint-v2{font-size:12px;color:var(--text3);margin:0;padding-top:4px}.home-examples-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;align-items:start}.home-ex-card{aspect-ratio:16 / 10;border-radius:16px;overflow:hidden;position:relative;cursor:pointer;border:none;outline:none;box-shadow:none;padding:0;background:transparent;transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s}.home-ex-card:hover{transform:scale(1.05);box-shadow:0 20px 40px #00000059;z-index:2}.home-ex-card img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .5s ease}.home-ex-card:hover img{transform:scale(1.08)}.home-ex-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 35%,#000000e0);display:flex;flex-direction:column;justify-content:flex-end;padding:16px 18px;text-align:left;color:#fff;pointer-events:none}.home-ex-title{margin:0 0 4px;font-size:14px;font-weight:700;line-height:1.35;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-ex-author{margin:0;font-size:12px;color:#ffffffa6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-ex-meta{display:flex;gap:10px;margin-top:4px;font-size:11px;color:#ffffff80;white-space:nowrap}.home-ex-tags{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.home-ex-tags span{font-size:10px;padding:3px 8px;border-radius:4px;background:#ffffff26;color:#fff;line-height:1.3}.skills-tape-six{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.skill-tile-small{display:flex;flex-direction:column;align-items:center;gap:10px;padding:14px 10px 12px;background:var(--home-item-bg);border:none;outline:none;box-shadow:none;border-radius:12px;text-align:center;cursor:pointer;transition:transform .22s ease,background .22s ease,box-shadow .22s ease;color:inherit;min-width:0}.skill-tile-small:hover{transform:translateY(-2px);background:var(--home-item-bg-hover);box-shadow:0 0 0 1px var(--home-item-ring)}.skill-tile-icon{width:44px;height:44px;border-radius:10px;overflow:hidden;flex-shrink:0;background:color-mix(in srgb,var(--text) 5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 10%,transparent)}.skill-tile-icon img{width:100%;height:100%;object-fit:cover;display:block}.skill-tile-meta{width:100%;min-width:0}.skill-tile-small strong{font-size:12px;font-weight:600;color:var(--text);display:block;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.skill-tile-stat{display:inline-block;margin-top:6px;padding:2px 8px;border-radius:999px;font-style:normal;font-size:10px;font-weight:500;line-height:1.3;color:var(--text2);background:color-mix(in srgb,var(--text) 8%,transparent)}.skill-tile-small em{font-style:normal}.banner-stage{position:relative;z-index:2;width:100%;max-width:1320px;margin:0 auto;padding:0 40px;box-sizing:border-box;border:none;outline:none;box-shadow:none}.hero-banner{position:relative;width:100%;height:clamp(120px,12vw,156px);border-radius:14px;overflow:hidden;background:#000;border:none;outline:none;box-shadow:none}.banner-track{display:flex;gap:0;width:100%;height:100%;transition:transform .55s cubic-bezier(.22,1,.36,1);will-change:transform;backface-visibility:hidden}.banner-slide{position:relative;flex:0 0 100%;flex-shrink:0;width:100%;min-width:100%;max-width:100%;height:100%;box-sizing:border-box;display:grid;grid-template-columns:1.1fr .9fr;grid-column-gap:0;column-gap:0;gap:0;align-items:center;overflow:hidden;background:#000;backface-visibility:hidden;transform:translateZ(0);box-shadow:-2px 0 #000}.banner-copy{padding:10px 24px 10px 44px;position:relative;z-index:3;display:flex;flex-direction:column;justify-content:center;min-width:0;background:#000}.banner-kicker{display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;color:#fff;margin-bottom:6px}.pulse-indicator{width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 10px #fffc;animation:homeIndicatorBlink 2s infinite ease-in-out}@keyframes homeIndicatorBlink{0%,to{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.8)}}.banner-title{font-size:clamp(15px,1.4vw,20px);font-weight:750;letter-spacing:-.02em;line-height:1.3;color:#fff;max-width:480px}.banner-sub{margin-top:6px;font-size:12px;color:#ffffffb8;line-height:1.4}.banner-visual{position:relative;height:100%;margin-left:-2px;overflow:hidden;background:#000}.banner-visual img{position:absolute;left:-2px;width:calc(100% + 4px);height:100%;object-fit:cover;object-position:center 20%;animation:homeBannerFloat 12s ease-in-out infinite;transform-origin:60% 40%}@keyframes homeBannerFloat{0%,to{transform:scale(1.04) translate(0)}50%{transform:scale(1.1) translate(-1.5%,1%)}}.banner-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(90deg,#000 0%,#000 14%,rgba(0,0,0,.55) 32%,transparent 62%);pointer-events:none}.banner-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:radial-gradient(ellipse at 70% 40%,transparent 30%,rgba(0,0,0,.45) 100%);pointer-events:none;animation:homeBannerVignette 8s ease-in-out infinite}@keyframes homeBannerVignette{0%,to{opacity:.7}50%{opacity:1}}.banner-specks{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none;background-image:radial-gradient(2px 2px at 62% 28%,rgba(255,255,255,.55),transparent),radial-gradient(1.5px 1.5px at 78% 42%,rgba(255,255,255,.4),transparent),radial-gradient(2px 2px at 88% 22%,rgba(255,255,255,.5),transparent),radial-gradient(1.5px 1.5px at 70% 68%,rgba(255,255,255,.35),transparent);animation:homeSpeckDrift 10s ease-in-out infinite;opacity:.7}@keyframes homeSpeckDrift{0%,to{transform:translateY(0);opacity:.45}50%{transform:translateY(-10px);opacity:.85}}.banner-nav-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:32px;height:32px;border-radius:50%;border:none;background:#00000073;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;display:grid;place-items:center;cursor:pointer;transition:all .2s}.banner-nav-btn:hover{background:#000000b3}.banner-nav-btn.prev{left:10px}.banner-nav-btn.next{right:10px}.banner-dots{position:absolute;left:50%;bottom:10px;transform:translate(-50%);z-index:5;display:flex;gap:6px}.banner-dot{width:6px;height:6px;border-radius:50%;background:#ffffff47;border:0;cursor:pointer;padding:0;transition:all .2s}.banner-dot.active{width:18px;border-radius:999px;background:#fff}@media(max-width:1024px){.home-project-row,.home-examples-row{grid-template-columns:repeat(2,1fr)}.skills-tape-six{grid-template-columns:repeat(3,1fr)}.banner-slide{grid-template-columns:1fr .8fr}}@media(max-width:640px){.home-site-header{padding:0 12px;gap:8px}.site-menu{max-width:50%}.menu-link span:not(.icon){display:none}.menu-link{padding:8px 10px}.home-a2-layout,.banner-stage{padding-left:16px;padding-right:16px}.banner-copy{padding-left:40px;padding-right:12px}.home-project-row,.home-examples-row,.skills-tape-six{grid-template-columns:repeat(2,1fr)}}.examples-gallery{width:100%;height:100%;min-height:0;overflow:auto;padding:8px 28px 32px;box-sizing:border-box;color:var(--text)}.ex-gallery-toolbar{display:flex;align-items:center;gap:16px;margin-bottom:20px;position:sticky;top:0;z-index:5;padding:10px 0 12px;background:transparent}.ex-gallery-tabs{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.ex-gallery-tabs::-webkit-scrollbar{display:none}.ex-gallery-tab{flex-shrink:0;padding:8px 12px 10px;border:none;background:transparent;color:var(--text3);font-size:14px;font-weight:500;letter-spacing:.01em;cursor:pointer;white-space:nowrap;position:relative;transition:color .2s ease}.ex-gallery-tab:hover{color:var(--text2)}.ex-gallery-tab.active{color:var(--text);font-weight:600}.ex-gallery-tab.active:after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;border-radius:1px;background:var(--text)}.ex-gallery-tab-fire{margin-right:2px;font-size:13px;line-height:1}.ex-gallery-search{display:flex;align-items:center;gap:8px;flex-shrink:0;width:min(220px,28vw);padding:8px 12px;border-radius:999px;border:1px solid var(--home-item-ring);background:var(--home-prompt-bg);color:var(--text2)}.ex-gallery-search-icon.icon{width:16px;height:16px;flex-shrink:0;opacity:.65;color:var(--text2)}.ex-gallery-search-icon.icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.8}.ex-gallery-search-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text);font-size:13px}.ex-gallery-search-input::placeholder{color:var(--text3)}.ex-gallery-masonry{column-count:6;column-gap:14px;padding-bottom:8px}.ex-gallery-card{break-inside:avoid;margin-bottom:14px;width:100%;display:block;cursor:pointer;border-radius:14px;overflow:hidden;background:var(--home-surface);border:1px solid var(--home-item-ring);transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.ex-gallery-card:hover{transform:translateY(-2px);background:var(--home-surface-hover);box-shadow:0 8px 24px color-mix(in srgb,var(--text) 8%,transparent)}.ex-gallery-thumb{position:relative;width:100%;overflow:hidden;background:color-mix(in srgb,var(--text) 6%,transparent)}.ex-gallery-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ex-gallery-media-badge{position:absolute;top:10px;left:10px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:600;color:#fff;background:#00000073;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);pointer-events:none}.ex-gallery-process{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border:none;border-radius:999px;background:#0000008c;color:#fff;font-size:12px;font-weight:560;cursor:pointer;transition:background .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.ex-gallery-process:hover{background:#000000b8}.ex-gallery-process .icon{width:14px;height:14px;display:inline-flex}.ex-gallery-process .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}.ex-gallery-body{padding:10px 12px 12px}.ex-gallery-title{margin:0 0 8px;font-size:13px;font-weight:600;line-height:1.35;color:var(--text);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.ex-gallery-meta{display:flex;align-items:center;gap:8px;min-width:0}.ex-gallery-avatar{width:22px;height:22px;border-radius:50%;object-fit:cover;flex-shrink:0}.ex-gallery-author{font-size:12px;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.ex-gallery-empty{padding:64px 16px;text-align:center;color:var(--text3);font-size:14px}.ex-gallery-process:disabled{opacity:.55;cursor:wait}[data-theme=light] .ex-gallery-search{background:#ffffffeb;border-color:#0f172a1a}[data-theme=light] .ex-gallery-card{background:#ffffffe0;border-color:#0f172a14}[data-theme=light] .ex-gallery-card:hover{background:#fff;box-shadow:0 10px 28px #0f172a14}@media(max-width:1440px){.ex-gallery-masonry{column-count:5}}@media(max-width:1280px){.ex-gallery-masonry{column-count:4}}@media(max-width:1024px){.ex-gallery-masonry{column-count:3}.examples-gallery{padding:8px 16px 28px}}@media(max-width:720px){.ex-gallery-toolbar{flex-wrap:wrap}.ex-gallery-search{width:100%}.ex-gallery-masonry{column-count:2}.ex-gallery-process span{display:none}}.app--topnav .main--topnav,.app--topnav .main--topnav .content{border:none;outline:none;box-shadow:none;background:transparent}.home-v2 button,.home-site-header button,.home-v2 .home-sec-action,.home-v2 .home-create-entry,.home-v2 .prompt-chip{border:none;outline:none;box-shadow:none}.home-v2 button:focus,.home-v2 button:focus-visible,.home-site-header button:focus,.home-site-header button:focus-visible,.home-v2 .prompt-box-text:focus,.home-v2 .prompt-box-text:focus-visible{outline:none;box-shadow:none}.menu-link{border:none;outline:none;box-shadow:none}.menu-link:focus,.menu-link:focus-visible{outline:none;box-shadow:none}.studio-app{z-index:1}.studio-app .main--topnav .panel.studio-panel{padding:0;overflow:hidden;height:100%;background:transparent;border:none;box-shadow:none}.studio-v2{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px 40px 40px;box-sizing:border-box}.studio-v2.assets-page{display:flex;flex-direction:column;gap:20px;min-height:0}.studio-v2 .assets-heading{font-size:15px;font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.3;margin:0;padding-top:4px}.studio-v2 .assets-bar{gap:12px}.studio-v2 .assets-tabs{padding:3px;border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);gap:2px}.studio-v2 .assets-tab{padding:7px 12px;border-radius:calc(var(--home-control-radius) - 2px);font-size:13px;font-weight:500;color:var(--text3);transition:color .2s,background .2s}.studio-v2 .assets-tab:hover:not(.active){color:var(--text2);background:color-mix(in srgb,var(--text) 6%,transparent)}.studio-v2 .assets-tab.active{background:var(--home-send-bg);color:var(--home-send-fg);font-weight:600;box-shadow:none}.studio-v2 .assets-tab-add{color:var(--text2)}.studio-app .studio-v2 .asset-btn,.studio-modal .asset-btn{border:none;border-radius:var(--home-control-radius);background:var(--home-item-bg);color:var(--text2);font-size:13px;font-weight:500;transition:background .2s,color .2s;box-shadow:none}[data-theme=dark] .studio-app .studio-v2 .asset-btn,[data-theme=light] .studio-app .studio-v2 .asset-btn,[data-theme=dark] .studio-modal .asset-btn,[data-theme=light] .studio-modal .asset-btn{background:var(--home-item-bg);border:none}.studio-app .studio-v2 .asset-btn:hover,.studio-modal .asset-btn:hover{background:var(--home-item-bg-hover);color:var(--text);border:none}.studio-app .studio-v2 .asset-btn.primary,.studio-modal .asset-btn.primary,[data-theme=dark] .studio-app .studio-v2 .asset-btn.primary,[data-theme=light] .studio-app .studio-v2 .asset-btn.primary,[data-theme=dark] .studio-modal .asset-btn.primary,[data-theme=light] .studio-modal .asset-btn.primary{background:var(--home-send-bg);color:var(--home-send-fg);border:none;font-weight:600;box-shadow:none}.studio-app .studio-v2 .asset-btn.primary:hover,.studio-modal .asset-btn.primary:hover{filter:brightness(1.06)}.studio-app .studio-v2 .assets-text-btn,.studio-app .studio-v2 .assets-add-btn{border-radius:var(--home-control-radius)}.studio-app .studio-v2 .assets-tab.active,[data-theme=dark] .studio-app .studio-v2 .assets-tab.active,[data-theme=light] .studio-app .studio-v2 .assets-tab.active{background:var(--home-send-bg);color:var(--home-send-fg);font-weight:600;box-shadow:none}.studio-app .studio-v2 .assets-icon-btn,[data-theme=dark] .studio-app .studio-v2 .assets-icon-btn,[data-theme=light] .studio-app .studio-v2 .assets-icon-btn{width:32px;height:32px;border-radius:var(--home-control-radius);border:none;background:color-mix(in srgb,var(--text) 3%,transparent);color:var(--text2);box-shadow:none}.studio-app .studio-v2 .assets-icon-btn:hover{color:var(--text);background:color-mix(in srgb,var(--text) 8%,transparent);border:none}.studio-app .studio-v2 .assets-icon-btn.active{color:var(--text);background:color-mix(in srgb,var(--text) 10%,transparent);border:none;box-shadow:none}.studio-app .studio-v2 .assets-pop-item .icon,.studio-modal .project-style-option .icon{color:var(--text)}.studio-app .studio-v2 .asset-search:focus,.studio-modal .project-form-input:focus,.studio-modal .project-form-textarea:focus{border-color:color-mix(in srgb,var(--home-send-bg) 45%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--home-send-bg) 12%,transparent)}.studio-app .studio-v2 .asset-card.selected .asset-check,.studio-app .studio-v2 .project-grid.multi-select .asset-check{background:var(--home-send-bg);border-color:var(--home-send-bg)}.studio-app .studio-v2 .project-pin{color:var(--text2);background:var(--home-item-bg)}.studio-app .studio-v2 .project-status[data-status=active]{background:var(--home-send-bg);color:var(--home-send-fg)}.studio-app .studio-v2 .project-style-trigger.open,.studio-modal .project-style-trigger.open{border-color:color-mix(in srgb,var(--home-send-bg) 45%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--home-send-bg) 12%,transparent)}.studio-app .studio-v2 .project-style-trigger:hover,.studio-modal .project-style-trigger:hover,.studio-modal .project-style-option:hover{border-color:color-mix(in srgb,var(--text) 18%,transparent);background:var(--home-item-bg-hover)}.studio-app .studio-v2 .project-aspect-btn.active,.studio-modal .project-aspect-btn.active{border-color:var(--home-send-bg);background:color-mix(in srgb,var(--home-send-bg) 12%,transparent);color:var(--text)}[data-theme=dark] .studio-app .studio-v2 .assets-tabs,[data-theme=light] .studio-app .studio-v2 .assets-tabs{background:var(--home-surface);border:1px solid var(--home-item-ring)}[data-theme=dark] .studio-app .studio-v2 .assets-pop,[data-theme=light] .studio-app .studio-v2 .assets-pop,[data-theme=dark] .studio-app .studio-v2 .project-card-menu,[data-theme=light] .studio-app .studio-v2 .project-card-menu{background:var(--home-surface-hover);border:1px solid var(--home-item-ring);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.studio-app .studio-v2 .assets-pop-item:hover,.studio-app .studio-v2 .project-card-menu .assets-pop-item:hover{background:var(--home-item-bg-hover)}.studio-app .studio-v2 .assets-pop-item.active{background:var(--home-item-bg-hover);color:var(--text)}.studio-v2 .assets-pop{border-radius:12px;border:1px solid var(--home-item-ring);background:var(--home-surface-hover);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 16px 40px #0000002e}.studio-v2 .assets-pop-item{border-radius:8px;font-size:13px}.studio-v2 .assets-pop-item.active{color:var(--text);background:var(--home-item-bg-hover)}.studio-v2 .asset-search{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-prompt-bg);color:var(--text)}.studio-v2 .project-card,.studio-v2 .asset-card{border-radius:16px;border:1px solid var(--home-item-ring);background:var(--home-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none}.studio-v2 .project-card:hover,.studio-v2 .asset-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--text) 22%,transparent);box-shadow:0 16px 36px #00000024}.studio-v2 .project-card.is-uploading:hover,.studio-v2 .asset-card.is-uploading:hover{transform:none;box-shadow:none}.studio-v2 .project-card.selected,.studio-v2 .asset-card.selected{border-color:var(--home-send-bg);box-shadow:0 0 0 2px color-mix(in srgb,var(--home-send-bg) 35%,transparent)}.studio-v2 .project-cover{border-radius:16px 16px 0 0}.studio-v2 .project-body{padding:12px 14px 14px}.studio-v2 .project-title-row h4{font-size:13px;font-weight:600;letter-spacing:-.01em}.studio-v2 .project-meta,.studio-v2 .project-summary{font-size:11px;color:var(--home-text-sub)}.studio-v2 .project-progress i,.studio-v2 .project-stage-dots span.done{background:var(--home-send-bg)}.studio-v2 .projects-section-label{font-size:12px;font-weight:600;color:var(--home-text-sub);letter-spacing:.02em;margin:4px 0 8px}.studio-v2 .assets-empty,.studio-v2 .projects-empty{border-radius:16px;border:1px dashed var(--home-item-ring);background:var(--home-item-bg);color:var(--home-text-sub)}.studio-v2 .asset-thumb{border-radius:12px 12px 0 0}.studio-v2 .asset-placeholder{background:var(--home-item-bg);color:var(--home-text-sub)}.studio-v2 .project-modal,.studio-modal .project-modal{border-radius:16px;border:1px solid var(--home-item-ring);background:var(--home-surface-hover);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 24px 64px #00000047}[data-theme=dark] .studio-modal .project-modal,[data-theme=light] .studio-modal .project-modal{background:var(--home-surface-hover)}.studio-v2 .project-form-input,.studio-v2 .project-form-textarea,.studio-v2 select.project-form-input,.studio-modal .project-form-input,.studio-modal .project-form-textarea,.studio-modal select.project-form-input{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-prompt-bg);color:var(--text)}.studio-v2 .project-style-trigger,.studio-modal .project-style-trigger{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-prompt-bg)}.studio-v2 .project-style-menu,.studio-modal .project-style-menu{border-radius:12px;border:1px solid var(--home-item-ring);background:var(--home-surface-hover)}[data-theme=dark] .studio-modal .project-style-menu,[data-theme=light] .studio-modal .project-style-menu{background:var(--home-surface-hover)}.studio-v2 .project-aspect-btn,.studio-modal .project-aspect-btn{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-item-bg)}.studio-v2 button,.studio-app button{border:none;outline:none}.studio-v2 button:focus,.studio-v2 button:focus-visible{outline:none;box-shadow:none}@media(max-width:1024px){.studio-v2{padding:8px 24px 32px}}@media(max-width:640px){.studio-v2{padding:8px 16px 24px}}.app--topnav .home-v2.community-panel .home-sec-header,.app--topnav .home-v2.chat-panel .home-sec-header,.app--topnav .home-v2.pricing-panel .home-sec-header{padding-top:4px;padding-bottom:16px}.app--topnav .home-v2 .community-toolbar{margin-bottom:20px}.app--topnav .home-v2 .community-tab,[data-theme=dark] .app--topnav .home-v2 .community-tab,[data-theme=light] .app--topnav .home-v2 .community-tab{padding:7px 12px;border-radius:var(--home-control-radius);border:none;background:var(--home-item-bg);color:var(--text3);font-size:13px;font-weight:500;cursor:pointer;transition:color .2s,background .2s;box-shadow:none}.app--topnav .home-v2 .community-tab:hover:not(.active){color:var(--text2);background:color-mix(in srgb,var(--text) 6%,transparent);transform:none}.app--topnav .home-v2 .community-tab.active,[data-theme=dark] .app--topnav .home-v2 .community-tab.active,[data-theme=light] .app--topnav .home-v2 .community-tab.active{background:var(--home-send-bg);color:var(--home-send-fg);font-weight:600;border:none;box-shadow:none}.app--topnav .home-v2 .community-search,.app--topnav .home-v2 .community-tag-filter,[data-theme=dark] .app--topnav .home-v2 .community-search,[data-theme=light] .app--topnav .home-v2 .community-tag-filter{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-prompt-bg);color:var(--text);box-shadow:none}.app--topnav .home-v2 .community-search:focus,.app--topnav .home-v2 .community-tag-filter:focus{border-color:color-mix(in srgb,var(--home-send-bg) 45%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,var(--home-send-bg) 12%,transparent)}.app--topnav .home-v2 .asset-btn,[data-theme=dark] .app--topnav .home-v2 .asset-btn,[data-theme=light] .app--topnav .home-v2 .asset-btn{border:none;border-radius:var(--home-control-radius);background:var(--home-item-bg);color:var(--text2);font-size:13px;font-weight:500;box-shadow:none}.app--topnav .home-v2 .asset-btn:hover{background:var(--home-item-bg-hover);color:var(--text);border:none}.app--topnav .home-v2 .asset-btn.primary,[data-theme=dark] .app--topnav .home-v2 .asset-btn.primary,[data-theme=light] .app--topnav .home-v2 .asset-btn.primary{background:var(--home-send-bg);color:var(--home-send-fg);border:none;font-weight:600;box-shadow:none}.app--topnav .home-v2 .asset-btn.primary:hover{filter:brightness(1.06)}.app--topnav .home-v2 .comm-card,[data-theme=dark] .app--topnav .home-v2 .comm-card,[data-theme=light] .app--topnav .home-v2 .comm-card{border-radius:16px;border:1px solid var(--home-item-ring);background:var(--home-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none}.app--topnav .home-v2 .comm-card:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--text) 22%,transparent);box-shadow:0 16px 36px #00000024}.app--topnav .home-v2 .comm-tags span{background:var(--home-item-bg);color:var(--home-text-sub)}.app--topnav .home-v2 .community-empty{border-radius:16px;border:1px dashed var(--home-item-ring);background:var(--home-item-bg);color:var(--home-text-sub)}.app--topnav .home-v2.chat-panel .chat-center{min-height:calc(100vh - 200px);padding-bottom:24px}.app--topnav .home-v2 .chat-card,[data-theme=dark] .app--topnav .home-v2 .chat-card,[data-theme=light] .app--topnav .home-v2 .chat-card{border-radius:20px;border:1px solid var(--home-item-ring);background:var(--home-surface);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 20px 48px #0000001f}.app--topnav .home-v2 .chat-card:before{display:none}.app--topnav .home-v2 .chat-card h3{font-size:1.2rem;font-weight:700;letter-spacing:-.02em;color:var(--text);background:none;-webkit-text-fill-color:currentColor;background-clip:unset}.app--topnav .home-v2 .chat-desc{color:var(--home-text-sub);white-space:pre-line}.app--topnav .home-v2 .chat-hint{color:var(--home-text-sub)}.app--topnav .home-v2 .chat-card img{border-radius:12px;border:1px solid var(--home-item-ring)}.app--topnav .home-v2 .price-card,[data-theme=dark] .app--topnav .home-v2 .price-card,[data-theme=light] .app--topnav .home-v2 .price-card{border-radius:16px;border:1px solid var(--home-item-ring);background:var(--home-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none}.app--topnav .home-v2 .price-card:before{background:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),color-mix(in srgb,var(--text) 8%,transparent),transparent 60%)}.app--topnav .home-v2 .price-card.featured{border-color:color-mix(in srgb,var(--home-send-bg) 55%,transparent);box-shadow:0 12px 40px color-mix(in srgb,var(--home-send-bg) 12%,transparent)}.app--topnav .home-v2 .price-card .badge{background:var(--home-send-bg);color:var(--home-send-fg);font-weight:600;border-radius:0 0 8px 8px}.app--topnav .home-v2 .price-card li:before{color:var(--text2)}.app--topnav .home-v2 .price-card .pbtn,[data-theme=dark] .app--topnav .home-v2 .price-card .pbtn,[data-theme=light] .app--topnav .home-v2 .price-card .pbtn{border-radius:var(--home-control-radius);border:1px solid var(--home-item-ring);background:var(--home-item-bg);color:var(--text);font-weight:500}.app--topnav .home-v2 .price-card .pbtn:hover{background:var(--home-item-bg-hover);border-color:color-mix(in srgb,var(--text) 18%,transparent)}.app--topnav .home-v2 .price-card.featured .pbtn,[data-theme=dark] .app--topnav .home-v2 .price-card.featured .pbtn,[data-theme=light] .app--topnav .home-v2 .price-card.featured .pbtn{background:var(--home-send-bg);color:var(--home-send-fg);border:none;font-weight:600}.app--topnav .home-v2 .price-card.featured .pbtn:hover{filter:brightness(1.06)}.app--topnav .home-v2 .pricing-disclaimer{color:var(--home-text-sub)}.app--topnav .home-v2 .community-masonry{column-count:5;column-gap:16px}.app--topnav .home-v2.community-panel button,.app--topnav .home-v2.chat-panel button,.app--topnav .home-v2.pricing-panel button{border:none;outline:none;box-shadow:none}@media(max-width:1024px){.app--topnav .home-v2 .community-masonry{column-count:3}.app--topnav .home-v2 .pricing-grid,.app--topnav .home-v2 .pricing-grid-v2{grid-template-columns:repeat(2,1fr)}}@media(max-width:1280px){.app--topnav .home-v2 .community-masonry{column-count:4}}@media(max-width:640px){.app--topnav .home-v2 .community-masonry{column-count:2}.app--topnav .home-v2 .pricing-grid,.app--topnav .home-v2 .pricing-grid-v2{grid-template-columns:1fr}.app--topnav .home-v2 .community-actions{flex-wrap:wrap;justify-content:flex-start}.app--topnav .home-v2 .community-search{max-width:none;flex:1}}:root{--ff-edge-meteor-color: #000000;--ff-edge-width: 4px;--ff-edge-width-active: 4px}:root[data-theme=dark]{--ff-edge-meteor-color: #ffffff}.vue-flow__edge .ff-edge-base,.vue-flow__edge .ff-edge-comet,.vue-flow__connection-path{vector-effect:non-scaling-stroke}.vue-flow__edge .ff-edge-base{stroke-width:var(--ff-edge-width)!important}.vue-flow__edge .ff-disconnect-edge.hovered .ff-edge-base,.vue-flow__edge .ff-disconnect-edge.active .ff-edge-base,.vue-flow__connection-path{stroke-width:var(--ff-edge-width-active)!important}.ff-edge-comet{stroke-width:var(--ff-edge-width-active);stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.ff-edge-comet-grad stop{stop-color:var(--ff-edge-meteor-color)}.ff-action-credit{display:inline-flex;align-items:center;gap:6px;padding:0 4px;color:var(--ff-credit-fg);font-size:13px;font-weight:700;line-height:1;flex-shrink:0}.ff-action-credit-gem{width:9px;height:9px;border-radius:2px;background:var(--ff-credit-gem);transform:rotate(45deg);box-shadow:0 0 10px color-mix(in srgb,var(--ff-credit-fg) 40%,transparent);display:inline-block;flex-shrink:0}.ff-action-send{width:44px;height:44px;border:none;border-radius:50%;background:var(--ff-action-bg);color:var(--ff-action-fg);display:grid;place-items:center;cursor:pointer;flex-shrink:0;box-shadow:0 8px 20px var(--ff-action-shadow);transition:transform .15s ease,filter .15s ease,box-shadow .15s ease}.ff-action-send:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 10px 24px var(--ff-action-shadow)}.ff-action-send:active:not(:disabled){transform:scale(.96)}.ff-action-send:disabled{opacity:.4;cursor:not-allowed;box-shadow:none;filter:none;transform:none}.ff-action-send>.icon,.ff-action-send .icon{width:18px!important;height:18px!important;min-width:18px;min-height:18px;display:inline-flex!important;align-items:center;justify-content:center;color:var(--ff-action-fg)!important;line-height:0;pointer-events:none}.ff-action-send .icon svg{width:18px!important;height:18px!important;display:block;fill:none!important;stroke:var(--ff-action-fg)!important;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.ff-action-send .icon svg path,.ff-action-send .icon svg circle,.ff-action-send .icon svg line,.ff-action-send .icon svg polyline{fill:none!important;stroke:var(--ff-action-fg)!important}.ff-action-chip{display:inline-flex;align-items:center;justify-content:center;height:30px;padding:0 12px;border:1px solid var(--border);border-radius:999px;background:var(--control-bg);color:var(--text2);font-size:12px;font-weight:500;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,box-shadow .15s ease}.ff-action-chip:hover:not(.active):not(:disabled){background:var(--control-bg-hover);color:var(--text)}.ff-action-chip.active,.ff-action-chip.is-active{border-color:transparent;background:var(--ff-action-bg);color:var(--ff-action-fg);box-shadow:0 4px 14px var(--ff-action-shadow)}.ff-action-chip:disabled{opacity:.4;cursor:not-allowed}:root[data-theme=dark] .ff-action-chip:hover:not(.active):not(:disabled){color:var(--text)}:root[data-theme=dark] .ff-action-chip.active,:root[data-theme=dark] .ff-action-chip.is-active{border-color:transparent;background:var(--ff-action-bg);color:var(--ff-action-fg);box-shadow:0 4px 14px var(--ff-action-shadow)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:PingFang SC,Microsoft YaHei,Inter,sans-serif;background:var(--bg);color:var(--text);height:100vh;overflow:hidden;transition:background .4s,color .4s}#particles{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2;pointer-events:none}.app{display:flex;align-items:stretch;height:100vh;position:relative;z-index:1;padding:16px 16px 16px 20px;gap:16px}.sidebar-wrap{flex-shrink:0;width:76px;height:calc(100vh - 32px);display:flex;flex-direction:column;align-items:center}.sidebar-brand{flex-shrink:0;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:12px 0 14px;text-decoration:none;border-radius:14px;transition:transform .2s ease,filter .2s ease}.sidebar-brand:hover{transform:scale(1.04);filter:brightness(1.08)}.sidebar-brand-name{font-size:13px;font-weight:800;line-height:1.2;text-align:center;letter-spacing:-.03em;max-width:100%;word-break:break-word;background:var(--nav-item-active);-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 4px 10px var(--nav-item-shadow));animation:sidebar-brand-shine 4.5s ease-in-out infinite}@keyframes sidebar-brand-shine{0%,to{filter:drop-shadow(0 4px 10px var(--nav-item-shadow));opacity:1}50%{filter:drop-shadow(0 6px 16px var(--nav-item-shadow));opacity:.92}}.sidebar-main{margin-top:auto;margin-bottom:auto;position:relative;overflow:hidden}.sidebar-sub{flex-shrink:0;margin-bottom:0;display:flex;flex-direction:column;gap:8px;padding:10px 8px;align-items:center}.sidebar{width:100%;flex-shrink:0;background:var(--sidebar-bg);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid var(--sidebar-border);border-radius:20px;display:flex;flex-direction:column;padding:12px 8px;transition:background .4s,box-shadow .4s,border-color .4s;box-shadow:0 12px 40px var(--sidebar-shadow),0 4px 12px #0000000f;position:relative;z-index:10}[data-theme=light] .sidebar{background:#ffffff61;box-shadow:0 8px 32px var(--sidebar-shadow),0 2px 8px #0f172a0a,inset 0 1px #fffc}[data-theme=dark] .sidebar{background:#14182485;box-shadow:0 12px 40px var(--sidebar-shadow),0 4px 12px #00000014,inset 0 1px #ffffff0f}.nav-list{position:relative;display:flex;flex-direction:column;gap:6px;overflow-y:auto;overflow-x:hidden;padding:2px 0;scrollbar-width:none;-ms-overflow-style:none;max-height:314px;scroll-behavior:smooth}.nav-list::-webkit-scrollbar{display:none}.sidebar-sub .nav-item{min-height:auto;padding:6px 4px}.nav-profile .avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;border:2px solid transparent;transition:all .25s;display:block}.nav-profile:hover .avatar{transform:scale(1.08)}.nav-profile.active{background:transparent;box-shadow:none}.nav-profile.active .avatar{border-color:#ff5eab;box-shadow:0 0 14px var(--nav-item-shadow)}.nav-theme .label{display:none}.nav-theme{min-height:44px;justify-content:center}.nav-theme .icon{margin:0}.nav-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:10px 4px;border-radius:14px;cursor:pointer;position:relative;z-index:1;transition:all .25s;-webkit-user-select:none;user-select:none;min-height:58px}.nav-item.active{background:var(--nav-item-active);box-shadow:none}.nav-item .icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:transform .35s cubic-bezier(.34,1.56,.64,1),color .25s;line-height:1;color:var(--sidebar-icon)}.nav-item .icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.nav-item.active .icon,.nav-item.active .label{color:#fff}.nav-item:hover .icon{transform:scale(1.1)}.nav-item.active .icon{transform:scale(.95)}.nav-item.active .icon.bounce{animation:iconBounce .4s cubic-bezier(.34,1.56,.64,1)}@keyframes iconBounce{0%{transform:scale(1.2)}50%{transform:scale(.85)}to{transform:scale(1)}}.nav-item .label{font-size:.65rem;font-weight:500;color:var(--sidebar-label);transition:color .25s,font-weight .25s;line-height:1.2;text-align:center;white-space:nowrap}.nav-item.active .label{font-weight:600}.main{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;border-radius:16px;background:var(--bg2);border:1px solid var(--border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-theme=light] .main{background:#ffffff2e;box-shadow:0 4px 24px #0f172a0a}[data-theme=dark] .main{background:#090a0f61}.create-card,.asset-card,.project-card,.comm-card,.chat-card,.price-card,.profile-side,.widget,.example-tab,.example-search,.community-tab,.community-search,.community-tag-filter,.assets-tabs,.asset-search,.assets-icon-btn,.assets-pop,.asset-btn{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}[data-theme=light] .create-card,[data-theme=light] .asset-card,[data-theme=light] .project-card,[data-theme=light] .comm-card,[data-theme=light] .chat-card,[data-theme=light] .price-card,[data-theme=light] .profile-side,[data-theme=light] .widget,[data-theme=light] .example-tab,[data-theme=light] .example-search,[data-theme=light] .community-tab,[data-theme=light] .community-search,[data-theme=light] .community-tag-filter,[data-theme=light] .assets-tabs,[data-theme=light] .asset-search,[data-theme=light] .assets-icon-btn,[data-theme=light] .assets-pop,[data-theme=light] .asset-btn{background:#ffffff61}[data-theme=dark] .create-card,[data-theme=dark] .asset-card,[data-theme=dark] .project-card,[data-theme=dark] .comm-card,[data-theme=dark] .chat-card,[data-theme=dark] .price-card,[data-theme=dark] .profile-side,[data-theme=dark] .widget,[data-theme=dark] .example-tab,[data-theme=dark] .example-search,[data-theme=dark] .community-tab,[data-theme=dark] .community-search,[data-theme=dark] .community-tag-filter,[data-theme=dark] .assets-tabs,[data-theme=dark] .asset-search,[data-theme=dark] .assets-icon-btn,[data-theme=dark] .assets-pop,[data-theme=dark] .asset-btn{background:#ffffff06}.content{flex:1;overflow:hidden;position:relative}.panel{position:absolute;top:0;right:0;bottom:0;left:0;padding:32px 40px;overflow-y:auto;opacity:0;pointer-events:none;transform:translate(50px);filter:blur(6px);transition:none}.panel:not(.active) *{pointer-events:none!important}.panel.active{opacity:1;pointer-events:auto;transform:translate(0);filter:blur(0)}.panel.exit-left{opacity:0;transform:translate(-30px);filter:blur(4px)}.panel.enter-right{animation:panelEnter .55s cubic-bezier(.22,1,.36,1) forwards}@keyframes panelEnter{0%{opacity:0;transform:translate(50px);filter:blur(6px)}to{opacity:1;transform:translate(0);filter:blur(0)}}.home-page{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:calc(100vh - 64px);padding:32px 20px 48px;text-align:center}.home-hero{max-width:680px;margin-bottom:36px}.home-hero h1{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:700;line-height:1.25;letter-spacing:-.02em;margin-bottom:12px}.home-hero h1 span{background:linear-gradient(135deg,#6366f1,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.home-tagline{font-size:1rem;color:var(--text2);margin-bottom:20px;letter-spacing:.05em}.home-desc{font-size:.95rem;color:var(--text3);line-height:1.9}.home-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;max-width:1100px}.home-projects{width:100%;max-width:1100px;margin-top:36px;text-align:left}.home-projects-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.home-projects-head h2{margin:0;font-size:1.05rem;font-weight:600;color:var(--text)}.home-projects-all{border:none;background:transparent;color:var(--text2);font-size:.85rem;cursor:pointer;padding:4px 2px}.home-projects-all:hover{color:var(--text)}.home-projects-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.home-project-tile{display:flex;flex-direction:column;gap:8px;padding:0;border:1px solid var(--border);border-radius:12px;background:var(--card);cursor:pointer;overflow:hidden;text-align:left;color:inherit;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease;min-height:0}.home-project-tile:hover{transform:translateY(-2px);border-color:#8b5cf659;box-shadow:0 8px 20px var(--shadow)}.home-project-new{align-items:center;justify-content:center;min-height:148px;gap:10px;border-style:dashed;background:transparent}.home-project-plus{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:1.4rem;line-height:1;color:var(--text2);border:1px solid var(--border)}.home-project-cover{position:relative;aspect-ratio:16 / 10;background:var(--bg2, rgba(127, 127, 127, .12));overflow:hidden}.home-project-cover img{width:100%;height:100%;object-fit:cover;display:block}.home-project-cover-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.7rem;color:var(--text3)}.home-project-view{position:absolute;left:6px;bottom:6px;padding:2px 6px;border-radius:6px;font-size:.65rem;background:#0000008c;color:#fff}.home-project-meta{display:flex;flex-direction:column;gap:2px;padding:0 10px 10px;min-width:0}.home-project-new .home-project-name{padding:0;font-size:.85rem;color:var(--text2)}.home-project-name{font-size:.8rem;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.home-project-sub{font-size:.68rem;color:var(--text3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:1100px){.home-projects-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:720px){.home-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-skills{width:100%;max-width:1100px;margin-top:40px;text-align:left}.home-skills-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.home-skills-head h2{margin:0;font-size:1.05rem;font-weight:600;color:var(--text)}.home-skills-all{border:none;background:transparent;color:var(--text2);font-size:.85rem;cursor:pointer;padding:4px 2px}.home-skills-all:hover{color:var(--text)}.home-skills-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.home-skill-card{position:relative;display:flex;flex-direction:column;gap:8px;min-height:0;padding:12px;border:1px solid rgba(255,255,255,.06);border-radius:12px;text-align:left;color:#fff;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.home-skill-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px #00000059;border-color:#ffffff1f}.home-skill-card.tone-violet{background:linear-gradient(125deg,#1a1224,#2a1a3d 55%,#3b2458)}.home-skill-card.tone-sky{background:linear-gradient(125deg,#0c1524,#12243a 55%,#1a3552)}.home-skill-card.tone-amber{background:linear-gradient(125deg,#1a1410,#2a1e14 55%,#3d2a18)}.home-skill-card.tone-magenta{background:linear-gradient(125deg,#1a1018,#2c1628 55%,#3d1f38)}.home-skill-card.tone-teal{background:linear-gradient(125deg,#0c1818,#122826 55%,#1a3a36)}.home-skill-card.tone-rose{background:linear-gradient(125deg,#1a1014,#2a1620 55%,#3d1f2c)}.home-skill-body{display:flex;align-items:stretch;gap:10px;min-height:96px}.home-skill-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:4px}.home-skill-bolt{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);color:#ffffffe6}.home-skill-title{margin:0;font-size:.95rem;font-weight:700;line-height:1.25;color:#fff}.home-skill-author{display:inline-flex;align-items:center;gap:4px;margin:0;font-size:.68rem;color:#ffffff8c}.home-skill-desc{margin:0;font-size:.68rem;line-height:1.45;color:#ffffffb8;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-skill-foot{display:flex;align-items:center;justify-content:space-between;gap:8px}.home-skill-usage{margin:0;font-size:.68rem;color:#ffffffb3;display:inline-flex;align-items:center;gap:4px;min-width:0}.home-skill-usage-icon{font-size:.65rem;line-height:1}.home-skill-use{flex-shrink:0;border:1px solid rgba(255,255,255,.22);background:#ffffff1a;color:#fff;font-size:.72rem;font-weight:600;line-height:1;padding:6px 12px;border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease}.home-skill-use:hover{background:#ffffff2e;border-color:#ffffff59}.home-skill-cover{flex:0 0 68px;width:68px;border-radius:10px;overflow:hidden;background:#00000047}.home-skill-cover img{width:100%;height:100%;object-fit:cover;display:block}@media(max-width:1100px){.home-skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.home-skills-grid{grid-template-columns:1fr}.home-skill-cover{flex-basis:60px;width:60px}}.create-card{position:relative;border-radius:14px;border:1px solid var(--border);background:var(--card);padding:14px;cursor:pointer;overflow:hidden;transition:all .35s cubic-bezier(.34,1.56,.64,1);text-align:left;min-height:128px;display:flex;flex-direction:column}.create-card:hover{transform:translateY(-4px);border-color:#8b5cf659;box-shadow:0 12px 28px var(--shadow)}.create-card.disabled{pointer-events:none;opacity:.65}.home-page.is-starting{cursor:progress}.card-badge{display:inline-flex;align-items:center;gap:6px;font-size:.62rem;color:var(--text2);padding:3px 8px;border-radius:20px;background:#ffffff0d;border:1px solid var(--border);width:fit-content;margin-bottom:10px}[data-theme=light] .card-badge{background:#0f172a0a}.card-badge .dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.card-badge .dot.pink{background:#ff5eab}.card-badge .dot.blue{background:#60a5fa}.card-badge .dot.green{background:#34d399}.card-badge .dot.yellow{background:#fbbf24}.card-body{display:flex;justify-content:space-between;align-items:flex-end;flex:1;gap:8px}.card-text{flex:1;min-width:0;z-index:1}.card-text h3{font-size:.98rem;font-weight:600;margin-bottom:6px;color:var(--text)}.card-text p{font-size:.7rem;color:var(--text3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-visual{position:relative;width:72px;height:68px;flex-shrink:0;opacity:.85}.card-visual img{position:absolute;border-radius:8px;object-fit:cover;box-shadow:0 4px 16px #00000040}.card-visual .v1{width:40px;height:40px;top:0;right:0;transform:rotate(6deg)}.card-visual .v2{width:34px;height:34px;bottom:2px;left:0;transform:rotate(-8deg)}.card-visual .v3{width:28px;height:28px;top:22px;right:20px;transform:rotate(12deg)}.create-card.card-free .card-visual .v1{width:42px;height:30px;top:6px;right:2px}.create-card.card-free .card-visual .v2{width:36px;height:36px;bottom:0;left:6px}.create-card.card-canvas .card-visual .v1{width:42px;height:30px;top:4px;right:2px}.create-card.card-canvas .card-visual .v2{width:36px;height:36px;bottom:2px;left:8px}.create-card.card-space .card-visual{background:#ffffff08;border-radius:8px;border:1px solid var(--border);width:72px;height:62px;padding:6px;font-family:monospace;font-size:.48rem;color:var(--text3);line-height:1.45;overflow:hidden}[data-theme=light] .create-card.card-space .card-visual{background:#0f172a08}.space-active{color:var(--accent)}.space-count{opacity:.4}.examples-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px}.example-filters{display:flex;gap:8px;flex-wrap:wrap;flex:1}.example-search{width:100%;max-width:280px;padding:12px 18px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.9rem;outline:none;flex-shrink:0}.example-search:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.example-tab{padding:8px 18px;border-radius:20px;font-size:.85rem;cursor:pointer;border:1px solid var(--border);color:var(--text2);transition:all .3s cubic-bezier(.34,1.56,.64,1);background:var(--card)}.example-tab:hover{transform:scale(1.05)}.example-tab.active{background:var(--nav-item-active);color:var(--primary-fg);border-color:transparent;box-shadow:0 4px 16px var(--nav-item-shadow)}.examples-row{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;align-items:start;padding-bottom:8px}.examples-empty{grid-column:1 / -1;text-align:center;padding:56px 20px;color:var(--text2);font-size:.9rem;border:1px dashed var(--border);border-radius:16px}.ex-card{aspect-ratio:16 / 10;border-radius:16px;overflow:hidden;position:relative;cursor:pointer;border:1px solid var(--border);transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s}.ex-card:hover{transform:scale(1.05);box-shadow:0 20px 40px var(--shadow);z-index:2}.ex-card img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0;transition:transform .5s}.ex-card:hover img{transform:scale(1.08)}.ex-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 40%,#000000d9);display:flex;flex-direction:column;justify-content:flex-end;padding:20px}.ex-overlay h4{font-size:.95rem;margin-bottom:4px}.ex-overlay p{font-size:.75rem;color:#fff9}.ex-meta{display:flex;gap:10px;margin-top:2px;font-size:.7rem;color:#ffffff80}.ex-tags{display:flex;gap:6px;margin-top:8px}.ex-tags span{font-size:.65rem;padding:3px 8px;border-radius:4px;background:#ffffff26}.studio-page{display:flex;flex-direction:column;gap:24px;min-height:calc(100vh - 64px);padding:8px 4px}.studio-page-header h2{font-size:1.6rem;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}.studio-page-header p{font-size:.92rem;color:var(--muted)}.studio-page-body{flex:1;display:flex;align-items:center;justify-content:center;border:1px dashed var(--border);border-radius:18px;min-height:280px}.studio-placeholder{font-size:.95rem;color:var(--muted)}.assets-page{display:flex;flex-direction:column;gap:18px;min-height:calc(100vh - 120px)}.assets-heading{font-size:14px;font-weight:650;letter-spacing:-.01em;color:var(--text);line-height:1.3}.assets-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.assets-tabs{display:inline-flex;align-items:center;gap:4px;padding:4px;border-radius:999px;border:1px solid var(--border);background:var(--card);max-width:100%;overflow-x:auto;scrollbar-width:none}.assets-tabs::-webkit-scrollbar{display:none}.assets-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:999px;background:transparent;color:var(--text2);font-size:12px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .25s}.assets-tab:hover{color:var(--text);background:var(--glow)}.assets-tab.active{background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 4px 14px var(--nav-item-shadow)}.assets-tab-icon{font-size:12px;line-height:1;display:inline-flex;align-items:center}.assets-tab-icon--svg .icon,.assets-tab-icon--svg .icon svg{width:14px;height:14px}.assets-tab-remove{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:2px;border-radius:50%;font-size:13px;line-height:1;color:inherit;opacity:.55}.assets-tab-remove:hover{opacity:1;background:#ffffff1f}.assets-file-input{display:none}.assets-tab-add{min-width:32px;justify-content:center;padding-inline:8px;font-size:14px;color:var(--accent)}.assets-tools{display:flex;align-items:center;gap:10px;margin-left:auto;flex-shrink:0}.assets-action-btns{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.assets-text-btn,.assets-add-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:7px 14px;border-radius:999px;line-height:1.2;white-space:nowrap;font-size:12px}.assets-text-btn .icon,.assets-add-btn .icon{width:16px;height:16px;display:inline-flex;flex-shrink:0;color:inherit}.assets-text-btn .icon svg,.assets-add-btn .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.assets-tool-group{display:flex;align-items:center;gap:8px}.assets-tool-wrap{position:relative}.assets-icon-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s;padding:0}.assets-icon-btn .icon{width:18px;height:18px;display:flex;color:inherit}.assets-icon-btn .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.assets-icon-btn:hover{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.assets-icon-btn.active{color:var(--nav-active-solid);border-color:var(--nav-active-solid);background:var(--glow);box-shadow:0 0 0 3px var(--glow)}.assets-pop{position:absolute;top:calc(100% + 10px);right:0;z-index:30;min-width:180px;padding:8px;border-radius:16px;border:1px solid var(--border);background:var(--card);box-shadow:0 12px 36px var(--shadow)}.assets-pop-search{min-width:240px;padding:10px}.assets-pop-search .asset-search{width:100%;max-width:none}.assets-pop-filter{min-width:220px;max-height:360px;overflow-y:auto}.assets-pop-group{margin:10px 10px 6px;font-size:.72rem;font-weight:600;color:var(--text2);letter-spacing:.02em}.assets-pop-group:first-child{margin-top:4px}.assets-pop-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:none;border-radius:12px;background:transparent;color:var(--text);font-size:.88rem;cursor:pointer;text-align:left;transition:background .2s}.assets-pop-item:hover,.assets-pop-item.active{background:var(--glow)}.assets-pop-item .icon{width:16px;height:16px;flex-shrink:0;color:var(--nav-active-solid)}.assets-pop-item .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.asset-search{flex:1;min-width:160px;max-width:220px;padding:10px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.85rem;outline:none}.asset-search:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.asset-btn{padding:8px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.82rem;cursor:pointer;transition:all .25s;white-space:nowrap}.asset-btn:hover{border-color:var(--nav-active-solid);background:var(--glow)}.asset-btn.active{background:var(--glow);border-color:var(--nav-active-solid);color:var(--nav-active-solid)}.asset-btn.primary{background:var(--nav-item-active);color:var(--primary-fg);border:none;box-shadow:0 4px 14px var(--nav-item-shadow)}.asset-btn.primary:hover{filter:brightness(1.05)}[data-theme=light] .asset-btn.primary,[data-theme=dark] .asset-btn.primary{background:var(--nav-item-active);color:var(--primary-fg)}.asset-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding-bottom:12px}.asset-grid.multi-select .asset-check{display:flex}.assets-empty{grid-column:1 / -1;text-align:center;padding:48px 20px;color:var(--text2);font-size:12px;border:1px dashed var(--border);border-radius:16px}.asset-card{border-radius:14px;overflow:hidden;border:1px solid var(--border);background:var(--card);transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer;position:relative}.asset-card:hover{transform:translateY(-4px);border-color:#8b5cf659}.asset-card.selected{border-color:var(--nav-active-solid);box-shadow:0 0 0 2px var(--glow)}.asset-thumb{width:100%;aspect-ratio:4 / 3;position:relative;overflow:hidden;background:#ffffff08}.asset-thumb img,.asset-thumb video{width:100%;height:100%;object-fit:cover;display:block}.asset-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:var(--text3);font-size:.72rem;gap:8px;text-align:center;padding:12px;border:1px dashed var(--border);margin:8px;border-radius:10px}.asset-placeholder .ph-icon{font-size:1.4rem;opacity:.5}.asset-placeholder--media .icon,.asset-placeholder--media .icon svg{width:28px;height:28px;color:var(--text3)}.asset-card .lock{position:absolute;top:10px;right:10px;width:28px;height:28px;border:none;border-radius:8px;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;font-size:.75rem;z-index:2;color:inherit;cursor:pointer;opacity:0}.asset-card .lock.is-on{opacity:1}.asset-card .lock:not(.is-on){filter:grayscale(1)}.asset-card:hover .lock{opacity:1}.asset-card:hover .lock:not(.is-on){opacity:.85}.asset-card-delete{position:absolute;right:10px;bottom:10px;width:28px;height:28px;border:none;border-radius:8px;background:#00000080;color:#fff;display:none;align-items:center;justify-content:center;cursor:pointer;z-index:2;padding:0}.asset-card:hover .asset-card-delete{display:inline-flex}.asset-card-view{position:absolute;left:10px;bottom:10px;width:28px;height:28px;border:none;border-radius:8px;background:#00000080;color:#fff;display:none;align-items:center;justify-content:center;cursor:zoom-in;z-index:2;padding:0}.asset-thumb .asset-card-view{bottom:10px;left:10px}.asset-card:hover .asset-card-view{display:inline-flex}.asset-card.is-uploading .asset-card-view{display:none}.asset-card-view .icon,.asset-card-view .icon svg{width:14px;height:14px}.asset-card-delete .icon,.asset-card-delete .icon svg{width:14px;height:14px}.asset-card.is-uploading{cursor:wait}.asset-card.has-media:not(.is-uploading):not(.selected){cursor:zoom-in}.asset-card.is-uploading:hover{transform:none}.asset-card .info{padding:10px 12px 12px}.asset-card .info h4{font-size:13px;font-weight:650;margin-bottom:2px}.asset-card .info p{font-size:11px;color:var(--text3)}.asset-check{position:absolute;top:10px;left:10px;width:22px;height:22px;border-radius:6px;border:2px solid rgba(255,255,255,.6);background:#00000059;display:none;align-items:center;justify-content:center;font-size:.75rem;color:#fff;z-index:2}.asset-card.selected .asset-check{background:var(--nav-active-solid);border-color:var(--nav-active-solid)}.asset-card .tags-row{display:flex;gap:4px;flex-wrap:wrap;margin-top:6px}.asset-card .tags-row span{font-size:.62rem;padding:2px 6px;border-radius:4px;background:var(--glow);color:var(--text2)}.project-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px;background:#090a0f85;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.project-modal{width:min(480px,100%);max-height:min(90vh,720px);overflow:auto;border-radius:20px;border:1px solid var(--border);background:var(--bg);box-shadow:0 24px 64px #00000059;display:flex;flex-direction:column}[data-theme=light] .project-modal{background:#fffffff0}[data-theme=dark] .project-modal{background:#141824f5}.project-modal-head{display:flex;align-items:center;justify-content:space-between;padding:18px 20px 8px}.project-modal-head h3{font-size:1.15rem;font-weight:700;color:var(--text)}.project-modal-close{width:32px;height:32px;border:none;border-radius:10px;background:transparent;color:var(--text2);font-size:1.4rem;line-height:1;cursor:pointer;transition:background .2s,color .2s}.project-modal-close:hover{background:var(--glow);color:var(--text)}.project-modal-body{padding:8px 20px 12px;display:flex;flex-direction:column;gap:16px}.project-form-field{display:flex;flex-direction:column;gap:8px}.project-form-label{font-size:.82rem;font-weight:600;color:var(--text);display:inline-flex;align-items:center;gap:8px}.project-form-label em{font-style:normal;font-weight:500;font-size:.72rem;color:var(--text2)}.project-form-hint{display:block;margin-top:6px;font-size:.72rem;color:var(--text3);line-height:1.4}.project-source-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.project-source-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.project-source-btn strong{font-size:.82rem}.project-source-btn small{font-size:.68rem;color:var(--text3);line-height:1.35}.project-source-btn:hover{border-color:#8b5cf659}.project-source-btn.active{border-color:var(--nav-active-solid);background:color-mix(in srgb,var(--nav-active-solid) 12%,transparent)}@media(max-width:720px){.project-source-row{grid-template-columns:1fr}}.project-form-input,.project-form-textarea{width:100%;padding:11px 14px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.9rem;outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s}.project-form-textarea{resize:vertical;min-height:84px;line-height:1.5}.project-form-input:focus,.project-form-textarea:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.project-style-select{position:relative}.project-style-trigger,.project-style-option{width:100%;display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--card);color:var(--text);text-align:left;cursor:pointer;transition:border-color .2s,background .2s}.project-style-trigger:hover,.project-style-option:hover{border-color:var(--nav-active-solid);background:var(--glow)}.project-style-trigger.open{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.project-style-thumb{width:48px;height:48px;border-radius:10px;object-fit:cover;flex-shrink:0}.project-style-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.project-style-text strong{font-size:.9rem;font-weight:650}.project-style-text small{font-size:.72rem;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-style-caret{color:var(--text2);font-size:.85rem}.project-style-menu{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:20;max-height:260px;overflow-y:auto;padding:6px;border-radius:16px;border:1px solid var(--border);background:var(--bg);box-shadow:0 16px 40px var(--shadow)}[data-theme=light] .project-style-menu{background:#fffffffa}[data-theme=dark] .project-style-menu{background:#141824fa}.project-style-option{border:none;margin-bottom:2px}.project-style-option.active{background:var(--glow)}.project-style-option .icon{width:16px;height:16px;flex-shrink:0;color:var(--nav-active-solid)}.project-style-option .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.project-aspect-row{display:flex;flex-wrap:wrap;gap:8px}.project-aspect-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text2);font-size:.8rem;cursor:pointer;transition:all .2s}.project-aspect-btn:hover{color:var(--text);border-color:var(--nav-active-solid)}.project-aspect-btn.active{color:#fff;border:none;background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow)}.project-aspect-box{display:block;border:1.5px solid currentColor;border-radius:2px;opacity:.85}.project-aspect-box[data-ratio="16-9"]{width:18px;height:10px}.project-aspect-box[data-ratio="9-16"]{width:10px;height:16px}.project-aspect-box[data-ratio="1-1"]{width:12px;height:12px}.project-aspect-box[data-ratio="4-3"]{width:16px;height:12px}.project-aspect-box[data-ratio="3-4"]{width:12px;height:16px}.project-modal-foot{display:flex;justify-content:flex-end;gap:10px;padding:12px 20px 20px}.project-modal-foot .asset-btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.project-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:16px;padding-bottom:12px}.project-grid.multi-select .asset-check{display:flex}.project-card{border-radius:14px;overflow:hidden;border:1px solid var(--border);background:var(--card);transition:transform .3s,border-color .3s,box-shadow .3s;cursor:pointer;position:relative;display:flex;flex-direction:column}.project-card.menu-open{overflow:visible;z-index:20}.project-card:hover{transform:translateY(-4px);border-color:#8b5cf659;box-shadow:0 12px 32px var(--shadow)}.project-card.selected{border-color:var(--nav-active-solid);box-shadow:0 0 0 2px var(--glow)}.project-card.is-uploading{cursor:wait}.project-card.is-uploading:hover{transform:none}.project-card-loading,.asset-card-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#080a108c;color:#fff;font-size:12px;font-weight:600;letter-spacing:.02em;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);pointer-events:auto}.project-card-loading .icon,.asset-card-loading .icon{width:28px;height:28px;display:inline-flex;color:#fff;animation:ep-spin .7s linear infinite}.project-card-loading .icon svg,.asset-card-loading .icon svg{width:28px;height:28px;display:block}.project-card-loading .icon svg,.project-card-loading .icon svg path,.project-card-loading .icon svg circle,.asset-card-loading .icon svg,.asset-card-loading .icon svg path,.asset-card-loading .icon svg circle{stroke:currentColor;fill:none;stroke-width:2}.project-cover{position:relative;aspect-ratio:16 / 10;background:var(--bg);overflow:hidden;isolation:isolate;border-radius:14px 14px 0 0}.project-cover img{width:100%;height:100%;object-fit:cover;display:block}.project-cover-empty{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text2);font-size:.85rem;background:linear-gradient(145deg,var(--glow),transparent)}.project-status{position:absolute;left:10px;top:10px;z-index:2;padding:4px 10px;border-radius:999px;font-size:.68rem;font-weight:600;color:#fff;background:#0f172a8c;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.project-status[data-status=active]{background:linear-gradient(135deg,#ff5eab,#8b5cf6)}.project-status[data-status=draft]{background:#64748bd9}.project-status[data-status=done]{background:#10b981e6}.project-status[data-status=archived]{background:#475569d9}.project-more{position:absolute;right:8px;top:8px;z-index:3;width:32px;height:32px;border:none;border-radius:50%;background:#0f172a73;color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;transition:opacity .2s,background .2s}.project-card:hover .project-more,.project-card.menu-open .project-more,.project-more:focus-visible{opacity:1}.project-more .icon{width:16px;height:16px;display:flex}.project-more .icon svg{width:16px;height:16px;stroke:currentColor;fill:currentColor;stroke-width:0}.project-card-menu.assets-pop,.project-card-menu{left:auto;right:8px;top:44px;min-width:140px;z-index:40;background:#141824;border:1px solid rgba(255,255,255,.12);box-shadow:0 12px 36px #0000008c;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;opacity:1}[data-theme=light] .project-card-menu.assets-pop,[data-theme=light] .project-card-menu{background:#fff;border-color:#0f172a1a;box-shadow:0 12px 36px #0f172a29}[data-theme=dark] .project-card-menu.assets-pop,[data-theme=dark] .project-card-menu{background:#141824;border-color:#ffffff1f;box-shadow:0 12px 36px #0000008c}.projects-section-label{grid-column:1 / -1;margin:8px 0 0;font-size:13px;font-weight:600;color:var(--text2)}.project-mode-badge{position:absolute;left:10px;bottom:10px;z-index:2;max-width:calc(100% - 20px);padding:2px 8px;border-radius:999px;font-size:11px;line-height:1.3;background:#0000008c;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.project-untitled-tag{flex-shrink:0;padding:1px 6px;border-radius:6px;font-size:11px;color:var(--text2);background:var(--bg3, rgba(127, 127, 127, .15))}.project-move-hint{margin:0 0 12px;font-size:13px;color:var(--text2);line-height:1.5}.assets-pop-item.danger,.assets-pop-item.danger .icon{color:#f43f5e}.project-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}.project-title-row{display:flex;align-items:center;gap:8px}.project-title-row h4{font-size:.98rem;font-weight:650;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.project-pin{flex-shrink:0;font-size:.65rem;padding:2px 6px;border-radius:6px;background:var(--glow);color:var(--nav-active-solid)}.project-meta{font-size:.75rem;color:var(--text2)}.project-stage{display:flex;flex-direction:column;gap:6px;margin-top:2px}.project-stage-top{display:flex;justify-content:space-between;font-size:.72rem;color:var(--text2)}.project-progress{height:4px;border-radius:999px;background:var(--border);overflow:hidden}.project-progress i{display:block;height:100%;border-radius:inherit;background:var(--nav-item-active)}.project-stage-dots{display:flex;gap:4px}.project-stage-dots span{flex:1;height:3px;border-radius:999px;background:var(--border)}.project-stage-dots span.done{background:var(--nav-active-solid)}.project-summary{font-size:.78rem;color:var(--text2);line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.projects-empty{display:flex;flex-direction:column;align-items:center;gap:14px}.ws-app{flex-direction:column;gap:12px;padding:14px 16px 16px;--ws-tab-font-size: .8125rem;--ws-stage-title-size: 1.05rem;--ws-stage-meta-size: .78rem}.ws-boot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text2)}.ws-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-shrink:0}.ws-chrome{display:grid;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);align-items:center;gap:12px 16px;flex-shrink:0;min-height:48px}.ws-chrome-left{display:flex;align-items:center;gap:10px;min-width:0}.ws-chrome-right{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.ws-name-block{min-width:0;max-width:220px}.ws-name-btn{display:block;width:100%;max-width:220px;padding:6px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;text-align:left;transition:border-color .15s,background .15s}.ws-name-btn:hover{border-color:var(--border);background:var(--card)}.ws-name-text{display:block;font-size:.95rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-page-title{display:flex;align-items:center;gap:8px;min-width:0;max-width:min(560px,100%);overflow:visible}.sb-page-title .ws-ep-switch{min-width:0;flex:1;overflow:visible}.sb-page-title .ws-ep-trigger{max-width:100%}.sb-page-title .ws-name-text{flex-shrink:1}.ws-name-sep{flex-shrink:0;color:var(--text2);opacity:.45}.ws-name-sub{min-width:0;font-size:.82rem;font-weight:550;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-page-mode{margin:0;text-align:center;font-size:.88rem;font-weight:700;letter-spacing:-.02em;color:var(--text)}.ws-name-input{width:100%;max-width:220px;padding:6px 10px;border-radius:10px;border:1px solid var(--nav-active-solid);background:var(--card);color:var(--text);font-size:.95rem;font-weight:650;outline:none;box-shadow:0 0 0 3px var(--glow)}.ws-prefs{position:relative;display:inline-flex;align-items:center;max-width:min(420px,46vw);padding:4px;border-radius:999px;border:1px solid var(--border);background:color-mix(in srgb,var(--card) 88%,transparent)}.ws-pref-style,.ws-pref-aspect{display:inline-flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;border:none;border-radius:999px;background:transparent;color:var(--text);cursor:pointer;transition:background .15s}.ws-pref-style:hover,.ws-pref-aspect:hover{background:var(--glow)}.ws-pref-style{max-width:260px}.ws-pref-thumb{width:22px;height:22px;border-radius:6px;object-fit:cover;flex-shrink:0}.ws-pref-label{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-pref-caret{font-size:.7rem;color:var(--text3);flex-shrink:0}.ws-pref-divider{width:1px;height:18px;background:var(--border);flex-shrink:0}.ws-pref-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:40;min-width:220px;max-width:320px;max-height:320px;overflow:auto;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--card);box-shadow:0 12px 28px var(--shadow)}.ws-pref-menu-aspect{min-width:160px}.ws-pref-option{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:none;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.ws-pref-option:hover,.ws-pref-option.active{background:var(--glow)}.ws-pref-option span{display:flex;flex-direction:column;gap:2px;min-width:0}.ws-pref-option strong{font-size:.82rem;font-weight:600}.ws-pref-option small{font-size:.7rem;color:var(--text3)}.ws-topbar-left{display:flex;align-items:center;gap:14px;min-width:0}.ws-back{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text2);font-size:.82rem;cursor:pointer;transition:all .2s}.ws-back:hover{color:var(--text);border-color:var(--nav-active-solid)}.ws-back .icon{width:16px;height:16px;display:flex}.ws-back .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-project-title{min-width:0}.ws-project-title h1{font-size:1.2rem;font-weight:700;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-project-title p{font-size:.78rem;color:var(--text2);margin-top:2px}.ws-ep-switch{position:relative;display:inline-flex;align-items:center;gap:8px;margin-left:4px;z-index:20}.ws-ep-trigger{display:inline-flex;align-items:center;gap:8px;max-width:240px;min-width:140px;padding:8px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.86rem;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .2s}.ws-ep-trigger:hover,.ws-ep-trigger.open{border-color:var(--nav-active-solid);background:var(--glow)}.ws-ep-trigger.static{cursor:default}.ws-ep-trigger.static:hover{border-color:var(--border);background:var(--card)}.ws-ep-trigger .icon{width:15px;height:15px;display:flex;flex-shrink:0;color:var(--text2)}.ws-ep-trigger .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-ep-trigger-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;font-weight:600}.ws-ep-add{width:36px;height:36px;border-radius:12px;border:none;background:var(--nav-item-active);color:var(--primary-fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px var(--nav-item-shadow);transition:filter .2s,transform .15s}.ws-ep-add:hover{filter:brightness(1.06);transform:translateY(-1px)}.ws-ep-add .icon{width:16px;height:16px;display:flex}.ws-ep-add .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2}.ws-ep-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:19}.ws-ep-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;max-width:320px;max-height:min(50vh,360px);overflow-y:auto;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 16px 40px #0000002e;z-index:21;display:flex;flex-direction:column;gap:2px}[data-theme=light] .ws-ep-menu{background:#fffffff5}[data-theme=dark] .ws-ep-menu{background:#181c2afa}.ws-ep-option{position:relative;display:flex;align-items:center;gap:8px;width:100%;padding:10px 10px 10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text2);font:inherit;font-size:.86rem;cursor:pointer;text-align:left}.ws-ep-option:hover{background:var(--glow);color:var(--text)}.ws-ep-option.active{color:var(--primary-fg);background:var(--nav-item-active);box-shadow:0 4px 12px var(--nav-item-shadow)}.ws-ep-option .icon{width:15px;height:15px;display:flex;flex-shrink:0}.ws-ep-option .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75}.ws-ep-option-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.ws-ep-option-meta{font-size:.7rem;opacity:.85;flex-shrink:0}.ws-ep-option-more{width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:inherit;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;opacity:.55}.ws-ep-option:hover .ws-ep-option-more,.ws-ep-option.active .ws-ep-option-more{opacity:1}.ws-ep-option-more:hover{background:#ffffff2e}.ws-ep-option-more .icon{width:14px;height:14px}.ws-ep-option-more .icon svg{width:14px;height:14px}.ws-ep-pop{position:absolute;top:100%;right:8px;z-index:5;min-width:112px}.ws-ep-empty{margin:0;padding:16px 12px;text-align:center;font-size:.8rem;color:var(--text3)}.ws-body{flex:1;min-height:0;display:flex;gap:14px}.ws-body-full .ws-main{width:100%}.ws-tree{width:260px;flex-shrink:0;border-radius:18px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:flex;flex-direction:column;overflow:hidden;transition:width .25s ease}.ws-tree.has-menu{position:relative;z-index:50;overflow:visible}.ws-tree.has-menu .ws-tree-list{overflow:visible}.ws-tree.collapsed{width:56px}[data-theme=light] .ws-tree{background:#ffffff61}[data-theme=dark] .ws-tree{background:#ffffff06}.ws-tree-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px 10px;font-size:.85rem;font-weight:650;color:var(--text)}.ws-tree.collapsed .ws-tree-head{justify-content:center;padding:12px 6px 8px}.ws-tree-head-left{min-width:0;display:flex;align-items:center;gap:8px}.ws-tree.collapsed .ws-tree-head-left{width:100%;justify-content:center}.ws-tree-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-tree-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.ws-tree-fold-btn{width:34px;height:34px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s;padding:0}.ws-tree-fold-btn:hover{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.ws-tree-fold-btn .icon{width:18px;height:18px;display:flex;color:inherit}.ws-tree-fold-btn .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-tree-rail{flex:1;display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 8px 14px}.ws-tree-rail-label{writing-mode:vertical-rl;text-orientation:mixed;border:none;background:transparent;color:var(--text2);font-size:.78rem;letter-spacing:.08em;cursor:pointer;padding:8px 4px;max-height:100%;overflow:hidden}.ws-tree-rail-label:hover{color:var(--text)}.ws-tree-text-btn{padding:5px 10px;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text2);font-size:.75rem;cursor:pointer;transition:all .2s}.ws-tree-text-btn:hover{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.ws-tree-text-btn.primary{border:none;background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 2px 10px var(--nav-item-shadow)}.ws-tree-add-btn{width:34px;height:34px;border:none;border-radius:12px;background:var(--nav-item-active);color:var(--primary-fg);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 14px var(--nav-item-shadow);transition:filter .2s,transform .2s}.ws-tree-add-btn:hover{filter:brightness(1.06);transform:scale(1.04)}.ws-tree-add-btn .icon{width:18px;height:18px;display:flex;color:inherit}.ws-tree-add-btn .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.ws-add-modal{width:min(400px,100%)}.ws-add-confirm{background:#fff!important;color:#111!important;border:none!important;box-shadow:none!important;font-weight:600}.ws-add-confirm:hover:not(:disabled){filter:brightness(.94)}[data-theme=light] .ws-add-confirm{background:#111!important;color:#fff!important}.ws-tree-icon-btn{width:30px;height:30px;border-radius:10px;border:1px dashed var(--border);background:transparent;color:var(--accent);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.ws-tree-icon-btn .icon{width:15px;height:15px;display:flex}.ws-tree-icon-btn .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-tree-icon-btn:hover{border-color:var(--nav-active-solid);background:var(--glow)}.ws-tree-list{flex:1;overflow-y:auto;padding:4px 10px 14px;display:flex;flex-direction:column;gap:4px}.ws-tree-folder{display:flex;flex-direction:column;gap:2px;margin-top:6px}.ws-tree-folder-row{display:flex;align-items:center;gap:8px;padding:8px 10px;font-size:.78rem;font-weight:600;color:var(--text2)}.ws-tree-folder-row .icon{width:15px;height:15px;display:flex;color:inherit}.ws-tree-folder-row .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75}.ws-tree-mini{margin-left:auto;width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--accent);cursor:pointer;font-size:.95rem;line-height:1}.ws-tree-mini:hover{background:var(--glow)}.ws-tree-item{display:flex;align-items:center;gap:8px;flex:1;min-width:0;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text2);cursor:pointer;text-align:left;transition:all .2s}.ws-tree-row{position:relative;display:flex;align-items:center;gap:4px;border-radius:12px;z-index:1}.ws-tree-row.menu-open{z-index:50}.ws-tree-row.active .ws-tree-item{color:#fff;background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow)}.ws-tree-more{flex-shrink:0;width:30px;height:30px;border:1px solid var(--border);border-radius:9px;background:var(--card);color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,color .2s,border-color .2s}.ws-tree-row.active .ws-tree-more{border-color:#ffffff59;background:#ffffff29;color:#fff}.ws-tree-more:hover,.ws-tree-row.menu-open .ws-tree-more{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.ws-tree-row.active .ws-tree-more:hover,.ws-tree-row.active.menu-open .ws-tree-more{background:#ffffff47;color:#fff;border-color:#ffffff8c}.ws-tree-more .icon{width:16px;height:16px;display:flex}.ws-tree-more .icon svg{width:16px;height:16px;stroke:currentColor;fill:currentColor;stroke-width:0}.ws-tree-menu-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:transparent}.ws-tree-menu{left:auto;right:0;top:calc(100% + 4px);min-width:128px;z-index:55;backdrop-filter:none;-webkit-backdrop-filter:none}[data-theme=light] .ws-tree-menu{background:#fff}[data-theme=dark] .ws-tree-menu{background:#1a1f2e}.ws-tree-menu .icon{width:14px;height:14px;display:flex}.ws-tree-menu .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-tree-item .icon{width:16px;height:16px;flex-shrink:0;display:flex;color:inherit}.ws-tree-item .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ws-tree-item:hover:not(:disabled):not(.folder){color:var(--text);background:var(--glow)}.ws-tree-row:not(.active) .ws-tree-item:hover{color:var(--text);background:var(--glow)}.ws-tree-item:disabled,.ws-tree-item.folder{cursor:default;opacity:.9}.ws-tree-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.84rem}.ws-tree-item small{font-size:.65rem;opacity:.75;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-tree-empty{padding:24px 12px;text-align:center;font-size:.82rem;color:var(--text2)}.ws-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:14px;min-height:0}.ws-flow{display:none}.ws-flow-main{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px}.ws-flow-arrow{display:none}.ws-flow-step{display:inline-flex;align-items:center;justify-content:center;gap:0;padding:8px 16px;border:none;border-radius:999px;background:transparent;color:var(--text2);font-size:var(--ws-tab-font-size, .8125rem);font-weight:500;line-height:1.25;letter-spacing:.01em;cursor:pointer;transition:color .25s,background .25s,box-shadow .25s;white-space:nowrap}.ws-flow-step .icon,.ws-flow-index{display:none}.ws-flow-step:hover{color:var(--text);background:var(--glow)}.ws-flow-step.active{color:#fff;background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow);font-weight:600}.ws-flow-step.active .ws-flow-index{display:none}.ws-flow-extra{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;min-height:0;min-width:0}.ws-flow-extra:empty{display:none}.ws-flow-extra-label{font-size:.72rem;color:var(--text2);margin-right:2px}.ws-flow-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;border:1px dashed var(--border);background:transparent;color:var(--text3);font-size:.75rem;cursor:not-allowed;opacity:.7}.ws-flow-chip .icon{width:14px;height:14px;display:flex}.ws-flow-chip .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.ws-stage{flex:1;min-height:0;overflow-y:auto;border-radius:18px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);padding:20px 22px 24px}[data-theme=light] .ws-stage{background:#ffffff61}[data-theme=dark] .ws-stage{background:#ffffff06}.ws-stage-eyebrow{font-size:.78rem;color:var(--text2);margin-bottom:6px}.ws-stage-head h2{font-size:var(--ws-stage-title-size, 1.05rem);font-weight:650;line-height:1.3;letter-spacing:-.01em;color:var(--text);margin-bottom:8px}.ws-stage-desc{font-size:var(--ws-stage-meta-size, .82rem);color:var(--text2);line-height:1.55;max-width:640px}.ws-stage-empty{margin-top:28px;padding:36px 20px;text-align:center;border:1px dashed var(--border);border-radius:16px;color:var(--text2)}.ws-stage-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:14px;margin-top:22px}.ws-stage-card{border-radius:16px;border:1px solid var(--border);background:var(--bg2);padding:16px;display:flex;flex-direction:column;gap:10px}.ws-stage-card h3{font-size:.92rem;font-weight:650;color:var(--text)}.ws-stage-card p,.ws-stage-card li{font-size:.84rem;color:var(--text2);line-height:1.5}.ws-stage-card ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:6px}.ws-stage-card.primary .asset-btn{margin-top:auto;align-self:flex-start}.ws-stage-hint{font-size:.78rem!important;opacity:.85}.script-stage{display:flex;flex-direction:column;min-height:0}.script-stage:not(.is-empty){height:100%}.script-stage.polish-open{flex-direction:row;gap:0}.script-stage-main{position:relative;flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.script-stage.is-empty{justify-content:center}.ws-stage.script-stage.is-analysis,.ws-stage.ep-assets-stage,.ws-stage.sb-stage.is-list{height:100%;padding:8px 200px 0;border:none;border-radius:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none}[data-theme=light] .ws-stage.script-stage.is-analysis,[data-theme=dark] .ws-stage.script-stage.is-analysis,[data-theme=light] .ws-stage.ep-assets-stage,[data-theme=dark] .ws-stage.ep-assets-stage,[data-theme=light] .ws-stage.sb-stage.is-list,[data-theme=dark] .ws-stage.sb-stage.is-list{background:transparent}@media(max-width:900px){.ws-stage.script-stage.is-analysis,.ws-stage.ep-assets-stage,.ws-stage.sb-stage.is-list{padding:8px 20px 0}}.ws-stage.script-stage.is-analysis{overflow:hidden;display:flex;flex-direction:column}.sa-page{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.sa-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;margin-bottom:12px}.sa-head h2{margin:0;font-size:var(--ws-stage-title-size, 1.05rem);font-weight:650;line-height:1.3;letter-spacing:-.01em;color:var(--text)}.sa-more{position:relative}.sa-more-btn{width:36px;height:36px;border:1px solid var(--border);border-radius:50%;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.sa-more-btn:hover,.sa-more-btn.open{color:#fff;background:var(--nav-item-active);border-color:transparent;box-shadow:0 4px 14px var(--nav-item-shadow)}.sa-more-btn .icon,.sa-more-item .icon,.sa-block-head .icon,.sa-ep-head .icon,.sa-dock-logo .icon{width:16px;height:16px;display:flex}.sa-more-btn .icon svg,.sa-more-item .icon svg,.sa-block-head .icon svg,.sa-ep-head .icon svg,.sa-dock-logo .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.sa-more-menu{position:fixed;z-index:1300;min-width:220px;padding:6px;border-radius:14px;border:1px solid rgba(255,255,255,.12);background:#1a1c26;box-shadow:0 16px 40px #0000008c;-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .sa-more-menu{border-color:#0f172a1a;background:#fff;box-shadow:0 16px 40px #0f172a29}.sa-more-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text);font-size:.84rem;cursor:pointer;text-align:left}.sa-more-item:hover{color:#fff;background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow)}.sa-card{flex:1;min-height:0;overflow:auto;border-radius:16px;background:color-mix(in srgb,var(--text) 6%,transparent);padding:8px 6px 96px}[data-theme=dark] .sa-card{background:#14151c}[data-theme=light] .sa-card{background:#ffffffb8}.sa-card-tabs{display:flex;flex-direction:column;padding:0;overflow:hidden}.sa-page.is-embed .sa-card-tabs{padding-bottom:0}.sa-tabs{display:flex;align-items:stretch;gap:4px;flex-shrink:0;padding:0 16px;border-bottom:1px solid color-mix(in srgb,var(--text) 10%,transparent);background:color-mix(in srgb,var(--text) 3%,transparent);overflow-x:auto}[data-theme=light] .sa-tabs{background:#eef0f5;border-bottom-color:#e2e5ec}[data-theme=dark] .sa-tabs{background:#1a1c24;border-bottom-color:#ffffff14}.sa-tab{position:relative;flex:0 0 auto;padding:14px 14px 12px;border:none;background:transparent;color:var(--text2);font-size:.9rem;font-weight:500;cursor:pointer;white-space:nowrap}.sa-tab:hover{color:var(--text)}.sa-tab.active{color:var(--text);font-weight:650}.sa-tab.active:after{content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px 2px 0 0;background:var(--primary)}.sa-tab-panel{flex:1;min-height:0;overflow:auto;background:color-mix(in srgb,var(--bg, #fff) 88%,transparent)}[data-theme=light] .sa-tab-panel{background:#f7f8fc}[data-theme=dark] .sa-tab-panel{background:#101218}.sa-tab-body{padding:18px 20px 28px}.sa-page:not(.is-embed) .sa-tab-body{padding-bottom:100px}.sa-story-edit{margin:0;padding:0;border:none;min-width:0}.sa-story-edit:disabled{opacity:.72}.sa-lock-hint{margin:0 8px 12px;padding:8px 10px;border-radius:8px;background:color-mix(in srgb,var(--text) 6%,transparent);color:var(--text2);font-size:.8rem;line-height:1.5}.sa-doc-title{margin:0 0 16px;font-size:1.15rem;font-weight:700;color:var(--text)}.sa-empty{margin:24px 0;color:var(--text3);font-size:.9rem;text-align:center}.sa-tab-body.is-generate{min-height:100%;display:flex;align-items:center;justify-content:center}.sa-generate-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center;padding:48px 24px}.sa-generate-empty p{margin:0;max-width:320px;font-size:.92rem;line-height:1.65;color:var(--text2)}.sa-generate-btn{padding:10px 22px;border:none;border-radius:999px;background:var(--nav-active, var(--primary));color:var(--primary-fg, #fff);font-size:.88rem;font-weight:650;cursor:pointer;box-shadow:0 8px 20px var(--nav-item-shadow, rgba(139, 92, 246, .28))}.sa-generate-btn:hover:not(:disabled){filter:brightness(1.06)}.sa-generate-btn:disabled{opacity:.55;cursor:not-allowed;filter:none}.sa-ep-toolbar{display:flex;justify-content:flex-end;margin-bottom:8px}.sa-block{padding:4px 10px 8px}.sa-block-head-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.sa-block-head{display:inline-flex;align-items:center;gap:8px;padding:10px 4px;border:none;background:transparent;color:var(--text);font-size:.95rem;font-weight:650;cursor:pointer}.sa-collapse-all{padding:4px 10px;border:none;border-radius:8px;background:color-mix(in srgb,var(--text) 10%,transparent);color:var(--text);font-size:.75rem;cursor:pointer}.sa-block-body{padding:0 8px 12px 28px}.sa-prose,.sa-field p,.sa-char p{margin:0 0 10px;font-size:.88rem;line-height:1.75;color:var(--text);white-space:pre-wrap}.sa-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;margin:0 0 18px}.sa-meta dt{font-size:.75rem;color:var(--text2);margin-bottom:4px}.sa-meta dd{margin:0;font-size:.88rem;color:var(--text)}.sa-field,.sa-char{margin-bottom:16px}.sa-field h4,.sa-char h4{margin:0 0 8px;font-size:.78rem;font-weight:600;letter-spacing:.02em;color:var(--text2)}.sa-k{color:var(--text2)}.sa-story-edit .sa-edit,.sa-story-edit .sa-edit-area{display:block;width:100%;box-sizing:border-box;margin:0;padding:6px 8px;border:1px solid color-mix(in srgb,var(--text) 12%,transparent);border-radius:8px;background:color-mix(in srgb,var(--bg, #fff) 82%,transparent);color:var(--text);font:inherit;line-height:1.65}.sa-story-edit .sa-edit::placeholder,.sa-story-edit .sa-edit-area::placeholder{color:var(--text3);opacity:1}.sa-story-edit .sa-edit-area{min-height:36px;resize:none;overflow:hidden;white-space:pre-wrap}.sa-story-edit .sa-edit:hover,.sa-story-edit .sa-edit-area:hover{border-color:color-mix(in srgb,var(--primary) 35%,var(--border, #e5e7eb))}.sa-story-edit .sa-edit:focus,.sa-story-edit .sa-edit-area:focus{outline:none;border-color:var(--primary);background:var(--bg, #fff);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 16%,transparent)}.sa-story-edit .sa-edit:disabled,.sa-story-edit .sa-edit-area:disabled{opacity:.65;cursor:not-allowed}.sa-story-edit input.sa-edit[type=number]{max-width:7.5em}.sa-char-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.sa-edit-name{font-size:.95rem;font-weight:650;color:var(--text)}.sa-char-line{display:flex;flex-direction:column;gap:4px;margin-bottom:10px}.sa-char-line .sa-k{font-size:.75rem;font-weight:600;letter-spacing:.02em;color:var(--text2)}.sa-ep-list{padding:0 4px 8px 8px}.sa-outline-ep{padding:4px 8px 20px}.sa-outline-ep+.sa-outline-ep{border-top:1px solid color-mix(in srgb,var(--text) 8%,transparent);padding-top:18px}.sa-outline-ep-head{display:flex;align-items:center;gap:8px;margin:0 0 10px}.sa-outline-ep-no{flex-shrink:0;font-size:.95rem;font-weight:700;line-height:1.45;color:var(--text2)}.sa-outline-ep-head .sa-outline-title{margin:0;flex:1;min-width:0}.sa-outline-edit .sa-outline-title-input{flex:1;min-width:0;font-weight:700;color:var(--text)}.sa-outline-title{margin:0 0 10px;font-size:.95rem;font-weight:700;line-height:1.45;color:var(--text)}.sa-outline-edit .sa-field h4{color:var(--text2)}.sa-outline-text{margin:0;font-size:.88rem;line-height:1.8;color:var(--text);white-space:pre-wrap}.sa-outline-text .sa-k{color:var(--text2)}.sa-outline-empty{margin:0;font-size:.85rem;line-height:1.6;color:var(--text3, #9ca3af);opacity:.85}.sa-ep{padding:2px 0}.sa-ep-head-row{display:flex;align-items:center;gap:8px;width:100%}.sa-ep-head-row .sa-ep-head{width:auto;flex-shrink:0;padding-right:0}.sa-ep-head-row .sa-outline-title-input,.sa-ep-head-row .sa-ep-title{flex:1;min-width:0}.sa-ep-edit{padding:4px 4px 12px 28px}.sa-body-edit .sa-body-area{min-height:160px;font-size:.88rem;line-height:1.75}.sa-ep-head{display:flex;align-items:center;gap:8px;width:100%;padding:8px 4px;border:none;background:transparent;color:var(--text);cursor:pointer;text-align:left}.sa-ep-title{color:#a78bfa;font-size:.9rem;font-weight:600}.sa-ep-head .icon:last-child{margin-left:auto;color:var(--text3)}.sa-ep-badge{margin-left:8px;padding:2px 8px;border-radius:8px;background:#e8e4f0;color:#3f3a4a;font-size:.7rem;font-weight:600}.sa-ep-placeholder{padding:4px 8px 12px 28px;color:var(--text3);font-size:.86rem}.sa-ep-body{padding:0 8px 12px 28px}.sa-line{margin:0 0 8px;font-size:.86rem;line-height:1.7;color:var(--text)}.sa-line.is-scene{font-weight:650;margin-top:12px}.sa-line.is-cast,.sa-line.is-setting,.sa-line.is-subtitle{color:var(--text2)}.sa-line-dir{color:var(--text3)}.sa-dock{position:absolute;left:50%;bottom:16px;transform:translate(-50%);display:flex;align-items:center;gap:16px;padding:8px 8px 8px 14px;border-radius:999px;background:#0b0c10;border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 32px #00000073;z-index:8}[data-theme=light] .sa-dock{background:#111827}.sa-dock-status{display:inline-flex;align-items:center;gap:8px;color:#fff;font-size:.82rem;white-space:nowrap}.sa-dock-logo{width:28px;height:28px;border-radius:50%;background:var(--nav-item-active);color:var(--primary-fg);display:inline-flex;align-items:center;justify-content:center}.sa-dock-next{padding:10px 18px;border:none;border-radius:999px;background:#fff;color:#111;font-size:.88rem;font-weight:650;cursor:pointer;white-space:nowrap}.sa-page.has-story-dock .sa-tab-body{padding-bottom:88px}.sa-story-dock{position:absolute;left:50%;bottom:16px;transform:translate(-50%);z-index:8;width:min(760px,calc(100% - 28px));display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 8px 8px 20px;border-radius:999px;background:#111216e0;border:1px solid rgba(255,255,255,.08);box-shadow:0 12px 36px #0000006b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.sa-story-dock-hint{margin:0;min-width:0;color:#fffffff0;font-size:.84rem;line-height:1.45}.sa-story-dock-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.sa-story-dock-save,.sa-story-dock-next{padding:10px 16px;border:none;border-radius:999px;font-size:.86rem;font-weight:650;cursor:pointer;white-space:nowrap}.sa-story-dock-save{background:#ffffff1f;color:#fff}.sa-story-dock-save:hover:not(:disabled){background:#ffffff2e}.sa-story-dock-next{background:#fff;color:#111}.sa-story-dock-next:hover:not(:disabled){filter:brightness(.96)}.sa-story-dock-save:disabled,.sa-story-dock-next:disabled{opacity:.42;cursor:not-allowed}.sa-unsaved-copy{margin:0;font-size:.9rem;line-height:1.6;color:var(--text2)}@media(max-width:720px){.sa-story-dock{width:calc(100% - 16px);padding:10px 10px 10px 14px;gap:10px}.sa-story-dock-hint{display:none}}@media(max-width:720px){.sa-meta{grid-template-columns:1fr}}.script-file-input{display:none}.script-hydrate{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text2);font-size:.9rem}.script-composer-wrap{width:min(720px,100%);margin:0 auto;display:flex;flex-direction:column;gap:10px}.script-file-tag{font-size:.8rem;color:var(--text2);text-align:center}.script-composer-file{display:flex;align-items:center;gap:12px;min-height:88px;padding:14px 4px 8px 8px}.script-composer-file-icon{position:relative;flex-shrink:0;width:44px;height:44px}.script-composer-file-icon>.icon{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--nav-active-solid) 16%,transparent);color:var(--nav-active-solid)}.script-composer-file-icon>.icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.script-composer-file-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.script-composer-file-name{font-size:.95rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.script-composer-file-format{align-self:flex-start;font-size:.72rem;font-weight:600;letter-spacing:.04em;color:var(--text2);border:1px solid var(--border);border-radius:6px;padding:2px 7px}.script-composer-file-clear{position:absolute;top:-8px;left:-8px;z-index:2;width:22px;height:22px;padding:0;border:2px solid #fff;border-radius:50%;background:#f43f5e;color:#fff;box-shadow:0 2px 10px #f43f5e73;cursor:pointer;display:grid;place-items:center}.script-composer-file-clear:hover:not(:disabled){background:#e11d48;transform:scale(1.08)}.script-composer-file-clear:disabled{opacity:.5;cursor:not-allowed}.script-composer-file-clear .icon{width:11px;height:11px;display:flex;color:#fff}.script-composer-file-clear .icon svg{width:11px;height:11px;stroke:#fff;fill:none;stroke-width:2.75;stroke-linecap:round;stroke-linejoin:round}.script-status{font-size:.88rem;color:var(--nav-active-solid);text-align:center}.script-error{font-size:.88rem;color:#f43f5e;text-align:center}.script-composer{border-radius:20px;border:1px solid var(--border);background:var(--card);box-shadow:0 8px 28px var(--shadow);padding:12px 14px;display:flex;flex-direction:column;gap:10px;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}[data-theme=light] .script-composer{background:#ffffffeb}[data-theme=dark] .script-composer{background:#141824f0}.script-composer-textarea{width:100%;min-height:88px;max-height:220px;resize:vertical;border:none;outline:none;background:transparent;color:var(--text);font-size:.95rem;line-height:1.55;font-family:inherit;padding:4px 4px 0}.script-composer-textarea::placeholder{color:var(--text3)}.script-composer-textarea:disabled{opacity:.6}.script-composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.script-composer-left{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.script-composer-plus{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.script-composer-plus:hover:not(:disabled){color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.script-composer-plus:disabled{opacity:.5;cursor:not-allowed}.script-composer-plus .icon{width:18px;height:18px;display:flex}.script-composer-plus .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.script-composer-divider{width:1px;height:20px;background:var(--border);flex-shrink:0}.script-composer-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:999px;border:none;background:transparent;color:var(--text2);font-size:.82rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .25s}.script-composer-chip .icon{width:15px;height:15px;display:flex;color:inherit}.script-composer-chip .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.script-composer-chip:hover:not(:disabled){color:var(--text);background:var(--glow)}.script-composer-chip.active,.script-ep-trigger.open{background:var(--nav-item-active);color:var(--primary-fg);font-weight:600;box-shadow:0 4px 14px var(--nav-item-shadow)}.script-composer-chip:disabled{opacity:.5;cursor:not-allowed}.script-composer-confirm{flex-shrink:0;min-width:72px;height:36px;padding:0 18px;border:none;border-radius:999px;background:var(--nav-item-active);color:var(--primary-fg);font-size:.88rem;font-weight:600;cursor:pointer;box-shadow:0 4px 14px var(--nav-item-shadow);transition:filter .2s,opacity .2s}.script-composer-confirm:hover:not(:disabled){filter:brightness(1.05)}.script-composer-confirm:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.script-ep-picker{position:relative}.script-ep-trigger{gap:6px}.script-ep-trigger .icon{width:14px;height:14px;display:flex;transition:transform .15s}.script-ep-trigger.open .icon{transform:rotate(180deg)}.script-ep-trigger .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.script-ep-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:30;min-width:156px;padding:6px;border-radius:14px;border:1px solid rgba(255,255,255,.1);background:#161822;box-shadow:0 16px 40px #0000008c;-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .script-ep-menu{border-color:#0f172a1a;background:#fff;box-shadow:0 16px 40px #0f172a29}.script-ep-option{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;border:none;border-radius:10px;background:transparent;color:var(--text);font-size:.82rem;cursor:pointer;text-align:left;transition:all .2s}.script-ep-option:hover{color:var(--text);background:var(--glow)}.script-ep-option.active{background:var(--nav-item-active);color:var(--primary-fg);font-weight:600;box-shadow:0 4px 14px var(--nav-item-shadow)}.script-ep-dot{width:4px;height:4px;border-radius:50%;background:var(--text3);flex-shrink:0}.script-ep-option.active .script-ep-dot{background:#fff}.script-ep-option .icon{width:14px;height:14px;margin-left:auto;display:flex;color:inherit}.script-ep-option .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}.script-ep-custom-row{margin-top:2px;padding-top:2px;border-top:1px solid rgba(255,255,255,.08)}[data-theme=light] .script-ep-custom-row{border-top-color:#0f172a14}.script-ep-custom-tag{display:inline-flex;padding:2px 8px;border-radius:8px;background:var(--glow);font-size:.78rem}.script-ep-custom-edit{display:flex;align-items:center;gap:8px;padding:8px 10px}.script-ep-custom-input{width:64px;padding:6px 8px;border-radius:8px;border:1px solid rgba(255,255,255,.12);background:#0f1118;color:var(--text);font-size:.82rem;outline:none}[data-theme=light] .script-ep-custom-input{border-color:#0f172a1f;background:#f8fafc;color:var(--text)}.script-ep-custom-input:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.script-ep-custom-ok{margin-left:auto;padding:4px 10px;border:none;border-radius:999px;background:var(--nav-item-active);color:var(--primary-fg);font-size:.75rem;font-weight:600;cursor:pointer;box-shadow:0 4px 14px var(--nav-item-shadow)}.script-view-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;flex-shrink:0}.script-view-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.script-view-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;color:var(--text2)}.script-edit-hint{margin-left:4px;padding:2px 8px;border-radius:999px;background:var(--glow);color:var(--nav-active-solid);font-size:.72rem}.script-inline-status{margin:0 0 8px;font-size:.8rem;color:var(--nav-active-solid)}.script-tiptap{flex:1;min-height:0;display:flex;flex-direction:column}.script-full-editor,.script-tiptap-shell{flex:1;min-height:0;width:100%;border:1px solid var(--border);border-radius:14px;outline:none;background:#fff;color:var(--text);font-size:.9rem;line-height:1.75;font-family:inherit;overflow-y:auto;transition:border-color .2s,box-shadow .2s}.script-tiptap-shell .tiptap{min-height:100%;padding:16px 18px;outline:none}.script-tiptap-shell .tiptap p.is-editor-empty:first-child:before{color:var(--text3);content:attr(data-placeholder);float:left;height:0;pointer-events:none}[data-theme=dark] .script-full-editor,[data-theme=dark] .script-tiptap-shell{background:var(--bg2)}.script-tiptap-shell:focus-within{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.script-sel-bar-inline{position:relative;top:auto;left:auto}.script-sel-btn.active,.script-sel-icon.active{background:#8b5cf61f;color:var(--nav-active-solid)}.script-sel-swatch-btn{width:16px;height:16px;border-radius:4px;border:1px solid rgba(15,23,42,.15);background:transparent;cursor:pointer;padding:0;margin:0 2px;flex-shrink:0}.script-tiptap-shell .tiptap a{color:var(--nav-active-solid);text-decoration:underline}.script-tiptap-shell .tiptap code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86em;padding:.1em .35em;border-radius:4px;background:#0f172a0f}[data-theme=dark] .script-tiptap-shell .tiptap code{background:#ffffff14}.script-tiptap-shell .tiptap h3,.script-tiptap-shell .tiptap h4{margin:.6em 0 .35em;font-weight:700;line-height:1.4}.script-tiptap-shell .tiptap h3{font-size:1.05rem}.script-tiptap-shell .tiptap h4{font-size:.95rem}.script-tiptap-shell .tiptap p{margin:0 0 .55em}.script-tiptap-shell .tiptap mark{border-radius:2px;padding:0 2px}.script-sel-bar{position:fixed;z-index:1500;display:flex;align-items:center;gap:2px;height:44px;padding:0 8px;border-radius:12px;border:1px solid rgba(15,23,42,.1);background:#fff;box-shadow:0 10px 32px #0f172a24;-webkit-user-select:none;user-select:none;max-width:calc(100vw - 24px);overflow-x:auto}[data-theme=dark] .script-sel-bar{background:#1e2433;border-color:#ffffff1f;box-shadow:0 12px 36px #00000073}.script-sel-sep{width:1px;height:22px;margin:0 6px;background:#0f172a1a;flex-shrink:0}[data-theme=dark] .script-sel-sep{background:#ffffff1f}.script-sel-ai{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 10px 0 4px;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap}.script-sel-ai:hover:not(:disabled){background:#0f172a0d}.script-sel-ai:disabled{opacity:.6;cursor:wait}.script-sel-ai-avatar{width:22px;height:22px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--nav-item-active);color:var(--primary-fg);font-size:.58rem;font-weight:800}.script-sel-dd{position:relative}.script-sel-btn,.script-sel-icon,.script-sel-text-btn{display:inline-flex;align-items:center;justify-content:center;gap:2px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;cursor:pointer;flex-shrink:0}.script-sel-btn{padding:0 8px;font-size:.82rem}.script-sel-icon{width:32px;padding:0;font-size:.88rem}.script-sel-text-btn{padding:0 8px;font-size:.8rem;gap:5px;white-space:nowrap}.script-sel-btn:hover,.script-sel-icon:hover,.script-sel-text-btn:hover{background:#0f172a0d}[data-theme=dark] .script-sel-ai:hover:not(:disabled),[data-theme=dark] .script-sel-btn:hover,[data-theme=dark] .script-sel-icon:hover,[data-theme=dark] .script-sel-text-btn:hover{background:#ffffff0f}.script-sel-t{font-weight:700}.script-sel-caret{font-size:.65rem;opacity:.55;margin-left:1px}.script-sel-align-ico{font-size:.95rem;line-height:1;opacity:.85}.script-sel-strike{text-decoration:line-through;font-weight:700}.script-sel-u{text-decoration:underline;font-weight:650}.script-sel-code{font-size:.72rem;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.script-sel-color .script-sel-a{font-weight:800;background:linear-gradient(transparent 60%,#fef08a 60%);padding:0 1px}.script-sel-icon .icon,.script-sel-text-btn .icon{width:15px;height:15px;display:flex}.script-sel-icon .icon svg,.script-sel-text-btn .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.7}.script-sel-menu{position:absolute;top:calc(100% + 6px);left:0;z-index:2;min-width:120px;padding:6px;border-radius:10px;border:1px solid rgba(15,23,42,.1);background:#fff;box-shadow:0 10px 28px #0f172a24;display:flex;flex-direction:column;gap:2px}[data-theme=dark] .script-sel-menu{background:#1e2433;border-color:#ffffff1f}.script-sel-menu-colors{min-width:140px}.script-sel-menu-item{display:flex;align-items:center;gap:8px;width:100%;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.82rem;text-align:left;padding:8px 10px;cursor:pointer}.script-sel-menu-item:hover,.script-sel-menu-item.active{background:#0f172a0f}[data-theme=dark] .script-sel-menu-item:hover,[data-theme=dark] .script-sel-menu-item.active{background:#ffffff14}.script-sel-swatch{width:14px;height:14px;border-radius:4px;border:1px solid rgba(15,23,42,.15);background:transparent;flex-shrink:0}.script-next-btn{flex-shrink:0;white-space:nowrap;min-width:160px;justify-content:center;border-radius:999px;padding:10px 22px}.script-polish-fab{position:absolute;right:20px;bottom:20px;z-index:20;display:inline-flex;align-items:center;gap:8px;padding:12px 18px;border:none;border-radius:999px;background:var(--nav-item-active);color:var(--primary-fg);font-size:.88rem;font-weight:600;font-family:inherit;cursor:pointer;box-shadow:0 10px 28px #0f172a38;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.script-polish-fab:hover{transform:translateY(-2px);filter:brightness(1.05);box-shadow:0 14px 32px #0f172a47}.script-polish-fab .icon{width:18px;height:18px;display:flex}.script-polish-fab .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-panel{position:relative;flex-shrink:0;display:flex;flex-direction:column;min-height:0;height:100%;border-left:1px solid var(--border);background:var(--card);box-shadow:-8px 0 28px var(--shadow)}[data-theme=dark] .sp-panel{background:#101420f5}.sp-resize-handle{position:absolute;z-index:5;top:0;left:-3px;width:6px;height:100%;cursor:col-resize;touch-action:none;background:transparent}.sp-resize-handle:after{content:"";position:absolute;top:50%;left:50%;width:2px;height:36px;border-radius:999px;background:var(--border);transform:translate(-50%,-50%);opacity:0;transition:opacity .15s,background .15s}.sp-panel:hover .sp-resize-handle:after,.sp-panel.resizing .sp-resize-handle:after,.sp-resize-handle:hover:after{opacity:1;background:var(--nav-active-solid)}.sp-panel.stacked{border-left:none;border-top:1px solid var(--border);box-shadow:0 -8px 24px var(--shadow)}.sp-panel.stacked .sp-resize-handle{top:-3px;left:0;width:100%;height:6px;cursor:row-resize}.sp-panel.stacked .sp-resize-handle:after{width:36px;height:2px}body.sp-resizing-col,body.sp-resizing-row{-webkit-user-select:none!important;user-select:none!important}body.sp-resizing-col{cursor:col-resize!important}body.sp-resizing-row{cursor:row-resize!important}.sp-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.sp-head-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.sp-head-titles strong{font-size:.95rem;color:var(--text)}.sp-head-titles span{font-size:.75rem;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-icon-btn{width:32px;height:32px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:all .15s}.sp-icon-btn:hover{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.sp-icon-btn .icon{width:16px;height:16px;display:flex}.sp-icon-btn .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-cite{display:flex;gap:10px;margin:10px 12px 0;padding:10px 12px;border-radius:14px;border:1px solid var(--border);background:var(--glow);flex-shrink:0}.sp-cite-ico{width:34px;height:34px;border-radius:10px;background:var(--card);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--nav-active-solid);flex-shrink:0}.sp-cite-ico .icon{width:16px;height:16px;display:flex}.sp-cite-ico .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-cite-body{min-width:0;display:flex;flex-direction:column;gap:2px}.sp-cite-body strong{font-size:.78rem;color:var(--nav-active-solid)}.sp-cite-name{font-size:.8rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-cite-body p{margin:2px 0 0;font-size:.72rem;line-height:1.4;color:var(--text2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.sp-thread{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:14px}.sp-welcome{padding:14px;border-radius:16px;border:1px dashed var(--border);background:#0f172a05}[data-theme=dark] .sp-welcome{background:#ffffff08}.sp-welcome-ico{width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;color:var(--nav-active-solid);background:var(--glow);margin-bottom:10px}.sp-welcome-ico .icon{width:18px;height:18px;display:flex}.sp-welcome-ico .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-welcome h3{margin:0 0 6px;font-size:.92rem;color:var(--text)}.sp-welcome>p{margin:0 0 10px;font-size:.8rem;line-height:1.5;color:var(--text2)}.sp-tips{margin:0 0 12px;padding-left:18px;font-size:.76rem;line-height:1.55;color:var(--text2)}.sp-tips li+li{margin-top:4px}.sp-examples{display:flex;flex-direction:column;gap:6px}.sp-examples-label{font-size:.72rem;font-weight:600;color:var(--text)}.sp-example-chip{text-align:left;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:12px;padding:8px 10px;font-size:.76rem;line-height:1.4;font-family:inherit;cursor:pointer;transition:border-color .15s,background .15s}.sp-example-chip:hover{border-color:var(--nav-active-solid);background:var(--glow)}.sp-msg{display:flex;gap:8px;align-items:flex-start}.sp-msg.role-user{flex-direction:row-reverse}.sp-msg-avatar{width:28px;height:28px;border-radius:50%;background:var(--glow);color:var(--nav-active-solid);display:flex;align-items:center;justify-content:center;flex-shrink:0}.sp-msg.role-user .sp-msg-avatar{background:var(--nav-item-active);color:var(--primary-fg)}.sp-msg-avatar .icon{width:14px;height:14px;display:flex}.sp-msg-avatar .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-msg-body{max-width:calc(100% - 36px);display:flex;flex-direction:column;gap:6px}.sp-msg.role-user .sp-msg-body{align-items:flex-end}.sp-msg-head{display:flex;align-items:center;gap:8px;font-size:.7rem;color:var(--text2)}.sp-msg.role-user .sp-msg-head{flex-direction:row-reverse}.sp-msg-head strong{color:var(--text);font-weight:600}.sp-msg-text{padding:8px 11px;border-radius:12px;font-size:.82rem;line-height:1.5;color:var(--text);background:#0f172a0a;white-space:pre-wrap;word-break:break-word}[data-theme=dark] .sp-msg-text{background:#ffffff0f}.sp-msg.role-user .sp-msg-text{background:var(--nav-item-active);color:var(--primary-fg)}.sp-msg.error .sp-msg-text{color:#f43f5e}.sp-proposal{display:flex;flex-direction:column;gap:8px;width:100%}.sp-proposal-text{margin:0;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);font-family:inherit;font-size:.76rem;line-height:1.55;color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:220px;overflow-y:auto}.sp-apply-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;align-self:flex-start;padding:7px 12px;border-radius:999px;border:1px solid var(--nav-active-solid);background:transparent;color:var(--nav-active-solid);font-size:.76rem;font-weight:600;font-family:inherit;cursor:pointer;transition:all .15s}.sp-apply-btn:hover{background:var(--glow)}.sp-apply-btn.done{border-color:transparent;background:var(--nav-item-active);color:var(--primary-fg)}.sp-apply-btn .icon{width:14px;height:14px;display:flex}.sp-apply-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-typing{display:inline-flex;gap:4px;padding:10px 12px;border-radius:12px;background:#0f172a0a}[data-theme=dark] .sp-typing{background:#ffffff0f}.sp-typing i{width:6px;height:6px;border-radius:50%;background:var(--text2);opacity:.5;animation:sp-bounce 1s infinite ease-in-out}.sp-typing i:nth-child(2){animation-delay:.15s}.sp-typing i:nth-child(3){animation-delay:.3s}@keyframes sp-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:1}}.sp-composer-dock{padding:10px 12px 12px;border-top:1px solid var(--border);flex-shrink:0}.sp-composer{border-radius:16px;border:1px solid var(--border);background:var(--card);padding:10px 12px;display:flex;flex-direction:column;gap:8px}.sp-composer-textarea{width:100%;min-height:56px;max-height:140px;resize:vertical;border:none;outline:none;background:transparent;color:var(--text);font-size:.86rem;line-height:1.5;font-family:inherit}.sp-composer-textarea::placeholder{color:var(--text2)}.sp-composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.sp-param-btn{display:inline-flex;align-items:center;gap:4px;max-width:70%;padding:6px 10px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text);font-size:.76rem;font-family:inherit;cursor:pointer;transition:all .15s}.sp-param-btn:hover:not(:disabled),.sp-param-btn.open{border-color:var(--nav-active-solid);background:var(--glow)}.sp-param-btn:disabled{opacity:.5;cursor:not-allowed}.sp-param-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-param-btn .icon{width:14px;height:14px;display:flex;flex-shrink:0}.sp-param-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-send{width:34px;height:34px;border-radius:50%;border:none;background:#0f172a14;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s}.sp-send.ready{background:var(--nav-item-active);color:var(--primary-fg)}.sp-send:disabled{opacity:.45;cursor:not-allowed}.sp-send .icon{width:16px;height:16px;display:flex}.sp-send .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sp-composer-hint{margin:6px 2px 0;font-size:.68rem;color:var(--text2)}.sp-param-menu{min-width:240px;max-width:300px;padding:6px;border-radius:14px;border:1px solid var(--border);background:#fff;box-shadow:0 12px 36px #00000038;display:flex;flex-direction:column;gap:2px}[data-theme=light] .sp-param-menu{background:#fff}[data-theme=dark] .sp-param-menu{background:#141824}.sp-param-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;font-family:inherit;cursor:pointer;transition:background .15s}.sp-param-item:hover,.sp-param-item.active{background:var(--glow)}.sp-param-item-main{display:flex;align-items:center;gap:6px}.sp-param-item-main strong{font-size:.84rem}.sp-param-item small{font-size:.72rem;color:var(--text2);line-height:1.35}.sp-model-badge{font-size:.62rem;font-weight:700;padding:1px 6px;border-radius:999px;color:#fff;background:var(--nav-item-active)}.sp-model-badge.new{background:var(--primary);color:var(--primary-fg)}@media(max-width:900px){.script-stage.polish-open{flex-direction:column}.script-polish-fab{right:14px;bottom:14px;padding:10px 14px}}.ep-assets-stage{display:flex;flex-direction:column;min-height:0;height:100%;overflow:hidden}.ep-assets-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;color:var(--text2);font-size:.9rem}.ep-assets-spinner{width:28px;height:28px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--nav-active-solid);animation:ep-spin .7s linear infinite}@keyframes ep-spin{to{transform:rotate(360deg)}}.ep-assets-tabs{display:flex;align-items:center;gap:4px;flex-shrink:0;margin:-4px 0 18px;border-bottom:1px solid var(--border)}.ep-assets-subtabs{display:flex;align-items:center;gap:8px;flex-shrink:0;margin:-6px 0 16px;flex-wrap:wrap}.ep-assets-subtab{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text2);font-size:.8rem;cursor:pointer;transition:color .15s,background .15s,border-color .15s}.ep-assets-subtab .icon{width:14px;height:14px;display:flex}.ep-assets-subtab:hover{color:var(--text);background:var(--card)}.ep-assets-subtab.active{color:var(--nav-active-solid);border-color:color-mix(in srgb,var(--nav-active-solid) 40%,var(--border));background:color-mix(in srgb,var(--nav-active-solid) 10%,transparent)}.ep-assets-tab{display:inline-flex;align-items:center;gap:8px;padding:12px 14px 14px;border:none;background:transparent;color:var(--text2);font-size:var(--ws-tab-font-size, .8125rem);font-weight:500;line-height:1.25;cursor:pointer;position:relative;transition:color .2s}.ep-assets-tab .icon{width:16px;height:16px;display:flex;color:inherit}.ep-assets-tab .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.ep-assets-tab:hover{color:var(--text)}.ep-assets-tab.active{color:var(--text);font-weight:600}.ep-assets-tab.active:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:2px;border-radius:2px;background:var(--text)}.ep-assets-count{min-width:22px;height:20px;padding:0 7px;border-radius:6px;background:var(--bg2);color:var(--text2);font-size:.75rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center}.ep-assets-tab.active .ep-assets-count{background:#0000000f;color:var(--text)}[data-theme=dark] .ep-assets-tab.active .ep-assets-count{background:#ffffff1a}.ep-assets-grid{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:14px;align-content:start;padding-bottom:8px}.ep-asset-card{display:flex;flex-direction:column;gap:10px;padding:0;border:none;background:transparent;text-align:left;cursor:pointer;font:inherit;color:inherit}.ep-asset-thumb{position:relative;width:100%;aspect-ratio:3 / 4;border-radius:16px;overflow:hidden;background:var(--bg2);border:1px solid var(--border)}.ep-asset-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ep-asset-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text3)}.ep-asset-ph .icon{width:42px;height:42px;display:flex;opacity:.45}.ep-asset-ph .icon svg{width:42px;height:42px;stroke:currentColor;fill:none;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.ep-asset-badge{position:absolute;top:10px;left:10px;z-index:1;padding:3px 8px;border-radius:999px;font-size:.7rem;font-weight:600;color:#1a7a45;background:#d2f5def2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ep-asset-thumb-create{display:flex;align-items:center;justify-content:center}.ep-asset-plus{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#ffffff8c;color:var(--text2);border:1px solid var(--border)}[data-theme=dark] .ep-asset-plus{background:#ffffff0f}.ep-asset-plus .icon{width:24px;height:24px;display:flex}.ep-asset-plus .icon svg{width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.75}.ep-asset-info h3{margin:0;font-size:13px;font-weight:650;color:var(--text);line-height:1.3}.ep-asset-meta{margin:4px 0 0;font-size:11px;color:var(--text2);line-height:1.35}.ep-asset-meta.muted{color:var(--text3)}.ep-asset-pending{color:#c47a3a}.ep-asset-card:hover .ep-asset-thumb{border-color:#8b5cf64d;box-shadow:0 8px 20px #0000000f}@media(max-width:1440px){.ep-assets-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}@media(max-width:1280px){.ep-assets-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media(max-width:1100px){.ep-assets-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:980px){.ep-assets-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.ep-assets-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ep-assets-tabs{overflow-x:auto}}.aam-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:#090a0f85;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.aam-panel{position:relative;width:min(980px,100%);max-height:min(90vh,760px);display:flex;flex-direction:column;border-radius:20px;border:1px solid var(--border);background:var(--bg);box-shadow:0 24px 64px #00000059;overflow:hidden}[data-theme=light] .aam-panel{background:#fffffff0}[data-theme=dark] .aam-panel{background:#141824f5}.aam-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 14px;border-bottom:1px solid var(--border);flex-shrink:0}.aam-eyebrow{margin:0 0 4px;font-size:.72rem;color:var(--text2);letter-spacing:.02em}.aam-head h2{margin:0;font-size:1.2rem;font-weight:700;color:var(--text);line-height:1.25}.aam-name-input{width:100%;max-width:420px;margin-top:2px;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:1.2rem;font-weight:700;line-height:1.3;padding:0;border-bottom:1px solid transparent;transition:border-color .2s}.aam-name-input::placeholder{color:var(--text3);font-weight:600}.aam-name-input:focus{border-bottom-color:var(--nav-active-solid)}.aam-desc-input{width:100%;max-width:480px;margin-top:8px;border:1px solid var(--border);border-radius:10px;outline:none;background:var(--bg2);color:var(--text2);font:inherit;font-size:.82rem;line-height:1.45;padding:8px 10px;resize:vertical;min-height:56px;transition:border-color .2s,box-shadow .2s}.aam-desc-input::placeholder{color:var(--text3)}.aam-desc-input:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow);color:var(--text)}.aam-sub{margin:6px 0 0;font-size:.8rem;color:var(--text2);line-height:1.4}.aam-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.aam-badge{padding:3px 9px;border-radius:999px;font-size:.72rem;font-weight:600;color:#1a7a45;background:#d2f5def2}.aam-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(240px,320px) 1fr;gap:0;overflow:hidden}.aam-preview{padding:18px 16px 16px 20px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:12px;overflow-y:auto;background:var(--bg2)}.aam-preview-frame{width:100%;border-radius:16px;overflow:hidden;border:1px solid var(--border);background:var(--card)}.aam-preview-frame img{width:100%;height:100%;object-fit:cover;display:block}.aam-preview-ph{width:100%;height:100%;min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--text3);font-size:.8rem}.aam-preview-ph .icon{width:40px;height:40px;display:flex;opacity:.45}.aam-preview-ph .icon svg{width:40px;height:40px;stroke:currentColor;fill:none;stroke-width:1.4}.aam-preview-meta{margin:0;font-size:.78rem;color:var(--text2)}.aam-editor{padding:18px 20px 12px;display:flex;flex-direction:column;gap:14px;min-height:0;overflow-y:auto}.aam-field{display:flex;flex-direction:column;gap:8px}.aam-field-grow{flex:1;min-height:140px}.aam-field label{font-size:.78rem;font-weight:600;color:var(--text2)}.aam-chips{display:flex;flex-wrap:wrap;gap:8px}.aam-chip{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--border);border-radius:12px;background:var(--bg2);color:var(--text2);font-size:.82rem;cursor:pointer;transition:all .2s}.aam-chip .icon{width:15px;height:15px;display:flex}.aam-chip .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.aam-chip:hover:not(:disabled){color:var(--text);background:var(--glow)}.aam-chip.active{color:#fff;border-color:transparent;background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow)}.aam-chip:disabled{opacity:.45;cursor:not-allowed}.aam-prompt-box{flex:1;min-height:160px;display:flex;flex-direction:column;border:1px solid var(--border);border-radius:14px;background:var(--bg2);overflow:hidden;transition:border-color .2s,box-shadow .2s}.aam-prompt-box:focus-within{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.aam-prompt{flex:1;min-height:120px;width:100%;resize:vertical;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:.88rem;line-height:1.65;padding:12px 14px 8px}.aam-prompt-tools{display:flex;align-items:center;gap:8px;padding:4px 10px 10px;flex-shrink:0}.aam-file-input{display:none}.aam-refs{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.aam-ref{position:relative;width:36px;height:36px;border-radius:8px;overflow:hidden;border:1px solid var(--border);flex-shrink:0}.aam-ref img{width:100%;height:100%;object-fit:cover;display:block}.aam-ref-remove{position:absolute;top:-4px;right:-4px;width:16px;height:16px;border-radius:50%;border:none;background:#0f172abf;color:#fff;font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0}.aam-ref-add{width:36px;height:36px;border-radius:10px;border:1px dashed var(--border);background:transparent;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0;transition:color .15s,background .15s,border-color .15s}.aam-ref-add:hover:not(:disabled){color:var(--text);background:var(--glow);border-color:var(--nav-active-solid)}.aam-ref-add:disabled{opacity:.4;cursor:not-allowed}.aam-ref-add .icon{width:18px;height:18px;display:flex}.aam-ref-add .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75}.aam-input{width:100%;border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--bg2);color:var(--text);font:inherit;font-size:.86rem;outline:none}.aam-input:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.aam-params{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.aam-style-trigger{width:100%;display:flex;align-items:center;gap:10px;padding:6px 10px 6px 6px;border-radius:12px;border:1px solid var(--border);background:var(--bg2);color:var(--text);cursor:pointer;text-align:left;transition:border-color .2s,box-shadow .2s,background .2s}.aam-style-trigger:hover{border-color:var(--nav-active-solid);background:var(--glow)}.aam-style-trigger-thumb,.aam-style-trigger-ph{width:40px;height:40px;border-radius:8px;flex-shrink:0;overflow:hidden;background:var(--card);border:1px solid var(--border)}.aam-style-trigger-thumb{background-size:cover;background-position:center}.aam-style-trigger-ph{display:flex;align-items:center;justify-content:center;color:var(--text3)}.aam-style-trigger-ph .icon{width:16px;height:16px;display:flex}.aam-style-trigger-ph .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.75}.aam-style-trigger-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.aam-style-trigger-text strong{font-size:.82rem;font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aam-style-trigger-text small{font-size:.7rem;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aam-style-trigger>.icon{width:14px;height:14px;flex-shrink:0;display:flex;color:var(--text2)}.aam-style-trigger>.icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.aam-style-mask{position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:center;justify-content:center;padding:20px;background:#090a0f73;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.aam-style-panel{width:min(560px,100%);max-height:min(72vh,560px);display:flex;flex-direction:column;border-radius:18px;border:1px solid var(--border);background:var(--bg);box-shadow:0 20px 48px #00000047;overflow:hidden}[data-theme=light] .aam-style-panel{background:#fffffff7}[data-theme=dark] .aam-style-panel{background:#181c2afa}.aam-style-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;border-bottom:1px solid var(--border);flex-shrink:0}.aam-style-head h3{margin:0;font-size:1.05rem;font-weight:700;color:var(--text)}.aam-style-grid{padding:14px 16px 18px;overflow-y:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.aam-style-card{display:flex;flex-direction:column;gap:8px;padding:0;border:1px solid var(--border);border-radius:14px;background:var(--bg2);text-align:left;cursor:pointer;overflow:hidden;color:inherit;font:inherit;transition:border-color .2s,box-shadow .2s,transform .2s}.aam-style-card:hover{border-color:#8b5cf659;transform:translateY(-2px)}.aam-style-card.active{border-color:var(--nav-active-solid);box-shadow:0 0 0 2px var(--glow)}.aam-style-cover{position:relative;width:100%;aspect-ratio:16 / 10;background:var(--card);overflow:hidden}.aam-style-cover img{width:100%;height:100%;object-fit:cover;display:block}.aam-style-cover-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text3);background:linear-gradient(145deg,#ff5eab1f,#8b5cf626)}.aam-style-cover-ph .icon{width:28px;height:28px;display:flex}.aam-style-cover-ph .icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.5}.aam-style-check{position:absolute;top:8px;right:8px;width:24px;height:24px;border-radius:50%;background:var(--nav-item-active);color:var(--primary-fg);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px var(--nav-item-shadow)}.aam-style-check .icon{width:13px;height:13px;display:flex}.aam-style-check .icon svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.2}.aam-style-info{padding:0 10px 10px;display:flex;flex-direction:column;gap:3px}.aam-style-info strong{font-size:.86rem;font-weight:650;color:var(--text)}.aam-style-info small{font-size:.72rem;color:var(--text2);line-height:1.35}.aam-select{position:relative}.aam-select-btn{width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--bg2);color:var(--text);font-size:.82rem;cursor:pointer;text-align:left}.aam-select-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.aam-select-btn .icon{width:14px;height:14px;flex-shrink:0;display:flex;color:var(--text2)}.aam-select-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.aam-menu{position:absolute;top:calc(100% + 6px);left:0;right:0;padding:6px;border-radius:12px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 12px 32px #0000002e;z-index:5;display:flex;flex-direction:column;gap:2px}[data-theme=light] .aam-menu{background:#fffffff5}[data-theme=dark] .aam-menu{background:#1c2030fa}.aam-menu-item{text-align:left;padding:8px 10px;border:none;border-radius:8px;background:transparent;color:var(--text2);font-size:.8rem;cursor:pointer}.aam-menu-item:hover,.aam-menu-item.active{background:var(--glow);color:var(--text)}.aam-status{margin:0;font-size:.78rem;color:var(--text2)}.aam-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 20px 18px;border-top:1px solid var(--border);flex-shrink:0}.aam-foot-right{display:flex;align-items:center;gap:10px}.aam-count{min-width:48px;height:36px;padding:0 12px;border-radius:999px;border:1px solid var(--border);background:var(--bg2);color:var(--text);font-size:.82rem;font-weight:600;cursor:pointer}.aam-count:hover{background:var(--glow)}@media(max-width:820px){.aam-body{grid-template-columns:1fr;overflow-y:auto}.aam-preview{border-right:none;border-bottom:1px solid var(--border);max-height:280px}.aam-preview-frame{max-width:200px;margin:0 auto}.aam-params{grid-template-columns:1fr}}.sb-stage{display:flex;gap:16px;min-height:0;height:100%;overflow:visible;padding:16px}.sb-stage.is-list{display:block;overflow-y:auto;overflow-x:hidden}.sb-back-list{display:flex;align-items:center;gap:6px;width:100%;margin-bottom:10px;padding:6px 8px;border:none;border-radius:10px;background:transparent;color:var(--text2);font:inherit;font-size:.78rem;cursor:pointer}.sb-back-list:hover{color:var(--text);background:var(--glow)}.sb-back-list .icon{width:14px;height:14px;display:flex}.sb-back-list .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.ev-list{display:flex;flex-direction:column;gap:22px;min-height:100%}.ev-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.ev-head-text h2{margin:0 0 6px;font-size:14px;font-weight:650;line-height:1.3;letter-spacing:-.01em;color:var(--text)}.ev-head-text p{margin:0;font-size:12px;color:var(--text2);line-height:1.5}.ev-head-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.ev-btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);color:var(--text);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.ev-btn:hover{border-color:var(--nav-active-solid)}.ev-btn.active{border-color:var(--nav-active-solid);background:var(--glow);color:var(--nav-active-solid)}.ev-btn:disabled{opacity:.55;cursor:not-allowed}.ev-btn .icon{width:14px;height:14px;display:flex}.ev-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.ev-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.ev-card{display:flex;gap:16px;padding:16px;border-radius:18px;border:1px solid var(--border);background:var(--bg2);min-height:168px}[data-theme=dark] .ev-card{background:#ffffff0a}.ev-card.is-batch{cursor:pointer}.ev-card.selected{border-color:var(--nav-active-solid);box-shadow:0 0 0 1px var(--nav-active-solid)}.ev-thumb{flex-shrink:0;width:92px;height:128px;border-radius:12px;overflow:hidden;background:#00000047}.ev-thumb img{width:100%;height:100%;object-fit:cover;display:block}.ev-thumb-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text2);opacity:.45}.ev-thumb-ph .icon{width:28px;height:28px;display:flex}.ev-thumb-ph .icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.5}.ev-body{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start}.ev-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.ev-tags span{padding:2px 7px;border-radius:6px;background:#7f7f7f2e;color:var(--text2);font-size:11px}.ev-body h3{margin:0;font-size:13px;font-weight:650;letter-spacing:-.01em;color:var(--text);line-height:1.35}.ev-stats{margin:6px 0 0;font-size:11px;color:var(--text2)}.ev-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:12px}.ev-mode{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 12px;border-radius:999px;font:inherit;font-size:12px;font-weight:600;cursor:pointer}.ev-mode .icon{width:14px;height:14px;display:flex}.ev-mode .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.85}.ev-mode-agent{border:none;background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 4px 14px var(--nav-item-shadow)}.ev-mode-agent:hover{filter:brightness(1.06)}.ev-mode-free{border:1px solid var(--border);background:var(--card);color:var(--text)}.ev-mode-free:hover{border-color:var(--nav-active-solid)}@media(max-width:960px){.ev-grid{grid-template-columns:1fr}}.sb-boot{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text2);font-size:.9rem}.sb-mode-pick{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px 16px;text-align:center}.sb-mode-pick-head{display:flex;flex-direction:column;align-items:center;gap:8px;max-width:420px}.sb-mode-pick-head h2{margin:0;font-size:1.35rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.sb-mode-pick-head p{margin:0;font-size:.9rem;line-height:1.5;color:var(--text2)}.sb-mode-cards{display:grid;grid-template-columns:repeat(2,minmax(180px,220px));gap:16px;justify-content:center;width:100%;max-width:480px}.sb-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 18px;border-radius:16px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:left;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s,background .2s;box-shadow:0 8px 24px var(--shadow);font:inherit;color:inherit}[data-theme=light] .sb-mode-card{background:color-mix(in srgb,var(--card) 88%,#fff)}[data-theme=dark] .sb-mode-card{background:color-mix(in srgb,var(--card) 90%,transparent)}.sb-mode-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--accent, #3b82f6) 40%,var(--border));box-shadow:0 12px 28px var(--shadow)}.sb-mode-card:focus-visible{outline:2px solid var(--accent, #3b82f6);outline-offset:2px}.sb-mode-icon{width:40px;height:40px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:#fff;background:var(--nav-item-active);box-shadow:0 4px 12px var(--nav-item-shadow)}.sb-mode-icon[data-mode=agent]{background:linear-gradient(145deg,#0ea5e9,#2563eb)}.sb-mode-icon[data-mode=free]{background:linear-gradient(145deg,#64748b,#334155)}.sb-mode-icon .icon{width:20px;height:20px;display:flex}.sb-mode-icon .icon svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.sb-mode-card strong{font-size:1.02rem;font-weight:700;color:var(--text)}.sb-mode-card>span:last-child{font-size:.8rem;line-height:1.45;color:var(--text2)}@media(max-width:560px){.sb-mode-cards{grid-template-columns:1fr;max-width:280px}}.sb-list{width:148px;flex-shrink:0;max-height:100%;overflow-x:hidden;overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:4px 4px 8px 2px}.sb-list-item{display:flex;flex-direction:column;align-items:center;gap:8px;padding:0;border:none;background:transparent;cursor:pointer;color:var(--text2);font:inherit}.sb-list-insert{position:relative;display:flex;align-items:center;justify-content:center;flex-shrink:0;height:28px;margin:2px 0}.sb-list-insert:before{content:"";position:absolute;left:10%;right:10%;top:50%;height:1px;background:var(--border);pointer-events:none}.sb-list-insert-btn{position:relative;z-index:1;width:22px;height:22px;padding:0;border-radius:50%;border:1px solid var(--border);background:var(--card);color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 1px 3px #0000000f;transition:border-color .15s,color .15s,background .15s,transform .15s,box-shadow .15s}.sb-list-insert-btn:hover{color:var(--text);border-color:#8b5cf673;background:var(--bg);transform:scale(1.06);box-shadow:0 2px 8px #8b5cf62e}.sb-list-insert-btn:focus-visible{outline:2px solid rgba(139,92,246,.5);outline-offset:2px}.sb-list-insert-btn .icon{width:12px;height:12px;display:flex}.sb-list-insert-btn .icon svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2}.sb-list-insert-btn[data-tip]:after{content:attr(data-tip);position:absolute;left:calc(100% + 10px);top:50%;transform:translateY(-50%);padding:5px 10px;border-radius:8px;background:var(--text);color:var(--bg);font-size:.72rem;font-weight:500;white-space:nowrap;line-height:1.2;opacity:0;pointer-events:none;box-shadow:0 4px 14px #0000002e;transition:opacity .15s;z-index:5}.sb-list-insert-btn[data-tip]:before{content:"";position:absolute;left:calc(100% + 4px);top:50%;transform:translateY(-50%);border:5px solid transparent;border-right-color:var(--text);opacity:0;pointer-events:none;transition:opacity .15s;z-index:5}.sb-list-insert-btn:hover[data-tip]:after,.sb-list-insert-btn:hover[data-tip]:before,.sb-list-insert-btn:focus-visible[data-tip]:after,.sb-list-insert-btn:focus-visible[data-tip]:before{opacity:1}.sb-list-insert-btn--empty{width:36px;height:36px}.sb-list-insert-btn--empty .icon{width:16px;height:16px}.sb-list-insert-btn--empty .icon svg{width:16px;height:16px}.sb-list-empty-wrap{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 8px}.sb-list-thumb{width:100%;aspect-ratio:16 / 10;border-radius:12px;overflow:hidden;border:2px solid transparent;background:var(--bg2);transition:border-color .2s,box-shadow .2s}.sb-list-item.active .sb-list-thumb{border-color:var(--text);box-shadow:0 0 0 1px var(--border)}.sb-list-item:hover .sb-list-thumb{border-color:#8b5cf659}.sb-list-thumb img{width:100%;height:100%;object-fit:cover;display:block}.sb-list-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:var(--text3)}.sb-list-ph .icon{width:28px;height:28px;display:flex;opacity:.5}.sb-list-ph .icon svg{width:28px;height:28px;stroke:currentColor;fill:none;stroke-width:1.4}.sb-list-label{font-size:.78rem;text-align:center;line-height:1.3}.sb-list-item.active .sb-list-label{color:var(--text);font-weight:600}.sb-list-empty{margin:0;font-size:.8rem;color:var(--text3);text-align:center}.sb-main-col{flex:1;min-width:0;min-height:0;height:100%;display:flex;flex-direction:column;gap:0;overflow:visible}.sb-work-row{flex:1;min-width:0;min-height:0;display:flex;gap:12px;overflow:hidden}.sb-detail{flex:1;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:14px;padding-right:2px;padding-bottom:10px}.sb-preview{width:300px;flex-shrink:0;min-height:0;display:flex;flex-direction:column;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#fff;overflow:hidden;transition:width .22s ease}[data-theme=dark] .sb-preview{background:#151922;border-color:#ffffff1a}.sb-preview.collapsed{width:44px;background:#fff}[data-theme=dark] .sb-preview.collapsed{background:#151922}.sb-preview-rail{width:100%;height:100%;border:none;background:transparent;color:var(--text2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;font:inherit;font-size:.72rem;padding:12px 0}.sb-preview-rail span{writing-mode:vertical-rl;letter-spacing:.12em}.sb-preview-rail .icon{width:18px;height:18px;display:flex}.sb-preview-rail .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-preview-rail:hover{color:var(--text);background:#0f172a0a}[data-theme=dark] .sb-preview-rail:hover{background:#ffffff0a}.sb-preview-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 12px 10px;border-bottom:1px solid rgba(15,23,42,.08);flex-shrink:0}[data-theme=dark] .sb-preview-head{border-bottom-color:#ffffff14}.sb-preview-titles{display:flex;flex-direction:column;gap:2px;min-width:0}.sb-preview-titles strong{font-size:.88rem;color:var(--text)}.sb-preview-titles span{font-size:.72rem;color:var(--text3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-preview-fold{width:30px;height:30px;border-radius:8px;border:1px solid rgba(15,23,42,.1);background:#fff;color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0;flex-shrink:0}[data-theme=dark] .sb-preview-fold{background:#1e2433;border-color:#ffffff1f}.sb-preview-fold .icon{width:15px;height:15px;display:flex}.sb-preview-fold .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-preview-fold:hover{color:var(--text)}.sb-preview-stage{position:relative;flex:1;min-height:0;margin:12px;border-radius:12px;background:#0b0d12;overflow:hidden;display:flex;align-items:center;justify-content:center}.sb-preview-video{width:100%;height:100%;object-fit:contain;display:block;background:#000}.sb-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#ffffff8c;text-align:center;padding:16px}.sb-preview-empty p{margin:0;font-size:.84rem;color:#ffffffc7}.sb-preview-empty small{font-size:.72rem;line-height:1.4;color:#ffffff6b}.sb-preview-empty-ico{width:44px;height:44px;border-radius:12px;background:#ffffff0f;display:flex;align-items:center;justify-content:center;color:#ffffff8c;margin-bottom:4px}.sb-preview-empty-ico .icon{width:22px;height:22px;display:flex}.sb-preview-empty-ico .icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.5}@media(max-width:1100px){.sb-preview:not(.collapsed){width:240px}}.sb-detail-empty{display:flex;align-items:center;justify-content:center;color:var(--text3)}.sb-detail-head{display:flex;flex-direction:column;gap:12px;flex-shrink:0}.sb-detail-title-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 16px}.sb-detail-title-row h2{margin:0;font-size:1.35rem;font-weight:700;color:var(--text)}.sb-detail-hint{margin:0;flex:1;min-width:200px;font-size:.78rem;color:var(--text3);line-height:1.45}.sb-asset-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex-shrink:0;padding:2px 0}.sb-asset-group-label{font-size:.78rem;font-weight:700;color:var(--text);white-space:nowrap;line-height:1}.sb-ref-label-wrap{display:inline-flex;align-items:center;gap:4px}.sb-ref-help{position:relative;display:inline-flex;align-items:center}.sb-ref-help-btn{width:18px;height:18px;padding:0;border:none;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--text3);cursor:help}.sb-ref-help-btn .icon{width:14px;height:14px;display:flex}.sb-ref-help-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}.sb-ref-help-btn:hover,.sb-ref-help-btn:focus-visible{color:var(--text);outline:none}.sb-ref-help-pop{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);min-width:132px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:#1a1f2e;color:#fff;box-shadow:0 10px 28px #00000059;font-size:.75rem;line-height:1.55;white-space:nowrap;z-index:20;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,visibility .12s ease}.sb-ref-help-pop:after{content:"";position:absolute;left:50%;top:100%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1a1f2e}.sb-ref-help:hover .sb-ref-help-pop,.sb-ref-help:focus-within .sb-ref-help-pop{opacity:1;visibility:visible}.sb-ref-help-title{margin:0 0 4px;font-weight:600}.sb-ref-help-pop p{margin:0}[data-theme=light] .sb-ref-help-pop{background:#fff;color:#0f172a;border-color:#0f172a1f;box-shadow:0 10px 28px #0f172a24}[data-theme=light] .sb-ref-help-pop:after{border-top-color:#fff}.sb-asset-sep{margin:0 4px;color:var(--text3);opacity:.55;font-size:.85rem;line-height:1;-webkit-user-select:none;user-select:none}.sb-asset-item{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;cursor:zoom-in;color:inherit;position:relative}.sb-asset-item-main{display:inline-flex;align-items:center;gap:6px;padding:0;border:none;background:transparent;cursor:zoom-in;color:inherit}.sb-asset-item:hover .sb-asset-chip,.sb-asset-item-main:hover .sb-asset-chip{border-color:var(--primary, #5b8cff);transform:translateY(-1px)}.sb-asset-item--ref{padding-right:2px}.sb-asset-remove{position:absolute;top:-6px;right:-6px;z-index:2;width:18px;height:18px;border:none;border-radius:50%;padding:0;display:flex;align-items:center;justify-content:center;background:#0f172ac7;color:#fff;font-size:13px;line-height:1;cursor:pointer;transition:background .15s ease,transform .15s ease}.sb-asset-remove:hover{background:#ef4444;transform:scale(1.06)}[data-theme=light] .sb-asset-remove{background:#0f172ab8;box-shadow:0 1px 3px #0f172a33}.sb-asset-item-label{font-size:.78rem;color:var(--text2);white-space:nowrap;line-height:1}.sb-asset-chip{width:40px;height:40px;border-radius:10px;border:1px solid var(--border);background:var(--bg2);overflow:hidden;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;position:relative;transition:border-color .15s ease,transform .15s ease}.sb-asset-chip.has-name{background:#0f172a14}[data-theme=dark] .sb-asset-chip.has-name{background:#ffffff14}.sb-asset-chip.has-name .sb-asset-ph{margin-bottom:10px}.sb-asset-chip-name{position:absolute;left:2px;right:2px;bottom:2px;font-size:.52rem;line-height:1.15;color:var(--text);text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.sb-asset-add{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;padding:0;cursor:pointer;color:#fff;background:#ffffff24;border:1.5px solid rgba(255,255,255,.32);transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}[data-theme=light] .sb-asset-add{color:#0f172a;background:#fff;border:1.5px solid rgba(15,23,42,.2);box-shadow:0 1px 4px #0f172a1a}.sb-asset-add:hover{background:#ffffff38;border-color:#ffffff80;transform:translateY(-1px)}[data-theme=light] .sb-asset-add:hover{background:#f8fafc;border-color:#0f172a59}.sb-ref-file{display:none}.sb-asset-add .icon{width:18px;height:18px;display:flex}.sb-asset-add .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2.75;stroke-linecap:round}.sb-asset-chip img{width:100%;height:100%;object-fit:cover;display:block}.sb-asset-ph{color:var(--text3);display:flex}.sb-asset-ph .icon{width:18px;height:18px;display:flex}.sb-asset-ph .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-media-lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px 28px;background:#080a10c7;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.sb-media-lightbox-close{position:absolute;top:16px;right:18px;width:36px;height:36px;border:none;border-radius:999px;background:#ffffff1f;color:#fff;font-size:1.4rem;line-height:1;cursor:pointer}.sb-media-lightbox-close:hover{background:#ffffff38}.sb-media-lightbox-body{max-width:min(920px,92vw);max-height:min(78vh,820px);display:flex;align-items:center;justify-content:center}.sb-media-lightbox-body img,.sb-media-lightbox-body video{max-width:100%;max-height:min(78vh,820px);border-radius:12px;box-shadow:0 18px 50px #00000073;background:#111}.sb-media-lightbox-caption{margin:0;font-size:.85rem;color:#ffffffc7}.sb-media-lightbox-empty{margin:0;color:#ffffffb3}.sb-card{flex:1 1 auto;min-height:0;max-height:100%;border-radius:16px;border:1px solid var(--border);background:#fff;padding:18px 18px 16px;display:flex;flex-direction:column;gap:16px;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}[data-theme=dark] .sb-card{background:var(--bg2)}.sb-doc-wrap{position:relative;flex:0 0 auto;min-height:120px}.sb-doc{min-height:120px;outline:none;color:var(--text);font-size:.9rem;line-height:1.75;cursor:text}.sb-doc-block{margin:0 0 16px}.sb-doc-shot{margin:0 0 18px;line-height:1.75}.sb-doc-shot-label{font-size:.9rem;font-weight:400;color:var(--text)}.sb-doc-shot-body{display:inline}.sb-doc-shot--freeform .sb-doc-shot-body{display:block;min-height:4.5em;white-space:pre-wrap;word-break:break-word}.sb-doc-shot--freeform .sb-doc-shot-body:empty:before{content:attr(data-placeholder);color:var(--text3);pointer-events:none}.sb-scene-line{margin:0;font-size:.9rem;color:var(--text);line-height:1.7}.sb-inline-tag{display:inline-flex;align-items:center;gap:5px;max-width:100%;margin:0 2px;padding:2px 8px 2px 3px;border-radius:8px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.82rem;font-weight:600;vertical-align:middle;line-height:1.4}.sb-inline-tag>.icon{width:14px;height:14px;display:flex;flex-shrink:0;color:var(--text2)}.sb-inline-tag>.icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.sb-inline-tag-img{width:20px;height:20px;border-radius:5px;overflow:hidden;flex-shrink:0}.sb-inline-tag-img img{width:100%;height:100%;object-fit:cover;display:block}.sb-shot{display:flex;flex-direction:column;gap:8px}.sb-shot-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.sb-shot-meta strong{font-size:.95rem;color:var(--text)}.sb-camera{font-size:.82rem;color:var(--text2)}.sb-editor-wrap{position:relative}.sb-editor{min-height:72px;padding:10px 12px;border-radius:12px;border:1px solid transparent;background:transparent;color:var(--text2);font-size:.88rem;line-height:1.75;outline:none;transition:border-color .2s,background .2s,box-shadow .2s}.sb-editor:hover,.sb-editor:focus{border-color:var(--border);background:var(--card)}.sb-editor:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow);color:var(--text)}.sb-editor:empty:before{content:attr(data-placeholder);color:var(--text3);pointer-events:none}.sb-editor .sb-chip{cursor:default;-webkit-user-select:none;user-select:none}.sb-chip-icon{font-size:.65rem;opacity:.55;padding:0 2px}.sb-mention-pop{display:flex;width:min(480px,94vw);max-height:320px;border-radius:14px;border:1px solid var(--border);background:var(--card);box-shadow:0 16px 40px #0003;overflow:hidden}.sb-mention-pop:has(.sb-mention-tools){overflow:visible}.sb-mention-left:has(.sb-mention-tools){overflow:visible}.sb-mention-pop-fixed{position:fixed;z-index:1300;margin:0}[data-theme=light] .sb-mention-pop{background:#fffffffa}[data-theme=dark] .sb-mention-pop{background:#181c2afa}.sb-mention-tools{padding:8px;display:flex;flex-direction:column;gap:4px;overflow-y:auto;max-height:280px}.sb-mention-tool{display:flex;align-items:center;gap:10px;width:100%;padding:10px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:not-allowed;opacity:.75;font:inherit}.sb-mention-tool:hover{background:var(--glow)}.sb-mention-tool-ico{width:28px;height:28px;border-radius:8px;background:var(--bg2);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}.sb-mention-tool-ico .icon{width:14px;height:14px;display:inline-flex}.sb-mention-tool-ico .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}.sb-mention-tool span:not(.sb-mention-tool-ico):not(.icon){display:flex;flex-direction:column;gap:2px;min-width:0}.sb-mention-tool strong{font-size:.84rem;font-weight:650}.sb-mention-tool small{font-size:.72rem;color:var(--text2)}.sb-frame-ref{position:relative}.sb-frame-ref-toggle{cursor:pointer;opacity:1}.sb-frame-ref-text{flex:1;min-width:0}.sb-frame-ref-chevron{flex-shrink:0;width:14px;height:14px;color:var(--text2);transition:transform .15s ease;transform:rotate(0)}.sb-frame-ref-chevron.open{transform:rotate(180deg)}.sb-frame-ref-chevron svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.sb-frame-ref-list{display:flex;flex-direction:column;gap:2px;padding:0 4px 6px 38px}.sb-frame-ref-item{display:flex;align-items:center;gap:10px;width:100%;padding:6px 8px;border:none;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.sb-frame-ref-item:hover{background:var(--glow)}.sb-frame-ref-thumb{width:44px;height:28px;border-radius:5px;overflow:hidden;flex-shrink:0;background:var(--bg2);border:1px solid var(--border);display:inline-flex;align-items:center;justify-content:center}.sb-frame-ref-thumb img{width:100%;height:100%;object-fit:cover;display:block}.sb-frame-ref-thumb .icon{width:14px;height:14px;color:var(--text2)}.sb-frame-ref-thumb .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}.sb-frame-ref-label{font-size:.8rem;font-weight:500;color:var(--text)}.sb-frame-ref-tip{position:absolute;right:calc(100% + 12px);top:8px;width:220px;padding:12px 14px;border-radius:10px;background:#fff;color:#1a1a1a;box-shadow:0 8px 28px #0000002e;z-index:5;pointer-events:none}.sb-frame-ref-tip strong{display:block;font-size:.82rem;font-weight:650;margin-bottom:6px}.sb-frame-ref-tip p{margin:0;font-size:.75rem;line-height:1.45;color:#555}[data-theme=dark] .sb-frame-ref-tip{background:#fff;color:#1a1a1a}.sb-mention-left{flex:1;min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--border)}.sb-mention-tabs{display:flex;gap:4px;padding:8px;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.sb-mention-subtabs{display:flex;gap:4px;padding:6px 8px 0;flex-shrink:0}.sb-mention-subtab{flex:1;padding:6px 8px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--text2);font-size:.74rem;cursor:pointer}.sb-mention-subtab.active{background:var(--glow);color:var(--text);font-weight:600;border-color:transparent}.sb-mention-upload{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin:6px 8px 0;padding:8px 10px;border:1px dashed var(--border);border-radius:10px;background:transparent;color:var(--text);font-size:.78rem;cursor:pointer;flex-shrink:0}.sb-mention-upload:hover{background:var(--glow);border-style:solid}.sb-mention-upload .icon{width:14px;height:14px;display:inline-flex}.sb-mention-upload .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.sb-mention-tab{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:none;border-radius:10px;background:transparent;color:var(--text2);font-size:.74rem;white-space:nowrap;cursor:pointer}.sb-mention-tab.active{background:var(--glow);color:var(--text);font-weight:600}.sb-mention-tab:disabled{opacity:.4;cursor:not-allowed}.sb-mention-tab .icon{width:14px;height:14px;display:flex}.sb-mention-tab .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.sb-mention-scroll{flex:1;min-height:0;overflow-y:auto;padding:6px 8px 8px}.sb-mention-group{margin:8px 6px 4px;font-size:.72rem;color:var(--text3);font-weight:600}.sb-mention-item{width:100%;display:flex;align-items:center;gap:10px;padding:8px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit}.sb-mention-item:hover,.sb-mention-item.active{background:var(--glow)}.sb-mention-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;border:1px solid var(--border);background:var(--bg2);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text3)}.sb-mention-avatar img{width:100%;height:100%;object-fit:cover}.sb-mention-avatar .icon{width:16px;height:16px;display:flex}.sb-mention-avatar .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-mention-text{min-width:0;display:flex;flex-direction:column;gap:2px}.sb-mention-text strong{font-size:.84rem;font-weight:650}.sb-mention-text small{font-size:.7rem;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sb-mention-empty{margin:16px 8px;font-size:.8rem;color:var(--text3);text-align:center}.sb-mention-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border:none;border-top:1px solid var(--border);background:transparent;color:var(--text2);font-size:.8rem;cursor:not-allowed;opacity:.7}.sb-mention-footer .icon{width:14px;height:14px;display:flex}.sb-mention-footer .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.75}.sb-mention-preview{width:180px;flex-shrink:0;padding:12px;display:flex;flex-direction:column;gap:10px;background:var(--bg2)}.sb-mention-preview img,.sb-mention-preview-ph{width:100%;aspect-ratio:3 / 4;border-radius:12px;object-fit:cover;border:1px solid var(--border)}.sb-mention-preview-ph{display:flex;align-items:center;justify-content:center;color:var(--text3);background:var(--card)}.sb-mention-preview-ph .icon{width:36px;height:36px;display:flex;opacity:.45}.sb-mention-preview-ph .icon svg{width:36px;height:36px;stroke:currentColor;fill:none;stroke-width:1.4}.sb-mention-preview>span{font-size:.82rem;font-weight:650;color:var(--text)}.sb-shot-body{margin:0;font-size:.88rem;color:var(--text2);line-height:1.75}.sb-card-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:4px;margin-top:auto}.sb-status{margin:0;flex-shrink:0;font-size:.78rem;color:var(--text2)}.sb-gen-dock{flex-shrink:0;margin-top:2px;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#fff;box-shadow:0 -4px 16px #0f172a0f;padding:10px 12px;z-index:30;position:relative;overflow:visible}[data-theme=light] .sb-gen-dock{background:#fff}[data-theme=dark] .sb-gen-dock{border-color:#ffffff1f;background:#1a1f2c;box-shadow:0 -6px 22px #00000059}.sb-gen{display:flex;flex-direction:column;gap:0;margin:0;padding:0;border:none;position:relative;z-index:1}.sb-gen-file{display:none}.sb-ref-entry{position:relative;display:inline-flex;align-items:center;gap:8px}.sb-ref-trigger{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border-radius:8px;border:1px solid rgba(15,23,42,.12);background:#fff;color:var(--text);font:inherit;font-size:.82rem;cursor:pointer}.sb-ref-trigger:hover,.sb-ref-trigger.open{border-color:var(--text3)}.sb-ref-trigger.active{box-shadow:inset 0 0 0 1px #8b5cf659}.sb-ref-trigger .icon{width:14px;height:14px;display:flex;opacity:.75}.sb-ref-trigger .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.7}.sb-ref-count-badge{min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#8b5cf6e6;color:#fff;font-size:.68rem;font-style:normal;font-weight:700;line-height:16px;text-align:center}.sb-ref-preview{display:inline-flex;align-items:center;gap:4px}.sb-ref-preview-thumb{width:28px;height:28px;border-radius:7px;border:1px solid var(--border);background:var(--bg2);overflow:hidden;padding:0;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text3)}.sb-ref-preview-thumb img{width:100%;height:100%;object-fit:cover;display:block}.sb-ref-preview-thumb .icon{width:12px;height:12px;display:flex}.sb-ref-preview-thumb .icon svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-ref-pop{position:absolute;left:0;bottom:calc(100% + 8px);z-index:60;width:min(440px,calc(100vw - 48px));border-radius:14px;border:1px solid rgba(15,23,42,.12);background:#fff;box-shadow:0 14px 40px #0f172a29;padding:10px}[data-theme=dark] .sb-ref-pop{background:#1e2433;border-color:#ffffff24;box-shadow:0 14px 40px #00000073}.sb-gen-dock .sb-gen-select-btn,.sb-gen-dock .sb-ref-trigger{background:#fff;border-color:#0f172a1f}[data-theme=dark] .sb-gen-dock .sb-gen-select-btn,[data-theme=dark] .sb-gen-dock .sb-ref-trigger,[data-theme=dark] .sb-ref-trigger{background:#252b3b;border-color:#ffffff24;color:#fff}.sb-ref{display:flex;flex-direction:column;gap:10px}.sb-ref-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;padding:3px;border-radius:10px;background:var(--bg2)}.sb-ref-tab{border:none;border-radius:8px;padding:8px 10px;font:inherit;font-size:.82rem;color:var(--text2);background:transparent;cursor:pointer;transition:background .15s,color .15s}.sb-ref-tab:hover{color:var(--text)}.sb-ref-tab.active{background:#ffffff14;color:var(--text);font-weight:600;box-shadow:inset 0 0 0 1px var(--border)}[data-theme=light] .sb-ref-tab.active{background:#fff;box-shadow:0 1px 2px #0000000f}.sb-ref-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;min-height:32px}.sb-ref-counts{margin:0;font-size:.78rem;color:var(--text3);display:flex;flex-wrap:wrap;gap:10px}.sb-ref-actions{display:flex;align-items:center;gap:8px}.sb-ref-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg2);color:var(--text);font:inherit;font-size:.78rem;cursor:pointer}.sb-ref-btn:hover{border-color:var(--text3)}.sb-ref-btn .icon{width:14px;height:14px;display:flex}.sb-ref-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.7}.sb-ref-body{min-height:88px;border-radius:10px;background:#0000002e;display:flex;align-items:center;justify-content:center;padding:10px}[data-theme=light] .sb-ref-body{background:#00000008}.sb-ref-empty{margin:0;font-size:.8rem;color:var(--text3);text-align:center;padding:18px 10px}.sb-ref-grid{width:100%;display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}.sb-ref-thumb{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--bg2)}.sb-ref-thumb img{width:100%;height:100%;object-fit:cover;display:block}.sb-ref-thumb-ph{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;color:var(--text3);font-size:.68rem}.sb-ref-thumb-ph .icon{width:18px;height:18px;display:flex}.sb-ref-thumb-ph .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.5}.sb-ref-thumb-x{position:absolute;top:4px;right:4px;width:20px;height:20px;border:none;border-radius:50%;background:#0000008c;color:#fff;cursor:pointer;line-height:1;font-size:14px}.sb-ref-thumb.add{display:flex;align-items:center;justify-content:center;border-style:dashed;color:var(--text3);cursor:pointer;background:transparent;padding:0}.sb-ref-thumb.add .icon{width:18px;height:18px;display:flex}.sb-ref-thumb.add .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7}.sb-frames{display:grid;grid-template-columns:1fr auto 1fr;gap:8px;align-items:center}.sb-frame-slot{position:relative;min-height:96px;border-radius:12px;border:1px dashed var(--border);background:#0000002e;color:var(--text3);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;cursor:pointer;font:inherit;font-size:.84rem;overflow:hidden;padding:0}[data-theme=light] .sb-frame-slot{background:#00000008}.sb-frame-slot.filled{border-style:solid}.sb-frame-slot img{width:100%;height:100%;object-fit:cover;position:absolute;top:0;right:0;bottom:0;left:0}.sb-frame-slot .icon{width:22px;height:22px;display:flex}.sb-frame-slot .icon svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.6}.sb-frame-clear{position:absolute;top:6px;right:6px;z-index:1;width:22px;height:22px;border-radius:50%;background:#0000008c;color:#fff;display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1}.sb-frame-swap{width:34px;height:34px;border-radius:50%;border:1px solid var(--border);background:var(--bg2);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.sb-frame-swap svg{width:16px;height:16px}.sb-frame-swap:hover{color:var(--text);border-color:var(--text3)}.sb-gen-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:4px 2px 0}.sb-gen-params{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;flex:1}.sb-gen-select{position:relative}.sb-gen-select-btn{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 10px;border-radius:8px;border:1px solid rgba(15,23,42,.12);background:#fff;color:var(--text);font:inherit;font-size:.82rem;cursor:pointer}.sb-gen-select-btn:hover{border-color:#0f172a38}.sb-gen-select-btn .icon{width:14px;height:14px;display:flex;opacity:.7}.sb-gen-select-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}.sb-gen-menu{position:absolute;left:0;bottom:calc(100% + 6px);z-index:40;min-width:100%;padding:6px;border-radius:10px;border:1px solid rgba(15,23,42,.12);background:#fff;box-shadow:0 10px 28px #0f172a29;display:flex;flex-direction:column;gap:2px}[data-theme=dark] .sb-gen-menu{background:#1e2433;border-color:#ffffff24;box-shadow:0 10px 28px #00000073}[data-theme=dark] .sb-gen-select-btn{background:#252b3b;border-color:#ffffff24;color:#fff}.sb-gen-menu-wide{min-width:240px}.sb-gen-menu-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;border:none;border-radius:8px;background:transparent;color:var(--text);font:inherit;font-size:.84rem;text-align:left;padding:8px 10px;cursor:pointer}.sb-gen-menu-item:hover,.sb-gen-menu-item.active{background:#0f172a0f}[data-theme=dark] .sb-gen-menu-item:hover,[data-theme=dark] .sb-gen-menu-item.active{background:#ffffff14}.sb-gen-menu-main{display:inline-flex;align-items:center;gap:8px}.sb-gen-menu-main strong{font-weight:600}.sb-gen-menu-item small{color:var(--text3);font-size:.72rem;line-height:1.35}.sb-gen-badge{font-size:.66rem;font-weight:700;line-height:1;padding:3px 5px;border-radius:4px;color:#fff}.sb-gen-badge.new{background:#e11d48}.sb-gen-badge.rec{background:#ea580c}.sb-gen-toggle{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 4px 0 8px;font-size:.82rem;color:var(--text2);cursor:pointer;-webkit-user-select:none;user-select:none}.sb-gen-toggle input{position:absolute;opacity:0;pointer-events:none}.sb-gen-switch{width:36px;height:20px;border-radius:999px;background:#ffffff24;position:relative;transition:background .2s}[data-theme=light] .sb-gen-switch{background:#00000026}.sb-gen-switch:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #00000040}.sb-gen-toggle input:checked+.sb-gen-switch{background:#22c55e}.sb-gen-toggle input:checked+.sb-gen-switch:after{transform:translate(16px)}.sb-gen-cta{display:inline-flex;align-items:center;gap:10px;height:38px;padding:0 16px;border:none;border-radius:10px;background:var(--nav-item-active);color:var(--primary-fg);font:inherit;font-size:.88rem;font-weight:650;cursor:pointer;flex-shrink:0;margin-left:auto;box-shadow:0 4px 14px var(--nav-item-shadow)}.sb-gen-cta:hover:not(:disabled){filter:brightness(1.05)}.sb-gen-cta:disabled{opacity:.55;cursor:not-allowed;filter:none;box-shadow:none}.sb-gen-credit{display:inline-flex;align-items:center;gap:4px;font-weight:600;opacity:.85}.sb-gen-credit .icon{width:13px;height:13px;display:flex}.sb-gen-credit .icon svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8}.sb-ai-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1400;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:24px}.sb-ai-panel{width:min(980px,100%);max-height:min(84vh,760px);overflow:hidden;display:flex;flex-direction:column;border-radius:16px;border:1px solid var(--border);background:var(--bg2);box-shadow:0 24px 64px #0006}.sb-ai-head{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border)}.sb-ai-head h3{margin:0;font-size:1rem}.sb-ai-body{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(220px,.7fr);gap:0;overflow:hidden}.sb-ai-main{padding:14px 16px;display:flex;flex-direction:column;gap:12px;overflow-y:auto;border-right:1px solid var(--border)}.sb-ai-toolbar{display:flex;flex-direction:column;gap:10px}.sb-ai-title-row{display:flex;align-items:baseline;gap:10px}.sb-ai-title-row strong{font-size:.9rem}.sb-ai-running{font-size:.75rem;color:var(--text3)}.sb-ai-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.sb-ai-icon-btn{width:32px;height:32px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text2);display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.sb-ai-icon-btn .icon{width:14px;height:14px;display:flex}.sb-ai-icon-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.7}.sb-ai-chip{height:32px;padding:0 10px;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text2);font-size:.78rem;display:inline-flex;align-items:center}.sb-ai-gen{display:inline-flex;align-items:center;gap:8px;height:34px;padding:0 12px;border:none;border-radius:8px;background:var(--nav-item-active);color:var(--primary-fg);font:inherit;font-size:.82rem;font-weight:650;cursor:pointer;margin-left:auto;box-shadow:0 4px 14px var(--nav-item-shadow)}.sb-ai-gen:hover:not(:disabled){filter:brightness(1.05)}.sb-ai-gen:disabled{opacity:.5;cursor:not-allowed;filter:none;box-shadow:none}.sb-ai-prompt-box{position:relative;border-radius:12px;border:1px solid var(--border);background:var(--bg);overflow:hidden}.sb-ai-prompt-box textarea{width:100%;min-height:120px;border:none;resize:vertical;background:transparent;color:var(--text);font:inherit;font-size:.88rem;line-height:1.55;padding:12px 36px 12px 12px;outline:none}.sb-ai-expand{position:absolute;right:10px;bottom:10px;color:var(--text3);pointer-events:none}.sb-ai-expand .icon{width:14px;height:14px;display:flex}.sb-ai-expand .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.7}.sb-ai-results h4{margin:0 0 8px;font-size:.84rem;color:var(--text2)}.sb-ai-side{display:flex;flex-direction:column;min-height:0;overflow-y:auto}.sb-ai-side-block{flex:1;min-height:160px;padding:12px;display:flex;flex-direction:column;border-bottom:1px solid var(--border)}.sb-ai-side-block:last-child{border-bottom:none}.sb-ai-side-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:.8rem;color:var(--text2)}@media(max-width:820px){.sb-ai-body{grid-template-columns:1fr}.sb-ai-main{border-right:none;border-bottom:1px solid var(--border)}.sb-gen-cta{width:100%;justify-content:center}.sb-frames{grid-template-columns:1fr}.sb-frame-swap{justify-self:center;transform:rotate(90deg)}}@media(max-width:820px){.sb-stage{flex-direction:column}.sb-list{width:100%;flex-direction:row;align-items:flex-start;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.sb-list-item{width:120px;flex-shrink:0}.sb-list-insert{width:28px;height:auto;align-self:stretch;margin:0 2px;padding-top:26px;align-items:flex-start;justify-content:center}.sb-list-insert:before{left:50%;right:auto;top:8px;bottom:auto;width:1px;height:56px;transform:translate(-50%)}.sb-list-insert-end{padding-top:26px}.sb-list-insert-btn[data-tip]:after{left:50%;top:auto;bottom:calc(100% + 10px);transform:translate(-50%)}.sb-list-insert-btn[data-tip]:before{left:50%;top:auto;bottom:calc(100% + 0px);transform:translate(-50%);border:5px solid transparent;border-top-color:var(--text);border-right-color:transparent}.sb-list-empty-wrap{flex-direction:row;padding:12px 16px}.sb-work-row{flex-direction:column}.sb-preview:not(.collapsed){width:100%;height:220px}.sb-preview.collapsed{width:100%;height:40px}.sb-preview-rail{flex-direction:row;gap:8px}.sb-preview-rail span{writing-mode:horizontal-tb;letter-spacing:0}}.community-toolbar{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;margin-bottom:20px;width:100%;min-width:0}.community-filters{display:flex;gap:6px;align-items:center;flex-shrink:0}.community-tab{padding:8px 14px;border-radius:20px;font-size:.82rem;cursor:pointer;border:1px solid var(--border);color:var(--text2);transition:all .3s cubic-bezier(.34,1.56,.64,1);background:var(--card);white-space:nowrap;flex-shrink:0}.community-tab:hover{transform:scale(1.05)}.community-tab.active{background:var(--nav-item-active);color:var(--primary-fg);border-color:transparent;box-shadow:0 4px 16px var(--nav-item-shadow)}.community-search{flex:1;min-width:0;max-width:200px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.85rem;outline:none}.community-search:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.community-actions{display:flex;align-items:center;gap:8px;flex:1;min-width:0;justify-content:flex-end}.community-tag-filter{max-width:96px;padding:8px 10px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.82rem;outline:none;cursor:pointer;flex-shrink:0}.community-toolbar .asset-btn{padding:8px 12px;font-size:.82rem;flex-shrink:0;white-space:nowrap}.community-masonry{column-count:5;column-gap:16px;padding-bottom:8px}.community-masonry .comm-card{break-inside:avoid;margin-bottom:16px;width:100%;display:block}.community-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;align-items:start;padding-bottom:8px}.community-empty{grid-column:1 / -1;text-align:center;padding:56px 20px;color:var(--text2);font-size:.9rem;border:1px dashed var(--border);border-radius:16px}.comm-card{border-radius:16px;overflow:hidden;border:1px solid var(--border);background:var(--card);cursor:pointer;transition:transform .35s,box-shadow .35s}.comm-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px var(--shadow)}.comm-thumb{width:100%;position:relative;overflow:hidden}.comm-thumb img{width:100%;height:100%;object-fit:cover;display:block}.comm-type{position:absolute;top:10px;right:10px;font-size:.65rem;padding:3px 8px;border-radius:6px;background:#0000008c;color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.comm-card .body{padding:12px 14px 14px}.comm-card .body h4{font-size:.9rem;margin-bottom:6px;line-height:1.4}.comm-meta{display:flex;gap:10px;font-size:.7rem;color:var(--text3);margin-bottom:8px}.comm-card .user{display:flex;align-items:center;gap:8px;font-size:.78rem;color:var(--text2)}.comm-card .avatar{width:22px;height:22px;border-radius:50%;object-fit:cover}.comm-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:8px}.comm-tags span{font-size:.62rem;padding:2px 6px;border-radius:4px;background:var(--glow);color:var(--text2)}.chat-center{display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 160px)}.chat-card{text-align:center;padding:48px 56px;border-radius:24px;background:var(--card);border:1px solid var(--border);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);position:relative;max-width:420px}.chat-card:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:26px;background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899);z-index:-1;opacity:.4;animation:flowLine 4s linear infinite}@keyframes flowLine{0%,to{opacity:.3}50%{opacity:.6}}.chat-card h3{font-size:1.3rem;margin-bottom:8px;background:linear-gradient(135deg,#6366f1,#ec4899);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.chat-card p{color:var(--text3);font-size:.9rem;line-height:1.8;margin-bottom:28px}.chat-card img{border-radius:12px;margin-bottom:20px}.chat-hint{font-size:.8rem}.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.price-card{padding:28px 22px;border-radius:16px;border:1px solid var(--border);background:var(--card);position:relative;transition:all .3s;overflow:hidden}.price-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at var(--mx, 50%) var(--my, 50%),var(--glow),transparent 60%);opacity:0;transition:opacity .3s}.price-card:hover:before{opacity:1}.price-card.featured{border-color:var(--nav-active-solid);box-shadow:0 8px 32px var(--glow)}.price-card .badge{position:absolute;top:-1px;right:16px;font-size:.65rem;padding:4px 10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-radius:0 0 8px 8px}.price-card h4{font-size:.9rem;color:var(--text2);margin-bottom:8px}.price-card .amount{font-size:2rem;font-weight:700;margin:12px 0}.price-card .amount-sub{font-size:.45em;color:var(--text2)}.price-card ul{list-style:none;font-size:.82rem;color:var(--text3);line-height:2.2}.price-card li:before{content:"? ";color:var(--accent)}.price-card .pbtn{width:100%;margin-top:16px;padding:10px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text);cursor:pointer;font-size:.85rem;transition:all .2s}.price-card.featured .pbtn{background:var(--nav-item-active);color:var(--primary-fg);border:none}.pricing-disclaimer{margin-top:20px;font-size:.75rem;color:var(--text3)}.profile-grid{display:grid;grid-template-columns:280px 1fr;gap:24px}.profile-side{padding:28px;border-radius:16px;background:var(--card);border:1px solid var(--border);text-align:center}.profile-side img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:12px;border:3px solid var(--nav-active-solid)}.profile-name{font-size:1.1rem}.profile-id{font-size:.8rem;color:var(--text2)}.pro-badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:.7rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;margin-top:8px;animation:pulse 3s infinite}.widget{padding:22px;border-radius:14px;background:var(--card);border:1px solid var(--border);cursor:pointer;transition:all .25s}.widget:hover{border-color:var(--nav-active-solid);transform:translateY(-2px)}.widget h4{font-size:.9rem;margin-bottom:12px;display:flex;align-items:center;gap:8px}.feedback-input{width:100%;padding:12px;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-size:.85rem;resize:none;margin-top:8px}.theme-ripple{position:fixed;border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}@media(max-width:900px){.app{padding:12px;gap:10px}.sidebar-wrap{width:68px;height:calc(100vh - 24px)}.sidebar{border-radius:16px;padding:10px 6px}.nav-list{max-height:294px}.nav-item{min-height:54px}.nav-item .label{font-size:.6rem}.home-cards{grid-template-columns:repeat(2,minmax(0,1fr));max-width:640px}.home-projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-visual{width:64px}.examples-toolbar{flex-direction:column;align-items:stretch}.example-search{max-width:none}.examples-row,.pricing-grid,.profile-grid{grid-template-columns:1fr}.community-toolbar,.community-filters{flex-wrap:wrap}.community-actions{width:100%;justify-content:stretch}.community-search{max-width:none;flex:1}.community-row{grid-template-columns:1fr}.assets-bar{flex-direction:column;align-items:stretch}.assets-tools{margin-left:0;justify-content:flex-end;flex-wrap:wrap}.assets-action-btns{width:100%;justify-content:flex-end}.assets-tabs{width:100%}.asset-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:1fr}.project-more{opacity:1}.ws-body{flex-direction:column}.ws-tree{width:100%;max-height:220px}.ws-tree.collapsed{width:100%;max-height:none}.ws-tree.collapsed .ws-tree-rail{flex-direction:row;justify-content:flex-start;padding:8px 12px 12px}.ws-tree.collapsed .ws-tree-rail-label{writing-mode:horizontal-tb;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-flow{grid-template-columns:1fr;justify-items:center}.ws-chrome{grid-template-columns:1fr;justify-items:stretch}.ws-chrome-left,.ws-chrome-right{width:100%}.ws-chrome-right{justify-content:space-between}.ws-flow-main{justify-content:flex-start;overflow-x:auto;max-width:100%;grid-column:auto}.ws-prefs{max-width:calc(100% - 48px)}.ws-flow-spacer{display:none}.ws-flow-extra{grid-column:1;justify-content:center;margin-left:0;width:100%}.ws-stage-grid{grid-template-columns:1fr}}.fc-app{padding-left:16px}.fc-main{flex-direction:row;padding:0;overflow:hidden;gap:0}.fc-history{width:260px;flex-shrink:0;display:flex;flex-direction:column;gap:12px;padding:18px 14px 14px;border-right:1px solid var(--border);background:var(--sidebar-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}[data-theme=light] .fc-history{background:#ffffff6b}[data-theme=dark] .fc-history{background:#0e10188c}.fc-new-chat{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:44px;border:none;border-radius:14px;background:var(--nav-item-active);color:var(--primary-fg);font-size:.92rem;font-weight:650;cursor:pointer;box-shadow:0 6px 18px var(--nav-item-shadow);transition:filter .2s,transform .2s}.fc-new-chat:hover{filter:brightness(1.06)}.fc-new-chat .icon,.fc-search .icon,.fc-session .icon{width:18px;height:18px;display:flex;flex-shrink:0}.fc-new-chat .icon svg,.fc-search .icon svg,.fc-session .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.fc-search{display:flex;align-items:center;gap:8px;height:40px;padding:0 12px;border-radius:12px;border:1px solid var(--border);background:var(--card);color:var(--text2)}.fc-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text);font-size:.88rem;font-family:inherit}.fc-search input::placeholder{color:var(--text3)}.fc-history-body{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.fc-history-empty{margin-top:28px;text-align:center;font-size:.84rem;color:var(--text3);line-height:1.5}.fc-session{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:none;border-radius:12px;background:transparent;color:var(--text2);font-size:.88rem;text-align:left;cursor:pointer;transition:background .2s,color .2s}.fc-session-text{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.fc-session-text strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600;color:inherit}.fc-session-text small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;color:var(--text3)}.fc-session:hover,.fc-session.active{background:var(--glow);color:var(--text)}.fc-session.active{box-shadow:inset 0 0 0 1px #8b5cf647}.fc-workspace{flex:1;min-width:0;display:flex;flex-direction:column;position:relative}.fc-theme-btn{position:absolute;top:16px;right:16px;z-index:5;width:40px;height:40px;border:1px solid var(--border);border-radius:12px;background:var(--card);color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 4px 14px var(--shadow);transition:color .2s,background .2s,border-color .2s}.fc-theme-btn:hover{color:var(--text);background:var(--glow);border-color:#8b5cf659}.fc-theme-btn .icon{width:18px;height:18px;display:flex}.fc-theme-btn .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.fc-welcome{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:40px 32px 160px;overflow-y:auto}.fc-hero{text-align:center}.fc-hero h1{font-size:clamp(1.8rem,3vw,2.35rem);font-weight:750;letter-spacing:-.03em;color:var(--text);margin-bottom:10px}.fc-hero p{font-size:.95rem;color:var(--text2)}.fc-modes{display:grid;grid-template-columns:repeat(4,minmax(140px,170px));gap:14px;justify-content:center;width:100%;max-width:780px}.fc-mode-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:18px 16px;border-radius:18px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);text-align:left;cursor:pointer;transition:border-color .22s,box-shadow .22s,transform .22s,background .22s;box-shadow:0 8px 24px var(--shadow)}[data-theme=light] .fc-mode-card{background:#ffffffc7}[data-theme=dark] .fc-mode-card{background:#141824b8}.fc-mode-card:hover{transform:translateY(-2px);border-color:#8b5cf659;box-shadow:0 12px 28px var(--shadow),0 0 0 1px #8b5cf61f}.fc-mode-card.active{border-color:transparent;box-shadow:0 0 0 2px #8b5cf68c,0 10px 28px var(--nav-item-shadow);background:linear-gradient(160deg,#ff5eab14,#8b5cf61f)}.fc-mode-icon{width:36px;height:36px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;color:var(--primary-fg);background:var(--primary);box-shadow:none}.fc-mode-icon[data-mode=video]{background:var(--primary);color:var(--primary-fg)}.fc-mode-icon[data-mode=image]{background:linear-gradient(145deg,#06b6d4,#6366f1)}.fc-mode-icon[data-mode=vision]{background:linear-gradient(145deg,#f59e0b,#ec4899)}.fc-mode-icon .icon{width:18px;height:18px;display:flex}.fc-mode-icon .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.fc-mode-card strong{font-size:.98rem;font-weight:700;color:var(--text)}.fc-mode-card>span:last-child{font-size:.78rem;line-height:1.45;color:var(--text2)}.fc-suggestion{max-width:min(560px,92%);padding:10px 18px;border-radius:999px;border:1px solid var(--border);background:var(--card);color:var(--text2);font-size:.86rem;cursor:pointer;transition:border-color .2s,color .2s,background .2s,box-shadow .2s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fc-suggestion:hover{color:var(--text);border-color:#8b5cf659;background:var(--glow);box-shadow:0 6px 18px var(--shadow)}.fc-composer-dock{position:absolute;left:0;right:0;bottom:0;padding:0 28px 18px;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none;background:linear-gradient(to top,var(--bg) 35%,transparent);z-index:6}.fc-pending{display:flex;flex-wrap:wrap;gap:10px;padding:2px 2px 6px}.fc-attach-wrap{position:relative}.fc-attach-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:50;min-width:140px;padding:6px;border-radius:12px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 10px 28px var(--shadow);display:flex;flex-direction:column;gap:2px}[data-theme=light] .fc-attach-menu{background:#fffffff7}[data-theme=dark] .fc-attach-menu{background:#141824f7}.fc-attach-menu button{display:inline-flex;align-items:center;gap:8px;width:100%;padding:9px 10px;border:none;border-radius:8px;background:transparent;color:var(--text);font-size:.84rem;cursor:pointer;text-align:left}.fc-attach-menu button:hover{background:var(--glow)}.fc-attach-menu .icon{width:15px;height:15px;display:flex;color:var(--text2)}.fc-attach-menu .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-file-input{display:none}.fc-thread{flex:1;min-height:0;overflow-y:auto;padding:28px 28px 200px;display:flex;flex-direction:column;gap:22px}.fc-msg{display:flex;gap:12px;width:min(820px,100%);margin:0 auto;align-items:flex-start}.fc-msg.role-user{flex-direction:row-reverse}.fc-msg-avatar{width:34px;height:34px;border-radius:12px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 4px 12px var(--nav-item-shadow)}.fc-msg.role-user .fc-msg-avatar{background:linear-gradient(145deg,#6366f1,#8b5cf6)}.fc-msg-avatar .icon{width:16px;height:16px;display:flex}.fc-msg-avatar .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.fc-msg-body{min-width:0;max-width:calc(100% - 46px);display:flex;flex-direction:column;gap:8px}.fc-msg.role-user .fc-msg-body{align-items:flex-end}.fc-msg-head{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:var(--text3)}.fc-msg-head strong{color:var(--text2);font-weight:650}.fc-msg-text{padding:12px 14px;border-radius:16px;border:1px solid var(--border);background:var(--card);color:var(--text);font-size:.94rem;line-height:1.65;white-space:pre-wrap;word-break:break-word;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.fc-msg.role-user .fc-msg-text{background:linear-gradient(160deg,#ff5eab1f,#8b5cf624);border-color:#8b5cf638}[data-theme=light] .fc-msg-text{background:#ffffffe0}[data-theme=dark] .fc-msg-text{background:#141824d1}.fc-msg-atts{display:flex;flex-wrap:wrap;gap:10px;max-width:100%}.fc-msg.role-user .fc-msg-atts{justify-content:flex-end}.fc-typing{display:inline-flex;align-items:center;gap:5px;height:36px;padding:0 14px;border-radius:14px;border:1px solid var(--border);background:var(--card)}.fc-typing i{width:6px;height:6px;border-radius:50%;background:var(--nav-active-solid);opacity:.45;animation:fcTyping 1.05s ease-in-out infinite}.fc-typing i:nth-child(2){animation-delay:.15s}.fc-typing i:nth-child(3){animation-delay:.3s}@keyframes fcTyping{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-4px);opacity:1}}.fc-att{position:relative;border-radius:14px;border:1px solid var(--border);background:var(--card);overflow:hidden;max-width:280px}.fc-att.compact{width:96px;max-width:96px}.fc-att-remove{position:absolute;top:4px;right:4px;z-index:2;width:22px;height:22px;border:none;border-radius:50%;background:#0f172aa6;color:#fff;font-size:14px;line-height:1;cursor:pointer}.fc-att-media{display:block;width:100%;aspect-ratio:16 / 10;background:#0f172a14}.fc-att.compact .fc-att-media{aspect-ratio:1}.fc-att-media img,.fc-att-video video{width:100%;height:100%;object-fit:cover;display:block}.fc-att-video{position:relative}.fc-att-video video{background:#000}.fc-att-duration{position:absolute;right:8px;bottom:8px;padding:2px 6px;border-radius:6px;background:#000000a6;color:#fff;font-size:.7rem}.fc-att-meta,.fc-att-file,.fc-att-audio{display:flex;gap:10px;padding:10px 12px;align-items:center}.fc-att-meta{flex-direction:column;align-items:flex-start;gap:2px}.fc-att-meta strong,.fc-att-file strong,.fc-att-audio strong{font-size:.82rem;color:var(--text);font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.fc-att-meta span,.fc-att-file span,.fc-att-audio span{font-size:.74rem;color:var(--text3)}.fc-att-icon{width:34px;height:34px;border-radius:10px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;background:var(--glow);color:var(--nav-active-solid)}.fc-att-icon .icon{width:16px;height:16px;display:flex}.fc-att-icon .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-att-audio{align-items:flex-start;min-width:240px}.fc-att-audio-body{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1}.fc-att-audio audio{width:100%;height:32px}.fc-att.is-file,.fc-att.is-audio{max-width:320px}.fc-att.compact.is-file,.fc-att.compact.is-audio{width:auto;max-width:180px}.fc-att.compact.is-file .fc-att-file,.fc-att.compact.is-audio .fc-att-audio{padding:8px}.fc-att.compact.is-audio audio{display:none}.fc-composer{pointer-events:auto;width:min(820px,100%);border-radius:22px;border:1px solid var(--border);background:var(--card);box-shadow:0 12px 40px var(--shadow);padding:14px 16px 12px;display:flex;flex-direction:column;gap:10px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}[data-theme=light] .fc-composer{background:#fffffff0}[data-theme=dark] .fc-composer{background:#141824f0}.fc-composer-textarea{width:100%;min-height:48px;max-height:160px;resize:none;border:none;outline:none;background:transparent;color:var(--text);font-size:.95rem;line-height:1.55;font-family:inherit;padding:2px 4px 0}.fc-composer-textarea::placeholder{color:var(--text3)}.fc-composer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0}.fc-composer-left{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.fc-composer-left::-webkit-scrollbar{height:4px}.fc-composer-left::-webkit-scrollbar-thumb{background:#94a3b873;border-radius:999px}.fc-composer-left>*{flex-shrink:0}.fc-composer-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.fc-model-select{position:relative}.fc-model-btn{display:inline-flex;align-items:center;gap:6px;max-width:180px;height:36px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:transparent;color:var(--text2);font-size:.8rem;cursor:pointer;transition:all .2s}.fc-model-btn:hover{color:var(--text);background:var(--glow);border-color:#8b5cf647}.fc-model-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-model-btn .icon{width:14px;height:14px;display:flex;flex-shrink:0}.fc-model-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-model-menu{position:absolute;right:0;bottom:calc(100% + 8px);z-index:40;width:260px;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 32px var(--shadow);display:flex;flex-direction:column;gap:2px}[data-theme=light] .fc-model-menu{background:#fffffff7}[data-theme=dark] .fc-model-menu{background:#141824f7}.fc-model-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:10px 12px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background .15s}.fc-model-item:hover,.fc-model-item.active{background:var(--glow)}.fc-model-item-main{display:inline-flex;align-items:center;gap:8px}.fc-model-item-main strong{font-size:.86rem;font-weight:650}.fc-model-item small{font-size:.74rem;color:var(--text2);line-height:1.4}.fc-model-badge{display:inline-flex;align-items:center;height:18px;padding:0 6px;border-radius:999px;font-size:.68rem;font-weight:650;line-height:1}.fc-model-badge.new{color:var(--primary-fg);background:var(--primary)}.fc-model-badge.rec{color:#fff;background:var(--nav-item-active)}.fc-composer-plus{width:34px;height:34px;border-radius:10px;border:1px solid var(--border);background:transparent;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.fc-composer-plus:hover{color:var(--text);border-color:var(--nav-active-solid);background:var(--glow)}.fc-composer-plus .icon,.fc-composer-chip .icon,.fc-composer-send .icon{width:16px;height:16px;display:flex}.fc-composer-plus .icon svg,.fc-composer-chip .icon svg,.fc-composer-send .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-composer-divider{width:1px;height:20px;margin:0 4px;background:var(--border);flex-shrink:0}.fc-composer-chip{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text2);font-size:.8rem;cursor:pointer;transition:all .2s;white-space:nowrap}.fc-composer-chip:hover{color:var(--text);background:var(--glow)}.fc-composer-chip:disabled{opacity:.5;cursor:not-allowed}.fc-tool-chip{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 8px 0 6px;border-radius:12px;border:1px solid var(--primary-border);background:var(--primary-muted);color:var(--primary);font-size:.84rem;font-weight:650;white-space:nowrap;flex-shrink:0}[data-theme=light] .fc-tool-chip{background:var(--primary-muted);color:var(--primary)}[data-theme=dark] .fc-tool-chip{background:var(--primary-muted);color:var(--text);border-color:var(--primary-border)}.fc-tool-chip-icon{width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 2px 8px var(--nav-item-shadow)}.fc-tool-chip-icon .icon{width:13px;height:13px;display:flex}.fc-tool-chip-icon .icon svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.fc-tool-chip-close{width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:inherit;opacity:.7;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:opacity .15s,background .15s}.fc-tool-chip-close:hover{opacity:1;background:#8b5cf629}.fc-tool-chip-close .icon{width:13px;height:13px;display:flex}.fc-tool-chip-close .icon svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.fc-param-select{position:relative}.fc-param-btn{display:inline-flex;align-items:center;gap:6px;max-width:148px;height:36px;padding:0 10px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text2);font-size:.8rem;cursor:pointer;transition:all .2s;flex-shrink:0}.fc-param-btn:hover:not(:disabled){color:var(--text);background:var(--glow)}.fc-param-btn.open{color:var(--nav-active-solid);background:var(--glow)}.fc-param-btn:disabled{opacity:.5;cursor:not-allowed}.fc-param-btn span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-param-btn .icon{width:14px;height:14px;display:flex;flex-shrink:0}.fc-param-btn .icon svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-param-menu{position:absolute;left:0;bottom:calc(100% + 8px);z-index:50;min-width:120px;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 32px var(--shadow);display:flex;flex-direction:column;gap:2px}.fc-param-menu-wide{min-width:240px}.fc-param-menu-right{left:auto;right:0}[data-theme=light] .fc-param-menu{background:#fffffff7}[data-theme=dark] .fc-param-menu{background:#141824f7}.fc-param-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px 11px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;font-size:.84rem;cursor:pointer;transition:background .15s}.fc-param-item:hover,.fc-param-item.active{background:var(--glow)}.fc-param-item-main{display:inline-flex;align-items:center;gap:8px}.fc-param-item-main strong,.fc-param-item>strong{font-size:.86rem;font-weight:650}.fc-param-item small{font-size:.74rem;color:var(--text2);line-height:1.4}.fc-float-menu{min-width:132px;padding:6px;border-radius:14px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 12px 32px var(--shadow);display:flex;flex-direction:column;gap:2px}.fc-float-menu.wide{min-width:240px}[data-theme=light] .fc-float-menu{background:#fffffffa}[data-theme=dark] .fc-float-menu{background:#141824fa}.fc-float-menu>button,.fc-float-item{display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:9px 11px;border:none;border-radius:10px;background:transparent;color:var(--text);text-align:left;font-size:.84rem;cursor:pointer;transition:background .15s}.fc-float-menu>button{flex-direction:row;align-items:center;gap:8px}.fc-float-menu>button:hover,.fc-float-item:hover,.fc-float-item.active{background:var(--glow)}.fc-float-menu>button .icon{width:15px;height:15px;display:flex;color:var(--text2)}.fc-float-menu>button .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}.fc-float-item-main{display:inline-flex;align-items:center;gap:8px}.fc-float-item-main strong,.fc-float-item>strong{font-size:.86rem;font-weight:650}.fc-float-item small{font-size:.74rem;color:var(--text2);line-height:1.4}.fc-composer-send{flex-shrink:0;width:42px;height:42px;border:none;border-radius:50%;background:#94a3b847;color:var(--text2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.fc-composer-send.ready{background:var(--nav-item-active);color:var(--primary-fg);box-shadow:0 4px 14px var(--nav-item-shadow);cursor:pointer}.fc-composer-send:disabled:not(.ready){cursor:default}.fc-composer-send.ready:hover{filter:brightness(1.06)}.fc-composer-hint{pointer-events:none;font-size:.75rem;color:var(--text3)}@media(max-width:1100px){.fc-modes{grid-template-columns:repeat(2,minmax(150px,1fr));max-width:420px}.fc-composer-chip{padding:8px;font-size:0;gap:0}}@media(max-width:860px){.fc-history{display:none}.fc-welcome{padding:28px 16px 180px}.fc-composer-dock{padding:0 14px 14px}}.auth-page{position:relative;z-index:1;min-height:100vh;height:100vh;overflow:hidden;color:#fff;box-sizing:border-box}.auth-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:#090a0f}.auth-video,.auth-media-fallback{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.auth-media-fallback{background:#090a0f;z-index:0}.auth-video{z-index:1;opacity:0;transition:opacity .8s ease;transform:translateZ(0);backface-visibility:hidden;pointer-events:none}.auth-video.is-active{z-index:2;opacity:1}.auth-media-veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background:linear-gradient(105deg,#090a0f38,#090a0f0a 40%,#090a0f05 65%,#090a0f24),linear-gradient(180deg,rgba(9,10,15,.08) 0%,transparent 40%,rgba(9,10,15,.14) 100%)}.auth-top{position:absolute;top:0;left:0;right:0;z-index:3;display:flex;align-items:center;justify-content:space-between;padding:28px 40px;pointer-events:none}.auth-top-logo,.auth-go-create{pointer-events:auto}.auth-top-logo{display:inline-flex;align-items:center;gap:10px}.auth-top-logo img,.auth-panel-logo img{border-radius:8px;box-shadow:0 8px 24px #ff5eab59}.auth-top-name{font-size:1.05rem;font-weight:700;letter-spacing:.02em;text-shadow:0 2px 16px rgba(0,0,0,.4)}.auth-go-create{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border:none;border-radius:12px;background:#fff;color:#0f172a;font:inherit;font-size:.88rem;font-weight:700;cursor:pointer;box-shadow:0 8px 24px #00000038;transition:transform .2s,box-shadow .2s,filter .2s}.auth-go-create:hover{filter:brightness(.98);transform:translateY(-1px);box-shadow:0 12px 28px #00000047}.auth-hero{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:100px 24px 80px;text-align:center;pointer-events:none}.auth-hero-title{display:flex;flex-direction:column;align-items:center;gap:10px;margin-bottom:18px}.auth-hero-brand{font-size:clamp(2.8rem,7vw,4.6rem);font-weight:800;letter-spacing:-.03em;line-height:1;text-shadow:0 6px 40px rgba(0,0,0,.45)}.auth-hero-sub{font-size:clamp(1rem,2vw,1.25rem);font-weight:600;letter-spacing:.12em;color:#ffffffe0;text-shadow:0 2px 18px rgba(0,0,0,.4)}.auth-hero-tagline{margin:0 0 12px;max-width:none;font-size:clamp(1.05rem,2vw,1.35rem);font-weight:600;line-height:1.4;letter-spacing:.04em;color:#ffffffeb;text-shadow:0 2px 16px rgba(0,0,0,.4);white-space:nowrap}.auth-hero-desc{max-width:560px;margin:0 0 28px;font-size:clamp(.88rem,1.4vw,1rem);line-height:1.7;color:#ffffffb8;text-shadow:0 2px 16px rgba(0,0,0,.4)}.auth-hero-features{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:10px 12px;max-width:720px;padding:0;margin:0}.auth-hero-features li{padding:8px 14px;border-radius:999px;background:#00000047;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:.82rem;font-weight:500;color:#ffffffe6;box-shadow:0 6px 18px #0000002e}.auth-modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:flex;align-items:center;justify-content:center;padding:24px;background:#090a0f85;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);animation:auth-mask-in .22s ease}@keyframes auth-mask-in{0%{opacity:0}to{opacity:1}}.auth-panel{position:relative;z-index:3;width:min(380px,100%);max-height:min(90vh,720px);display:flex;flex-direction:column;padding:26px 26px 20px;border-radius:20px;border:none;background:#fffffff0;backdrop-filter:blur(22px) saturate(1.15);-webkit-backdrop-filter:blur(22px) saturate(1.15);transform:translateZ(0);box-shadow:0 24px 64px #00000059;color:var(--text);overflow-y:auto;animation:auth-panel-in .28s ease}[data-theme=light] .auth-panel{background:#ffffffb8;box-shadow:0 8px 24px #0f172a1a,0 24px 56px #0f172a29}[data-theme=dark] .auth-panel{background:#141824d1;box-shadow:0 8px 24px #00000059,0 24px 56px #00000073}@keyframes auth-panel-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-panel-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:20px}.auth-panel-logo{display:inline-flex;align-items:center;gap:10px;font-size:.9rem;font-weight:700;color:var(--text)}.auth-panel-actions{display:flex;align-items:center;gap:8px}.auth-panel-close{width:32px;height:32px;border:none;border-radius:10px;background:var(--card);color:var(--text2);font-size:1.25rem;line-height:1;cursor:pointer;transition:background .2s,color .2s}.auth-panel-close:hover{color:var(--text);filter:brightness(1.05)}.auth-locale{width:auto;min-width:108px}.auth-locale .locale-switcher-label{display:none}.auth-locale .locale-switcher-trigger{padding:6px 10px;border-radius:999px;font-size:.76rem;background:color-mix(in srgb,var(--sidebar-bg) 90%,transparent);border:1px solid var(--border);color:var(--text)}.auth-locale .locale-switcher-menu{left:auto;right:0;min-width:140px}.auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;border-radius:12px;border:1px solid var(--border);background:var(--card);margin-bottom:14px}.auth-subtabs{margin-bottom:12px}.auth-subtabs .auth-tab{font-size:.8rem;padding:7px 8px}.auth-tab{border:none;background:transparent;color:var(--text2);border-radius:9px;padding:8px 10px;font:inherit;font-size:.86rem;font-weight:600;cursor:pointer;transition:all .22s}.auth-tab.active{color:var(--primary-fg);background:var(--nav-item-active);box-shadow:0 4px 14px var(--nav-item-shadow)}.auth-lead{margin-bottom:16px;font-size:.8rem;line-height:1.5;color:var(--text2)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-field{display:flex;flex-direction:column;gap:6px}.auth-label{font-size:.78rem;font-weight:600;color:var(--text)}.auth-label-optional{margin-left:6px;font-weight:500;color:var(--text3)}.auth-phone-row,.auth-code-row{display:flex;align-items:stretch;gap:8px}.auth-phone-prefix{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:0 10px;border-radius:11px;border:1px solid var(--border);background:var(--card);color:var(--text2);font-size:.82rem;font-weight:600}.auth-panel .auth-input.project-form-input{padding:10px 12px;font-size:.86rem;border-radius:11px;background:var(--card);border:1px solid var(--border);color:var(--text)}.auth-panel .auth-input.project-form-input::placeholder{color:var(--text3)}.auth-panel .auth-input.project-form-input:focus{border-color:var(--nav-active-solid);box-shadow:0 0 0 3px var(--glow)}.auth-input{flex:1;min-width:0}.auth-code-btn{flex-shrink:0;min-width:96px;padding:0 10px;font-size:.78rem;background:var(--card);border:1px solid var(--border);color:var(--text)}.auth-code-btn:hover:not(:disabled){border-color:var(--nav-active-solid)}.auth-code-btn:disabled{opacity:.55;cursor:not-allowed}.auth-agree{display:flex;align-items:flex-start;gap:8px;font-size:.72rem;line-height:1.5;color:var(--text2);cursor:pointer;-webkit-user-select:none;user-select:none}.auth-agree input{margin-top:2px;accent-color:var(--nav-active-solid);cursor:pointer}.auth-link{color:var(--nav-active-solid);text-decoration:none;font-weight:600}.auth-link:hover{text-decoration:underline}.auth-error{margin:-2px 0 0;padding:8px 10px;border-radius:10px;background:#ec48991a;border:1px solid rgba(236,72,153,.25);color:var(--hot);font-size:.76rem}.auth-hint{margin:-2px 0 0;padding:8px 10px;border-radius:10px;background:#6366f11a;border:1px solid rgba(99,102,241,.22);color:var(--text2);font-size:.76rem}.auth-submit{width:100%;padding:11px 14px;border-radius:12px;font-size:.9rem;font-weight:700;margin-top:2px}.auth-submit:disabled{opacity:.5;cursor:not-allowed;filter:none}.auth-switch-hint{margin-top:14px;text-align:center;font-size:.76rem;color:var(--text2)}.auth-text-btn{border:none;background:none;color:var(--nav-active-solid);font:inherit;font-weight:700;cursor:pointer;padding:0}.auth-method-link{align-self:flex-end;margin-top:2px;border:none;background:none;padding:0;color:var(--nav-active-solid);font:inherit;font-size:.72rem;font-weight:600;cursor:pointer}.auth-method-link:hover{text-decoration:underline}.auth-footer{margin-top:18px;padding-top:14px;border-top:1px solid var(--border);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px 8px;font-size:.7rem}.auth-footer-dot{width:3px;height:3px;border-radius:50%;background:var(--text3)}.auth-mock-hint{margin-top:10px;text-align:center;font-size:.68rem;color:var(--text3)}@media(max-width:720px){.auth-top{padding:18px 16px}.auth-hero{padding:88px 18px 48px}.auth-hero-features{flex-direction:column;align-items:center}.auth-media-veil{background:linear-gradient(180deg,#090a0f1a,#090a0f0a 45%,#090a0f38)}}@media(max-width:520px){.auth-modal-mask{padding:12px}.auth-panel{width:100%;max-height:calc(100vh - 24px);padding:22px 18px 16px;border-radius:18px}.auth-code-btn{min-width:88px;font-size:.72rem}.auth-go-create{padding:9px 14px;font-size:.82rem}}.legal-page{position:relative;z-index:1;min-height:100vh;height:100vh;overflow:auto;padding:24px;background:var(--bg);color:var(--text)}.legal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:720px;margin:0 auto 24px}.legal-head h1{font-size:1.25rem}.legal-body{max-width:720px;margin:0 auto;padding:28px;border-radius:18px;border:1px solid var(--border);background:var(--card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);line-height:1.75;font-size:.92rem;color:var(--text2)}.legal-body p+p{margin-top:14px}.profile-layout{display:grid;grid-template-columns:220px 1fr;gap:20px;min-height:min(640px,calc(100vh - 140px));align-items:stretch}.profile-menu{padding:12px;border-radius:16px;background:var(--card);border:none;display:flex;flex-direction:column}.profile-menu-nav{display:flex;flex-direction:column;gap:4px}.profile-menu-item{width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;padding:12px 14px;border:none;border-radius:12px;background:transparent;color:var(--text2);font:inherit;font-size:.92rem;cursor:pointer;transition:background .2s,color .2s}.profile-menu-badge{min-width:1.35em;padding:0 6px;border-radius:999px;font-size:.7rem;font-weight:700;line-height:1.5;color:#fff;background:#ef4444;text-align:center}.profile-menu-item:hover{background:var(--control-bg-hover);color:var(--text)}.profile-menu-item.active{background:var(--control-bg);color:var(--text);font-weight:600}.profile-menu-item.danger{color:#ef4444}.profile-menu-item.danger:hover,.profile-menu-item.danger.active{background:#ef44441a;color:#ef4444}.profile-content{padding:22px 24px;border-radius:16px;background:var(--card);border:none;min-width:0}.profile-content-header{margin-bottom:18px;padding-bottom:12px;border-bottom:none}.profile-content-title{margin:0;font-size:1.15rem;font-weight:650}.profile-section{display:flex;flex-direction:column;gap:14px}.profile-identity{display:flex;align-items:flex-start;gap:16px;padding:18px 20px;border-radius:14px;background:color-mix(in srgb,var(--bg) 55%,transparent);border:none}.profile-avatar-btn{position:relative;width:80px;height:80px;padding:0;border:none;border-radius:50%;overflow:hidden;cursor:pointer;flex-shrink:0;background:transparent;box-shadow:0 0 0 2px color-mix(in srgb,var(--text) 18%,transparent)}.profile-avatar-btn:disabled{cursor:wait;opacity:.8}.profile-avatar-btn img{width:100%;height:100%;object-fit:cover;display:block}.profile-avatar-mask{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;background:#0000007a;color:#fff;font-size:.65rem;opacity:0;transition:opacity .18s ease}.profile-avatar-btn:hover .profile-avatar-mask,.profile-avatar-btn:focus-visible .profile-avatar-mask,.profile-avatar-btn:disabled .profile-avatar-mask{opacity:1}.profile-avatar-mask .icon{width:18px;height:18px;display:inline-flex;color:#fff}.profile-avatar-mask .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.75}.profile-identity-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:8px}.profile-name-row{display:flex;align-items:center;gap:8px;min-width:0}.profile-name{margin:0;font-size:1.15rem;font-weight:650;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-name-edit-btn{flex-shrink:0;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:var(--text2);cursor:pointer;transition:background .15s,color .15s}.profile-name-edit-btn:hover{background:var(--control-bg-hover);color:var(--text)}.profile-name-edit-btn .icon{width:15px;height:15px;display:inline-flex}.profile-name-edit-btn .icon svg{width:15px;height:15px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.profile-name-input{flex:1;min-width:0;max-width:280px;font-size:1rem;font-weight:650;padding:8px 12px}.profile-name-hint{margin:0;font-size:.72rem;color:var(--text3)}.profile-saved-tip{margin:0;font-size:.8rem;color:#22c55e}.profile-side{padding:28px;border-radius:16px;background:var(--card);border:none;text-align:center}.profile-side img{width:80px;height:80px;border-radius:50%;object-fit:cover;margin-bottom:12px;border:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--text) 18%,transparent)}.profile-id{font-size:.8rem;color:var(--text2);margin:0}.pro-badge{display:inline-flex;align-items:center;align-self:flex-start;width:fit-content;max-width:100%;padding:4px 10px;border-radius:999px;font-size:.7rem;font-weight:650;line-height:1.3;background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff;margin-top:2px;box-shadow:0 4px 14px #f9731647}.profile-widgets{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.widget{padding:20px;border-radius:14px;background:color-mix(in srgb,var(--bg) 45%,transparent);border:none;transition:background .25s}.widget:hover{background:color-mix(in srgb,var(--bg) 35%,transparent)}.widget.wide{grid-column:span 2}.widget h4{font-size:.9rem;margin:0 0 12px;display:flex;align-items:center;gap:8px}.community-section{align-items:center;text-align:center}.community-section .profile-link-btn{align-self:center}.profile-chat-card{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.profile-chat-card img{border-radius:10px;border:none}.chat-desc-pre{white-space:pre-line}.profile-empty-hint{margin:16px 0 0;font-size:.85rem;color:var(--text3)}.order-filter-tabs{display:flex;flex-wrap:wrap;gap:8px}.order-filter-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;border:none;background:var(--control-bg);color:var(--text2);font:inherit;font-size:.85rem;cursor:pointer;transition:background .2s,color .2s}.order-filter-tab:hover{color:var(--text);background:var(--control-bg-hover)}.order-filter-tab.active{color:var(--text);font-weight:600;background:var(--primary-muted)}.order-filter-count{min-width:1.4em;padding:0 6px;border-radius:999px;font-size:.72rem;font-weight:600;line-height:1.5;color:var(--text3);background:color-mix(in srgb,var(--bg) 70%,transparent)}.order-filter-tab.active .order-filter-count{color:var(--text);background:#ffffff1f}.order-list{display:flex;flex-direction:column;gap:10px}.order-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-radius:12px;border:none;background:color-mix(in srgb,var(--bg) 45%,transparent)}.order-main{min-width:0;flex:1}.order-title-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px}.order-title{font-size:.92rem;font-weight:600;color:var(--text)}.order-type{font-size:.7rem;padding:2px 8px;border-radius:999px;border:none;color:var(--text2);background:var(--control-bg)}.order-type.recharge{color:#16a34a;background:#22c55e29}.order-type.consume{color:#6366f1;background:#6366f124}.order-meta{margin:0;display:flex;flex-wrap:wrap;gap:10px;font-size:.75rem;color:var(--text3)}.order-id{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.order-aside{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0;text-align:right}.order-points{font-size:.95rem;font-weight:650;color:var(--text)}.order-points small{margin-left:2px;font-size:.7rem;font-weight:500;color:var(--text3)}.order-points.plus{color:#22c55e}.order-points.minus{color:#f59e0b}.order-amount{font-size:.78rem;color:var(--text2)}.order-status{font-size:.72rem;color:var(--text3)}.order-status.success{color:#22c55e}.order-status.pending{color:#f59e0b}.order-status.failed,.order-status.refunded{color:#ef4444}@media(max-width:700px){.order-row{flex-direction:column;align-items:stretch}.order-aside{flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;text-align:left}}.profile-link-btn,.profile-primary-btn,.profile-danger-btn{font:inherit;cursor:pointer;border-radius:12px;padding:10px 16px;transition:background .2s,border-color .2s,opacity .2s}.profile-link-btn{align-self:flex-start;border:none;background:var(--control-bg);color:var(--text)}.profile-link-btn:hover{background:var(--control-bg-hover);color:var(--text)}.profile-primary-btn{border:none;background:var(--primary);color:var(--primary-fg)}.profile-primary-btn:disabled{opacity:.45;cursor:not-allowed}.profile-danger-btn{margin-top:12px;border:none;background:#ef444429;color:#fca5a5}.project-modal-foot .profile-danger-btn{margin-top:0;padding:10px 16px;border-radius:12px;font:inherit;cursor:pointer}.profile-danger-btn:hover{background:#ef44442e}.logout-confirm-modal{width:min(400px,calc(100vw - 32px))}.logout-confirm-text{margin:0;font-size:.95rem;line-height:1.55;color:var(--text2)}.profile-feedback-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:4px}.profile-feedback-ok{margin:0;font-size:.85rem;color:var(--accent, #22c55e)}.logout-panel{max-width:420px}.profile-content:has(.feedback-panel){display:flex;flex-direction:column;min-height:min(640px,calc(100vh - 140px))}.feedback-panel{width:100%;max-width:none;flex:1;min-height:0;display:flex;flex-direction:column}.feedback-intro{margin:0;font-size:.88rem;line-height:1.55;color:var(--text2);flex-shrink:0}.feedback-form,.feedback-success,.feedback-history{display:flex;flex-direction:column;gap:16px}.feedback-form{flex:1;min-height:0}.feedback-field{display:flex;flex-direction:column;gap:8px}.feedback-field-content{flex:1;min-height:180px}.feedback-content-composer{position:relative;flex:1;display:flex;flex-direction:column;min-height:180px}.feedback-label-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.feedback-label{font-size:.85rem;font-weight:600;color:var(--text)}.feedback-optional{margin-left:6px;font-size:.75rem;font-weight:500;color:var(--text3)}.feedback-count{font-size:.75rem;color:var(--text3)}.feedback-chips{display:flex;flex-wrap:wrap;gap:8px}.feedback-chip{padding:7px 12px;border-radius:999px;border:none;background:var(--control-bg);color:var(--text2);font:inherit;font-size:.82rem;cursor:pointer;transition:background .2s,color .2s}.feedback-chip:hover{color:var(--text);background:var(--control-bg-hover)}.feedback-chip.active{color:var(--text);font-weight:600;background:var(--primary-muted)}.feedback-text-input,.feedback-input{width:100%;box-sizing:border-box;padding:11px 12px;border-radius:10px;border:none;background:var(--control-bg);color:var(--text);font:inherit;font-size:.88rem}.feedback-text-input:focus,.feedback-input:focus{outline:none;background:var(--control-bg-hover)}.feedback-input{resize:none;min-height:180px;height:100%;margin-top:0;line-height:1.55;padding-bottom:40px}.feedback-content-composer .feedback-input{flex:1;width:100%}.feedback-hint{margin:0;font-size:.75rem;color:var(--text3)}.feedback-attach-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.feedback-file-input{display:none}.feedback-thumbs{display:flex;flex-wrap:wrap;gap:10px}.feedback-thumb{position:relative;width:72px;height:72px;border-radius:10px;overflow:hidden;border:none;background:#00000059}.feedback-thumb img{width:100%;height:100%;object-fit:cover;display:block}.feedback-thumb-remove{position:absolute;top:4px;right:4px;width:20px;height:20px;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:14px;line-height:1;cursor:pointer}.feedback-success h4{color:#22c55e}.feedback-ticket-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}.feedback-ticket{padding:12px 14px;border-radius:12px;border:none;background:color-mix(in srgb,var(--bg) 45%,transparent)}.feedback-ticket-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.feedback-ticket-title{font-size:.9rem;font-weight:600;color:var(--text)}.feedback-ticket-status{flex-shrink:0;font-size:.72rem;padding:2px 8px;border-radius:999px;border:none;color:var(--text3);background:#ffffff14}.feedback-ticket-status.received{color:#6366f1;background:#6366f124}.feedback-ticket-status.processing{color:#d97706;background:#f59e0b2e}.feedback-ticket-status.done{color:#16a34a;background:#22c55e29}.feedback-ticket-meta{margin:0;display:flex;flex-wrap:wrap;gap:10px;font-size:.75rem;color:var(--text3)}.notice-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.notice-list{display:flex;flex-direction:column;gap:10px}.notice-row{display:flex;gap:0;border-radius:12px;border:none;background:var(--control-bg);overflow:hidden;cursor:pointer;transition:background .2s}.notice-row:hover{background:var(--control-bg-hover)}.notice-row.unread{background:var(--primary-muted)}.notice-main{flex:1;min-width:0;padding:12px 14px}.notice-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}.notice-category-tag{flex-shrink:0;font-size:.7rem;padding:2px 8px;border-radius:999px;border:none;color:var(--text2);background:#ffffff14}.notice-category-tag.feedback{color:#6366f1;background:#6366f124}.notice-category-tag.system{color:#16a34a;background:#22c55e29}.notice-category-tag.community{color:#d97706;background:#f59e0b2e}.notice-dot{width:7px;height:7px;border-radius:50%;background:#ef4444;flex-shrink:0}.notice-title{font-size:.9rem;font-weight:600;color:var(--text)}.notice-body{margin:0 0 8px;font-size:.82rem;line-height:1.5;color:var(--text2)}.notice-meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:.75rem;color:var(--text3)}.notice-ticket{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.notice-empty{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.notice-empty .profile-empty-hint{margin:0}.notice-row.clickable{cursor:pointer}.notice-action-hint{margin-left:auto;color:var(--text2);font-weight:600}.feedback-thread-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;overflow:hidden;overscroll-behavior:none}.feedback-thread-modal{width:min(860px,calc(100vw - 48px));height:min(760px,calc(100vh - 48px));height:min(760px,calc(100dvh - 48px));max-height:calc(100vh - 48px);max-height:calc(100dvh - 48px);margin:0;overflow:hidden;flex-shrink:1;display:flex;flex-direction:column;border:none;background:var(--bg);box-shadow:0 24px 64px var(--shadow);color:var(--text)}.feedback-thread-head{min-width:0;flex:1;padding-right:8px}.feedback-thread-head h3{margin:0;font-size:1.05rem;line-height:1.35}.feedback-thread-sub{margin:6px 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.75rem;color:var(--text3)}.feedback-thread-body{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:12px 24px 18px;display:flex;flex-direction:column;gap:14px}.feedback-thread-modal>.project-modal-head,.feedback-thread-modal>.feedback-thread-foot{flex-shrink:0}.feedback-bubble{max-width:86%;padding:10px 12px;border-radius:14px;border:none}.feedback-bubble.user{align-self:flex-end;background:var(--primary-muted)}.feedback-bubble.support{align-self:flex-start;background:var(--control-bg)}.feedback-bubble-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:6px;font-size:.7rem;color:var(--text3)}.feedback-bubble-text{margin:0;font-size:.88rem;line-height:1.55;color:var(--text);white-space:pre-wrap;word-break:break-word}.feedback-bubble-images{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.feedback-bubble-image{display:block;width:128px;height:128px;border-radius:10px;overflow:hidden;border:none}.feedback-bubble-image img{width:100%;height:100%;object-fit:cover;display:block}.feedback-thread-foot{flex-shrink:0;padding:14px 24px 20px;border-top:none;background:transparent;display:flex;flex-direction:column;gap:10px}.feedback-reply-composer{position:relative}.feedback-reply-input{width:100%;box-sizing:border-box;padding:12px 14px 40px;border-radius:12px;border:none;background:var(--control-bg);color:var(--text);font:inherit;font-size:.9rem;line-height:1.5;resize:vertical;min-height:96px}.feedback-reply-input::placeholder{color:var(--text2);opacity:1}.feedback-reply-composer:focus-within .feedback-reply-input{outline:none;background:var(--control-bg-hover)}.feedback-reply-input:focus{outline:none;background:var(--control-bg-hover)}.feedback-reply-image-btn{position:absolute;left:10px;bottom:8px;z-index:2;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:transparent;color:var(--text);cursor:pointer;transition:background .15s,color .15s,opacity .15s}.feedback-reply-image-btn:hover:not(:disabled){background:var(--primary-muted);color:var(--text)}.feedback-reply-image-btn:disabled{opacity:.35;cursor:not-allowed}.feedback-reply-image-btn .icon{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;color:inherit;line-height:0}.feedback-reply-image-btn .icon svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.feedback-reply-image-btn .icon svg rect,.feedback-reply-image-btn .icon svg circle,.feedback-reply-image-btn .icon svg path,.feedback-reply-image-btn .icon svg line{stroke:currentColor;fill:none}.feedback-reply-thumbs{display:flex;flex-wrap:wrap;gap:10px}.feedback-thread-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}[data-theme=dark] .profile-menu,[data-theme=dark] .profile-content,[data-theme=dark] .profile-side{background:#1c1c1c;border:none;backdrop-filter:none;-webkit-backdrop-filter:none}[data-theme=dark] .widget,[data-theme=dark] .profile-identity,[data-theme=dark] .order-row,[data-theme=dark] .notice-row,[data-theme=dark] .feedback-ticket,[data-theme=dark] .notice-empty{background:#141414;border:none}[data-theme=dark] .widget:hover,[data-theme=dark] .notice-row:hover{background:#1a1a1a}[data-theme=dark] .notice-row.unread{background:#222}[data-theme=dark] .order-filter-tab,[data-theme=dark] .feedback-chip,[data-theme=dark] .profile-link-btn,[data-theme=dark] .order-type,[data-theme=dark] .notice-category-tag,[data-theme=dark] .feedback-ticket-status{border:none}[data-theme=dark] .pro-badge{border:none;background:linear-gradient(135deg,#f59e0b,#f97316);color:#fff}[data-theme=dark] .feedback-text-input,[data-theme=dark] .feedback-input{background:#101010;border:none}[data-theme=dark] .feedback-text-input:focus,[data-theme=dark] .feedback-input:focus{background:#0d0d0d}[data-theme=dark] .feedback-thread-modal{background:#1c1c1c;border:none}[data-theme=dark] .feedback-thread-foot{background:#1c1c1c}[data-theme=dark] .feedback-reply-input{background:#141414;border:none}[data-theme=dark] .feedback-reply-input:focus,[data-theme=dark] .feedback-reply-composer:focus-within .feedback-reply-input{background:#101010}[data-theme=dark] .feedback-bubble.user{background:#2a2a2a}[data-theme=dark] .feedback-bubble.support{background:#141414}[data-theme=dark] .profile-content-header{border-bottom:none}[data-theme=dark] .profile-id,[data-theme=dark] .feedback-intro,[data-theme=dark] .widget-desc,[data-theme=dark] .notice-body,[data-theme=dark] .order-meta,[data-theme=dark] .feedback-hint,[data-theme=dark] .notice-action-hint,[data-theme=dark] .order-amount,[data-theme=dark] .profile-empty-hint,[data-theme=dark] .feedback-bubble-meta,[data-theme=dark] .feedback-thread-sub{color:#a3a3a3}[data-theme=dark] .feedback-reply-image-btn{color:#f5f5f5}[data-theme=dark] .feedback-reply-image-btn:hover:not(:disabled){background:#ffffff1f;color:#fff}[data-theme=dark] .order-type.recharge,[data-theme=dark] .notice-category-tag.system,[data-theme=dark] .feedback-ticket-status.done,[data-theme=dark] .order-status.success,[data-theme=dark] .order-points.plus{color:#4ade80}[data-theme=dark] .order-type.consume,[data-theme=dark] .notice-category-tag.feedback,[data-theme=dark] .feedback-ticket-status.received{color:#a5b4fc}[data-theme=dark] .notice-category-tag.community,[data-theme=dark] .feedback-ticket-status.processing,[data-theme=dark] .order-status.pending,[data-theme=dark] .order-points.minus{color:#fbbf24}[data-theme=dark] .notice-action-hint{color:#a5b4fc}[data-theme=dark] .profile-primary-btn{background:linear-gradient(135deg,#6366f1,#a855f7);color:#fff}[data-theme=dark] .feedback-chip.active,[data-theme=dark] .order-filter-tab.active{background:#6366f138;color:#c7d2fe}[data-theme=dark] .profile-menu-item.active{background:#6366f12e;color:#e0e7ff}[data-theme=light] .profile-menu,[data-theme=light] .profile-content,[data-theme=light] .profile-side{background:#ffffffd1;border:none}[data-theme=light] .widget,[data-theme=light] .profile-identity,[data-theme=light] .order-row,[data-theme=light] .notice-row,[data-theme=light] .feedback-ticket,[data-theme=light] .notice-empty{background:#0f172a0a;border:none}[data-theme=light] .profile-id,[data-theme=light] .feedback-intro,[data-theme=light] .widget-desc,[data-theme=light] .notice-body,[data-theme=light] .order-meta,[data-theme=light] .feedback-hint,[data-theme=light] .notice-action-hint,[data-theme=light] .order-amount,[data-theme=light] .profile-empty-hint,[data-theme=light] .feedback-bubble-meta,[data-theme=light] .feedback-thread-sub,[data-theme=light] .profile-menu-item{color:#475569}[data-theme=light] .profile-menu-item.active,[data-theme=light] .profile-content-title,[data-theme=light] .order-title,[data-theme=light] .notice-title,[data-theme=light] .feedback-label,[data-theme=light] .profile-name{color:#0f172a}[data-theme=light] .feedback-reply-image-btn{color:#334155}[data-theme=light] .feedback-reply-image-btn:hover:not(:disabled){background:#0f172a14;color:#0f172a}[data-theme=light] .feedback-text-input,[data-theme=light] .feedback-input,[data-theme=light] .feedback-reply-input{background:#fff;color:#0f172a}[data-theme=light] .feedback-text-input::placeholder,[data-theme=light] .feedback-input::placeholder,[data-theme=light] .feedback-reply-input::placeholder{color:#64748b}[data-theme=light] .feedback-thread-modal{background:#fff;color:#0f172a}[data-theme=light] .feedback-bubble.user{background:#0f172a14}[data-theme=light] .feedback-bubble.support{background:#0f172a0a}[data-theme=light] .profile-menu-item.danger,[data-theme=light] .profile-menu-item.danger:hover,[data-theme=light] .profile-menu-item.danger.active{color:#dc2626}.usage-widget{width:100%}.usage-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.usage-head h4{margin:0}.usage-month-switch{display:inline-flex;align-items:center;gap:6px}.usage-month-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:8px;background:var(--control-bg);color:var(--text);cursor:pointer}.usage-month-btn:hover:not(:disabled){background:var(--control-bg-hover)}.usage-month-btn:disabled{opacity:.35;cursor:not-allowed}.usage-month-btn .icon{width:16px;height:16px;display:inline-flex}.usage-month-btn .icon svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:1.9}.usage-month-label{min-width:7.5em;text-align:center;font-size:.85rem;font-weight:600;color:var(--text)}.usage-balance-row{display:flex;flex-wrap:wrap;gap:16px 28px;margin-bottom:16px}.usage-balance-item{display:flex;flex-direction:column;gap:4px}.usage-balance-label{font-size:.8rem;color:var(--text2)}.usage-balance-item strong{font-size:1.35rem;font-weight:700;color:var(--text);letter-spacing:-.02em}.usage-summary{display:flex;align-items:baseline;gap:8px;margin-bottom:14px;color:var(--text2);font-size:.85rem}.usage-summary strong{font-size:1.25rem;color:var(--text)}.usage-summary strong span{font-size:.9rem;font-weight:500;color:var(--text2)}.usage-chart{display:flex;align-items:stretch;gap:4px;width:100%;height:160px;padding:8px 0 4px;box-sizing:border-box}.usage-chart.loading{opacity:.55;pointer-events:none}.usage-bar-col{position:relative;flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;outline:none}.usage-bar-track{width:100%;height:120px;display:flex;align-items:flex-end;justify-content:center}.usage-bar{width:70%;max-width:18px;min-width:4px;border-radius:6px 6px 3px 3px;background:linear-gradient(180deg,#a855f7,#6366f1);transition:height .2s ease,filter .15s ease,opacity .15s ease}.usage-bar.empty{height:3px!important;opacity:.25;background:var(--text3)}.usage-bar.active{filter:brightness(1.15)}.usage-bar-label{font-size:.62rem;line-height:1;color:var(--text3)}.usage-bar-tip{position:absolute;top:0;left:50%;transform:translate(-50%,-8px);z-index:2;padding:4px 8px;border-radius:8px;white-space:nowrap;font-size:.7rem;color:#fff;background:#0f0f12eb;pointer-events:none}.doughnut-wrap{display:flex;align-items:center;gap:24px}.doughnut{position:relative;width:100px;height:100px}.doughnut svg{transform:rotate(-90deg)}.doughnut .center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:.75rem;color:var(--text2)}.doughnut .center strong{font-size:1.1rem;color:var(--text)}.widget .stat{font-size:.8rem;color:var(--text3);line-height:1.8}.widget-desc{font-size:.85rem;color:var(--text3)}.online-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);animation:pulse 2s infinite;display:inline-block}.logout-btn{color:#ef4444;border-color:#ef44444d}.logout-btn:hover{background:#ef444414}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@media(max-width:900px){.profile-layout{grid-template-columns:1fr}.profile-menu-nav{flex-direction:row;flex-wrap:wrap}.profile-menu-item{width:auto;flex:1 1 auto}}
