@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&display=swap";*{margin:0;padding:0;box-sizing:border-box}:root{--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-spring: .6s cubic-bezier(.34, 1.56, .64, 1);--canvas-cursor-arrow: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'%3E%3Cpath d='M0.9 0.9L16 7.35L8.35 9L6.75 16.1Z' fill='%23070a12' stroke='%23f4f6fb' stroke-width='0.75' stroke-linejoin='round'/%3E%3C/svg%3E") 1 1, auto;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--container-max-width: 1400px;--container-padding: 24px}[data-theme=dark]{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary-gradient-hover: linear-gradient(135deg, #5a6fd6 0%, #6a4190 100%);--accent-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--success-gradient: linear-gradient(135deg, #11998e 0%, #38ef7d 100%);--warning-gradient: linear-gradient(135deg, #f2994a 0%, #f2c94c 100%);--error-gradient: linear-gradient(135deg, #eb3349 0%, #f45c43 100%);--color-primary: #667eea;--color-primary-light: #a5b4fc;--color-primary-dark: #5a67d8;--color-accent: #f093fb;--color-accent-alt: #f5576c;--color-bg-deep: #0f0f1a;--color-bg-dark: #13131f;--color-bg-card: #1a1a2e;--color-bg-elevated: #242438;--color-bg-hover: #2d2d44;--glass-bg: rgba(255, 255, 255, .03);--glass-bg-hover: rgba(255, 255, 255, .06);--glass-border: rgba(255, 255, 255, .08);--glass-border-hover: rgba(255, 255, 255, .15);--color-text-primary: #f0f0f5;--color-text-secondary: #a0a0b8;--color-text-muted: #6b6b80;--color-text-accent: #c4b5fd;--color-success: #10b981;--color-success-light: #34d399;--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-error: #ef4444;--color-error-light: #f87171;--color-info: #3b82f6;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .25);--shadow-md: 0 4px 20px rgba(0, 0, 0, .35);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .5);--shadow-xl: 0 25px 60px rgba(0, 0, 0, .6);--shadow-glow: 0 0 40px rgba(102, 126, 234, .3);--shadow-glow-accent: 0 0 40px rgba(240, 147, 251, .25);--color-sidebar-bg: rgba(10, 10, 18, .85);--color-sidebar-border: rgba(255, 255, 255, .04);--color-sidebar-hover: rgba(255, 255, 255, .06);--color-sidebar-divider: rgba(255, 255, 255, .06);--color-sidebar-text: rgba(255, 255, 255, .35);--color-sidebar-text-hover: rgba(255, 255, 255, .6);--color-overlay-bg: rgba(0, 0, 0, .8);--color-modal-bg: rgba(20, 20, 35, .95);--color-popover-divider: rgba(255, 255, 255, .06);--color-popover-hover: rgba(255, 255, 255, .05);--color-card-solid: #141423;--color-panel-bg: rgba(14, 14, 28, .7);--color-page-gradient-start: #0a0a12;--color-page-gradient-mid: #0f0f1a;--color-page-gradient-end: #0a0f2c;--color-divider: rgba(255, 255, 255, .06);--color-border-subtle: rgba(255, 255, 255, .04);--color-border-light: rgba(255, 255, 255, .06);--color-border-medium: rgba(255, 255, 255, .08);--color-border-strong: rgba(255, 255, 255, .12);--color-border-focus: rgba(102, 126, 234, .45);--color-input-bg: rgba(255, 255, 255, .04);--color-input-bg-hover: rgba(255, 255, 255, .07);--color-input-bg-focus: rgba(255, 255, 255, .06);--color-actions-overlay: rgba(0, 0, 0, .6);--color-badge-bg: rgba(0, 0, 0, .7);--color-tint-white-02: rgba(255, 255, 255, .02);--color-tint-white-03: rgba(255, 255, 255, .03);--color-tint-white-04: rgba(255, 255, 255, .04);--color-tint-white-05: rgba(255, 255, 255, .05);--color-tint-white-06: rgba(255, 255, 255, .06);--color-tint-white-08: rgba(255, 255, 255, .08);--color-tint-white-10: rgba(255, 255, 255, .1);--color-tint-white-12: rgba(255, 255, 255, .12);--color-tint-white-15: rgba(255, 255, 255, .15);--color-tint-white-20: rgba(255, 255, 255, .2);--color-tint-black-20: rgba(0, 0, 0, .2);--color-tint-black-30: rgba(0, 0, 0, .3);--color-tint-black-50: rgba(0, 0, 0, .5);--color-tint-black-60: rgba(0, 0, 0, .6);--color-tint-black-70: rgba(0, 0, 0, .7);--scrollbar-track: rgba(255, 255, 255, .02);--scrollbar-thumb: linear-gradient(180deg, rgba(102, 126, 234, .4) 0%, rgba(118, 75, 162, .4) 100%);--scrollbar-thumb-hover: linear-gradient(180deg, rgba(102, 126, 234, .6) 0%, rgba(118, 75, 162, .6) 100%);--scrollbar-color: rgba(102, 126, 234, .4) rgba(255, 255, 255, .02);--particle-color: 129, 140, 248;--canvas-bg: #0d1014;--canvas-bg-soft: #11161b;--canvas-panel: rgba(21, 26, 32, .92);--canvas-panel-solid: #151a20;--canvas-panel-raised: rgba(27, 33, 40, .96);--canvas-field: rgba(255, 255, 255, .045);--canvas-field-hover: rgba(255, 255, 255, .075);--canvas-border: rgba(255, 255, 255, .1);--canvas-border-strong: rgba(255, 255, 255, .16);--canvas-hairline: rgba(255, 255, 255, .065);--canvas-text: #edf2f7;--canvas-text-secondary: rgba(237, 242, 247, .72);--canvas-text-muted: rgba(237, 242, 247, .46);--canvas-accent: #2f7d75;--canvas-accent-strong: #4bb6a9;--canvas-accent-soft: rgba(47, 125, 117, .18);--canvas-warm: #c28f5c;--canvas-danger: #db5a5a;--canvas-shadow-sm: 0 8px 20px rgba(0, 0, 0, .22);--canvas-shadow-md: 0 18px 44px rgba(0, 0, 0, .34);--canvas-shadow-lg: 0 28px 70px rgba(0, 0, 0, .46);--canvas-node-shadow: 0 18px 40px rgba(0, 0, 0, .26);--canvas-blur: blur(18px) saturate(135%);--canvas-radius: 8px}[data-theme=light]{--primary-gradient: linear-gradient(135deg, #5a6fd6 0%, #6a4190 100%);--primary-gradient-hover: linear-gradient(135deg, #4e5fc4 0%, #5c377e 100%);--accent-gradient: linear-gradient(135deg, #e070eb 0%, #e04058 100%);--success-gradient: linear-gradient(135deg, #0d8a7a 0%, #2ed06d 100%);--warning-gradient: linear-gradient(135deg, #e08a3a 0%, #e0b83a 100%);--error-gradient: linear-gradient(135deg, #d42a3f 0%, #e04838 100%);--color-primary: #5a6fd6;--color-primary-light: #8b9cf0;--color-primary-dark: #4a5bc0;--color-accent: #d070e0;--color-accent-alt: #e04058;--color-bg-deep: #f8f9fc;--color-bg-dark: #f0f1f6;--color-bg-card: #ffffff;--color-bg-elevated: #ffffff;--color-bg-hover: #ecedf4;--glass-bg: rgba(0, 0, 0, .02);--glass-bg-hover: rgba(0, 0, 0, .04);--glass-border: rgba(0, 0, 0, .08);--glass-border-hover: rgba(0, 0, 0, .15);--color-text-primary: #1a1b2e;--color-text-secondary: #5a5b6e;--color-text-muted: #8a8b9e;--color-text-accent: #6a4190;--color-success: #059669;--color-success-light: #10b981;--color-warning: #d97706;--color-warning-light: #f59e0b;--color-error: #dc2626;--color-error-light: #ef4444;--color-info: #2563eb;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 20px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .12);--shadow-xl: 0 25px 60px rgba(0, 0, 0, .15);--shadow-glow: 0 0 40px rgba(90, 111, 214, .15);--shadow-glow-accent: 0 0 40px rgba(208, 112, 224, .12);--color-sidebar-bg: rgba(255, 255, 255, .9);--color-sidebar-border: rgba(0, 0, 0, .06);--color-sidebar-hover: rgba(0, 0, 0, .04);--color-sidebar-divider: rgba(0, 0, 0, .06);--color-sidebar-text: rgba(0, 0, 0, .4);--color-sidebar-text-hover: rgba(0, 0, 0, .65);--color-overlay-bg: rgba(0, 0, 0, .4);--color-modal-bg: rgba(255, 255, 255, .97);--color-popover-divider: rgba(0, 0, 0, .06);--color-popover-hover: rgba(0, 0, 0, .04);--color-card-solid: #ffffff;--color-panel-bg: rgba(255, 255, 255, .85);--color-page-gradient-start: #f8f9fc;--color-page-gradient-mid: #f0f1f6;--color-page-gradient-end: #e8eaef;--color-divider: rgba(0, 0, 0, .06);--color-border-subtle: rgba(0, 0, 0, .04);--color-border-light: rgba(0, 0, 0, .06);--color-border-medium: rgba(0, 0, 0, .08);--color-border-strong: rgba(0, 0, 0, .12);--color-border-focus: rgba(90, 111, 214, .45);--color-input-bg: rgba(0, 0, 0, .03);--color-input-bg-hover: rgba(0, 0, 0, .05);--color-input-bg-focus: rgba(0, 0, 0, .04);--color-actions-overlay: rgba(255, 255, 255, .7);--color-badge-bg: rgba(0, 0, 0, .6);--color-tint-white-02: rgba(0, 0, 0, .01);--color-tint-white-03: rgba(0, 0, 0, .02);--color-tint-white-04: rgba(0, 0, 0, .03);--color-tint-white-05: rgba(0, 0, 0, .04);--color-tint-white-06: rgba(0, 0, 0, .05);--color-tint-white-08: rgba(0, 0, 0, .06);--color-tint-white-10: rgba(0, 0, 0, .08);--color-tint-white-12: rgba(0, 0, 0, .1);--color-tint-white-15: rgba(0, 0, 0, .12);--color-tint-white-20: rgba(0, 0, 0, .15);--color-tint-black-20: rgba(0, 0, 0, .08);--color-tint-black-30: rgba(0, 0, 0, .12);--color-tint-black-50: rgba(0, 0, 0, .2);--color-tint-black-60: rgba(0, 0, 0, .25);--color-tint-black-70: rgba(0, 0, 0, .3);--scrollbar-track: rgba(0, 0, 0, .03);--scrollbar-thumb: linear-gradient(180deg, rgba(90, 111, 214, .3) 0%, rgba(106, 65, 144, .3) 100%);--scrollbar-thumb-hover: linear-gradient(180deg, rgba(90, 111, 214, .5) 0%, rgba(106, 65, 144, .5) 100%);--scrollbar-color: rgba(90, 111, 214, .3) rgba(0, 0, 0, .03);--particle-color: 90, 111, 214;--canvas-bg: #f4f6f2;--canvas-bg-soft: #e8ece6;--canvas-panel: rgba(255, 255, 255, .9);--canvas-panel-solid: #ffffff;--canvas-panel-raised: rgba(255, 255, 255, .97);--canvas-field: rgba(28, 36, 45, .045);--canvas-field-hover: rgba(28, 36, 45, .075);--canvas-border: rgba(34, 43, 54, .12);--canvas-border-strong: rgba(34, 43, 54, .2);--canvas-hairline: rgba(34, 43, 54, .075);--canvas-text: #1f272e;--canvas-text-secondary: rgba(31, 39, 46, .7);--canvas-text-muted: rgba(31, 39, 46, .46);--canvas-accent: #2f7d75;--canvas-accent-strong: #23635d;--canvas-accent-soft: rgba(47, 125, 117, .13);--canvas-warm: #a96f39;--canvas-danger: #b94d4d;--canvas-shadow-sm: 0 8px 22px rgba(38, 45, 56, .08);--canvas-shadow-md: 0 18px 46px rgba(38, 45, 56, .12);--canvas-shadow-lg: 0 28px 76px rgba(38, 45, 56, .18);--canvas-node-shadow: 0 18px 42px rgba(45, 54, 66, .13);--canvas-blur: blur(18px) saturate(145%);--canvas-radius: 8px}@media (max-width: 1024px){:root{--spacing-lg: 20px;--spacing-xl: 28px;--spacing-2xl: 40px;--spacing-3xl: 56px;--container-padding: 20px}}@media (max-width: 768px){:root{--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--spacing-2xl: 32px;--spacing-3xl: 48px;--container-padding: 16px;--radius-lg: 12px;--radius-xl: 16px}}@media (max-width: 480px){:root{--spacing-sm: 6px;--spacing-md: 10px;--spacing-lg: 14px;--spacing-xl: 20px;--spacing-2xl: 28px;--spacing-3xl: 40px;--container-padding: 12px;--radius-md: 8px;--radius-lg: 10px;--radius-xl: 14px}}html{scroll-behavior:smooth;overscroll-behavior-x:none}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--color-bg-deep);color:var(--color-text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background-attachment:fixed;min-height:100vh;overflow-x:hidden;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent;transition:background-color .3s,color .3s}#app{width:100%;min-height:100vh;min-height:100dvh;position:relative}button{font-family:inherit;cursor:pointer;transition:all var(--transition-normal);border:none;border-radius:var(--radius-md);font-weight:600;letter-spacing:.01em}button:disabled{cursor:not-allowed;opacity:.5;transform:none!important}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}input,textarea,select{font-family:inherit;color:var(--color-text-primary);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);padding:10px 14px;transition:all var(--transition-normal);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}input:focus,textarea:focus,select:focus{outline:none;background:var(--glass-bg-hover);border-color:var(--color-primary);box-shadow:0 0 0 3px #667eea33,var(--shadow-glow)}input:hover:not(:focus),textarea:hover:not(:focus),select:hover:not(:focus){border-color:var(--glass-border-hover);background:var(--glass-bg-hover)}input::placeholder,textarea::placeholder{color:var(--color-text-muted)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color)}@media (max-width: 1200px){:root{font-size:15px}}@media (max-width: 768px){:root{font-size:14px}input,textarea,select{padding:8px 12px}}@media (max-width: 480px){:root{font-size:13px}input,textarea,select{padding:7px 10px}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #667eea4d}50%{box-shadow:0 0 40px #667eea80,0 0 60px #f093fb4d}}@keyframes borderGlow{0%,to{border-color:#667eea4d}50%{border-color:#f093fb80}}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes subtleGlow{0%,to{box-shadow:0 0 20px #667eea26}50%{box-shadow:0 0 30px #667eea40,0 0 60px #f093fb1a}}@keyframes borderShimmer{0%{border-color:#667eea26}50%{border-color:#f093fb33}to{border-color:#667eea26}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.glass-card:hover{background:var(--glass-bg-hover);border-color:var(--glass-border-hover);box-shadow:var(--shadow-md)}.gradient-text{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.gradient-text-accent{background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.btn-primary{background:var(--primary-gradient);color:#fff;padding:10px 20px;font-weight:600;border-radius:var(--radius-md);border:none;box-shadow:0 4px 15px #667eea66;transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea80}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-secondary{background:var(--glass-bg);color:var(--color-text-primary);padding:10px 20px;border:1px solid var(--glass-border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-secondary:hover:not(:disabled){background:var(--glass-bg-hover);border-color:var(--color-primary);transform:translateY(-1px)}.btn-accent{background:var(--accent-gradient);color:#fff;padding:10px 20px;font-weight:600;border-radius:var(--radius-md);border:none;box-shadow:0 4px 15px #f093fb66;transition:all var(--transition-normal);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none}.btn-accent:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #f093fb80}@media (max-width: 768px){.btn-primary,.btn-secondary,.btn-accent{min-height:40px;padding:8px 16px}.btn-primary:hover:not(:disabled),.btn-secondary:hover:not(:disabled),.btn-accent:hover:not(:disabled){transform:none}.btn-primary:active:not(:disabled),.btn-secondary:active:not(:disabled),.btn-accent:active:not(:disabled){opacity:.8;transform:scale(.98)}}.loading-spinner{width:40px;height:40px;border:3px solid rgba(102,126,234,.2);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading-dots{display:flex;gap:6px}.loading-dots span{width:8px;height:8px;background:var(--color-primary);border-radius:50%;animation:pulse 1.4s ease-in-out infinite}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}.hover-lift{transition:all var(--transition-normal)}.hover-lift:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.animate-border{position:relative;background:var(--glass-bg);border-radius:var(--radius-lg)}.animate-border:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:var(--primary-gradient);z-index:-1;opacity:0;transition:opacity var(--transition-normal)}.animate-border:hover:before{opacity:1}.selected{border-color:var(--color-primary)!important;background:#667eea1a!important;box-shadow:0 0 0 3px #667eea33}.hide-mobile{display:block}.show-mobile{display:none}.container-responsive{width:100%;max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}button,a,[role=button],input[type=button],input[type=submit]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}@media (max-width: 768px){.hide-mobile{display:none!important}.show-mobile{display:block!important}.reduce-motion-mobile *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.n-popover,.v-binder-follower-content,.n-popover-shared{max-width:calc(100vw - 16px)!important}}@media (max-width: 480px){.hide-small{display:none!important}}.composer-select-menu{max-height:480px!important;border-radius:12px!important;padding:6px!important;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%)}.composer-select-menu .n-virtual-list{max-height:460px!important}.composer-select-menu .n-base-select-option{font-size:13px;border-radius:8px;margin:1px 0;padding:6px 12px;transition:background .15s ease,color .15s ease}.composer-select-menu .n-base-select-option:hover,.composer-select-menu .n-base-select-option--pending{background:#00cae01f!important;color:#00cae0!important}.composer-select-menu .n-base-select-option--selected{background:#00cae02e!important;color:#00cae0!important;font-weight:600}.composer-select-menu .n-base-select-option--selected:after{background:#00cae0!important}[data-theme=dark] .composer-select-menu{background:#161820eb!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 12px 32px #00000073,0 2px 8px #0000004d!important}[data-theme=dark] .composer-select-menu .n-base-select-option{color:#ffffffd9}[data-theme=dark] .composer-select-menu .n-scrollbar-rail__scrollbar{background:#ffffff2e!important}[data-theme=light] .composer-select-menu{background:#fffffff5!important;border:1px solid rgba(0,0,0,.06)!important;box-shadow:0 12px 32px #0000001f,0 2px 8px #0000000f!important}[data-theme=light] .composer-select-menu .n-base-select-option{color:#1a1b2e}[data-theme=light] .composer-select-menu .n-scrollbar-rail__scrollbar{background:#0000002e!important}.composer-dropdown-menu{border-radius:12px!important;padding:6px!important;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%)}.composer-dropdown-menu .n-dropdown-option{border-radius:8px;margin:1px 0;padding:0!important;transition:background .15s ease,color .15s ease}.composer-dropdown-menu .n-dropdown-option-body{border-radius:8px;padding:6px 12px!important;font-size:13px}.composer-dropdown-menu .n-dropdown-option-body:hover,.composer-dropdown-menu .n-dropdown-option-body--pending{background:#00cae01f!important;color:#00cae0!important}.composer-dropdown-menu .n-dropdown-option-body--selected{background:#00cae02e!important;color:#00cae0!important;font-weight:600}[data-theme=dark] .composer-dropdown-menu{background:#161820eb!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 12px 32px #00000073,0 2px 8px #0000004d!important}[data-theme=dark] .composer-dropdown-menu .n-dropdown-option-body{color:#ffffffd9}[data-theme=light] .composer-dropdown-menu{background:#fffffff5!important;border:1px solid rgba(0,0,0,.06)!important;box-shadow:0 12px 32px #0000001f,0 2px 8px #0000000f!important}[data-theme=light] .composer-dropdown-menu .n-dropdown-option-body{color:#1a1b2e}.canvases-page{height:100%;overflow:auto;padding:32px;background:var(--color-bg-deep)}.canvases-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:28px}.section-kicker{font-size:12px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;margin-bottom:6px}.canvases-header h1,.empty-canvases h2{font-size:28px;line-height:1.2;color:var(--color-text-primary)}.primary-action{height:40px;border:0;border-radius:8px;padding:0 16px;display:inline-flex;align-items:center;gap:8px;color:#fff;background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent));cursor:pointer;font-weight:700;box-shadow:var(--shadow-md)}.primary-action:disabled{cursor:not-allowed;opacity:.55}.canvas-list-loading,.canvas-page-loading,.empty-canvases{min-height:360px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:var(--color-text-secondary)}.empty-canvases{border:1px solid var(--color-border-medium);border-radius:10px;background:var(--color-panel-bg);text-align:center;padding:32px}.empty-canvases p{max-width:420px;color:var(--color-text-secondary);line-height:1.7}.empty-icon{width:64px;height:64px;border-radius:10px;display:grid;place-items:center;color:var(--color-primary);background:var(--color-input-bg);border:1px solid var(--color-border-medium)}.canvas-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px}.canvas-card{position:relative;border:1px solid var(--color-border-medium);background:var(--color-bg-card);border-radius:8px;overflow:hidden;cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast)}.canvas-card:hover{transform:translateY(-2px);border-color:var(--color-border-focus);box-shadow:var(--shadow-md)}.canvas-card-preview{height:164px;display:grid;place-items:center;color:var(--color-text-muted);background:linear-gradient(var(--color-border-subtle) 1px,transparent 1px),linear-gradient(90deg,var(--color-border-subtle) 1px,transparent 1px),var(--color-bg-dark);background-size:22px 22px;overflow:hidden}.canvas-card-preview img{width:100%;height:100%;min-width:100%;min-height:100%;object-fit:cover;object-position:50% 50%;display:block}.canvas-card-body{padding:14px}.canvas-card-body h2{font-size:15px;color:var(--color-text-primary);margin-bottom:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-card-body p{color:var(--color-text-muted);font-size:12px}.canvas-card-delete{position:absolute;right:10px;top:10px;width:32px;height:32px;border:1px solid var(--color-border-medium);border-radius:8px;color:var(--color-text-secondary);background:var(--color-modal-bg);display:grid;place-items:center;opacity:0;cursor:pointer}.canvas-card:hover .canvas-card-delete{opacity:1}.canvas-card-delete:hover{color:var(--color-error)}.canvas-editor{height:100%;min-height:0;display:flex;flex-direction:column;position:relative;overflow:hidden;color:var(--canvas-text);background:radial-gradient(circle at 18% 14%,color-mix(in srgb,var(--canvas-accent) 13%,transparent) 0,transparent 28%),radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--canvas-warm) 10%,transparent) 0,transparent 24%),linear-gradient(135deg,var(--canvas-bg),var(--canvas-bg-soft));overscroll-behavior:none;--color-bg-card: var(--canvas-panel-solid);--color-bg-dark: color-mix(in srgb, var(--canvas-bg) 88%, #000 12%);--color-modal-bg: var(--canvas-panel-raised);--color-input-bg: var(--canvas-field);--color-input-bg-hover: var(--canvas-field-hover);--color-border-medium: var(--canvas-border);--color-border-strong: var(--canvas-border-strong);--color-border-subtle: var(--canvas-hairline);--color-border-focus: color-mix(in srgb, var(--canvas-accent) 62%, transparent);--color-text-primary: var(--canvas-text);--color-text-secondary: var(--canvas-text-secondary);--color-text-muted: var(--canvas-text-muted);--color-primary: var(--canvas-accent);--color-primary-light: var(--canvas-accent-strong);--color-accent: var(--canvas-warm);--color-card-bg: var(--canvas-field)}.canvas-editor:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(90deg,color-mix(in srgb,var(--canvas-border) 24%,transparent) 1px,transparent 1px),linear-gradient(180deg,color-mix(in srgb,var(--canvas-border) 24%,transparent) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(circle at 50% 46%,rgba(0,0,0,.82),transparent 72%);mask-image:radial-gradient(circle at 50% 46%,rgba(0,0,0,.82),transparent 72%);opacity:.38;z-index:0}.canvas-editor.fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:5000;width:100vw;height:100vh;height:100dvh}.canvas-editor:fullscreen{width:100vw;height:100vh;height:100dvh;background:var(--canvas-bg)}.canvas-topbar{position:fixed;top:18px;left:82px;right:18px;height:46px;display:flex;align-items:center;justify-content:space-between;gap:16px;pointer-events:none;z-index:7600}.canvas-editor.fullscreen .canvas-topbar,.canvas-editor:fullscreen .canvas-topbar{position:fixed;top:18px;left:18px;right:18px;height:46px;z-index:7600}html.app-sidebar-collapsed .canvas-editor:not(.fullscreen) .canvas-topbar{left:18px}.canvas-editor.fullscreen .canvas-title-group,.canvas-editor:fullscreen .canvas-title-group{width:min(360px,38vw);max-width:calc(50vw - 28px);min-height:40px;padding:4px 10px 4px 7px}.canvas-editor.fullscreen .canvas-toolbar,.canvas-editor:fullscreen .canvas-toolbar{max-width:min(540px,calc(52vw - 20px))}.canvas-toolbar-tooltip{position:fixed;z-index:7000;transform:translate(-50%);pointer-events:none;min-width:52px;max-width:180px;padding:7px 10px;border-radius:var(--canvas-radius);border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);color:var(--canvas-text);box-shadow:var(--canvas-shadow-sm);font-size:12px;font-weight:700;line-height:1.35;text-align:center;white-space:nowrap;backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-toolbar-tooltip:before{content:"";position:absolute;left:50%;top:-5px;width:8px;height:8px;transform:translate(-50%) rotate(45deg);border-left:1px solid var(--canvas-border);border-top:1px solid var(--canvas-border);background:var(--canvas-panel-raised)}.canvas-title-group,.canvas-toolbar{display:flex;align-items:center;gap:8px;min-width:0;pointer-events:auto;border:1px solid var(--canvas-border);background:var(--canvas-panel);box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 7%,transparent);backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-title-group{flex:0 1 auto;width:min(286px,30vw);max-width:calc(38vw - 20px);min-height:40px;padding:4px 10px 4px 7px;border-radius:var(--canvas-radius)}.canvas-toolbar{flex:0 1 auto;width:max-content;max-width:min(620px,calc(60vw - 18px));min-height:38px;padding:4px;gap:5px;border-radius:var(--canvas-radius);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.canvas-toolbar-group{flex:0 0 auto;display:inline-flex;align-items:center;gap:3px;padding:1px;border-radius:8px;border:1px solid color-mix(in srgb,var(--canvas-border) 72%,transparent);background:color-mix(in srgb,var(--canvas-field) 42%,transparent)}.canvas-round-btn,.canvas-tool-btn,.canvas-icon-btn{border:1px solid transparent;background:transparent;color:var(--canvas-text-secondary);display:inline-grid;place-items:center;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.canvas-round-btn,.canvas-tool-btn{flex:0 0 30px;width:30px;height:30px;border-radius:6px}.canvas-tool-btn.primary{color:#fff;background:var(--canvas-accent);border-color:color-mix(in srgb,var(--canvas-accent-strong) 52%,transparent);box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.canvas-tool-btn.active{color:#fff;background:color-mix(in srgb,var(--canvas-accent) 86%,#111 14%);border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);box-shadow:0 0 0 3px var(--canvas-accent-soft),inset 0 1px color-mix(in srgb,#fff 12%,transparent)}.canvas-topbar .canvas-round-btn,.canvas-topbar .canvas-tool-btn{background:transparent;border-color:transparent}.canvas-topbar .canvas-tool-btn.primary{background:var(--canvas-accent);border-color:color-mix(in srgb,var(--canvas-accent-strong) 52%,transparent)}.canvas-topbar .canvas-tool-btn.active{background:color-mix(in srgb,var(--canvas-accent) 86%,#111 14%);border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent)}.canvas-round-btn:hover,.canvas-tool-btn:hover,.canvas-icon-btn:hover{color:var(--canvas-text);border-color:var(--canvas-border);background:var(--canvas-field-hover);transform:translateY(-1px)}.canvas-tool-btn:disabled,.canvas-icon-btn:disabled{cursor:not-allowed;opacity:.35}.canvas-toolbar-divider{flex:0 0 1px;width:1px;height:18px;margin:0 2px;background:color-mix(in srgb,var(--canvas-border) 74%,transparent)}.canvas-context-menu{position:fixed;z-index:7200;width:232px;padding:7px;border-radius:var(--canvas-radius);border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-md);backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-context-section+.canvas-context-section{margin-top:7px;padding-top:7px;border-top:1px solid var(--canvas-hairline)}.canvas-context-item{width:100%;min-height:38px;border:0;border-radius:7px;padding:0 10px;background:transparent;color:var(--canvas-text);display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:13px;font-weight:700;text-align:left}.canvas-context-left{min-width:0;display:inline-flex;align-items:center;gap:10px}.canvas-context-icon{width:26px;height:26px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;background:var(--canvas-field);color:var(--canvas-text-secondary)}.canvas-context-title{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-context-primary{background:var(--canvas-field)}.canvas-context-arrow{flex:0 0 auto;color:var(--canvas-text-muted);transition:transform .16s ease}.canvas-context-arrow.open{transform:rotate(90deg)}.canvas-context-item:hover:not(:disabled){color:var(--canvas-text);background:var(--canvas-field-hover)}.canvas-context-item:hover:not(:disabled) .canvas-context-icon{color:var(--canvas-accent-strong);background:var(--canvas-accent-soft)}.canvas-context-item:disabled{cursor:not-allowed;color:var(--canvas-text-muted);opacity:.45}.canvas-context-node-grid{margin-top:8px;padding:8px;border-radius:var(--canvas-radius);border:1px solid var(--canvas-hairline);background:color-mix(in srgb,var(--canvas-field) 74%,transparent);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.canvas-context-node{min-width:0;height:40px;border:1px solid var(--canvas-hairline);border-radius:7px;padding:0 9px;background:var(--canvas-field);color:var(--canvas-text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:12px;font-weight:700}.canvas-context-node.wide{grid-column:1 / -1}.canvas-context-node span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-context-node:hover{color:var(--canvas-text);border-color:color-mix(in srgb,var(--canvas-accent) 54%,var(--canvas-border));background:var(--canvas-field-hover)}.canvas-asset-library{position:absolute;top:76px;right:16px;width:min(520px,calc(100vw - 32px));max-height:calc(100% - 92px);z-index:55;display:flex;flex-direction:column;border-radius:var(--canvas-radius);border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-lg);overflow:hidden;backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-editor.fullscreen .canvas-asset-library,.canvas-editor:fullscreen .canvas-asset-library{top:76px;right:24px;max-height:calc(100dvh - 96px)}.canvas-builtin-library{width:min(520px,calc(100vw - 32px));height:min(760px,calc(100% - 92px));max-height:calc(100% - 92px);border-color:color-mix(in srgb,var(--canvas-accent) 30%,var(--canvas-border));background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 96%,transparent),color-mix(in srgb,var(--canvas-panel-solid) 98%,transparent)),radial-gradient(circle at 86% 8%,color-mix(in srgb,var(--canvas-accent) 12%,transparent),transparent 32%)}.canvas-editor.fullscreen .canvas-builtin-library,.canvas-editor:fullscreen .canvas-builtin-library{height:min(760px,calc(100dvh - 96px));max-height:calc(100dvh - 96px)}.canvas-asset-library-head{min-height:64px;padding:13px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--canvas-hairline)}.canvas-builtin-head{min-height:52px;padding:9px 12px;background:linear-gradient(90deg,color-mix(in srgb,var(--canvas-accent) 8%,transparent),transparent 62%),color-mix(in srgb,var(--canvas-field) 18%,transparent)}.canvas-builtin-titlebar{min-width:0;display:flex;align-items:center;gap:8px}.canvas-builtin-mark{flex:0 0 auto;width:28px;height:28px;border-radius:8px;border:1px solid color-mix(in srgb,var(--canvas-accent) 42%,var(--canvas-border));background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-accent-strong) 20%,transparent),color-mix(in srgb,var(--canvas-accent) 16%,var(--canvas-field)));color:var(--canvas-accent-strong);display:inline-flex;align-items:center;justify-content:center;box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.canvas-builtin-head h2{font-size:13px;line-height:1.15}.canvas-builtin-head p{margin-top:1px;font-size:10px;line-height:1.25}.canvas-asset-library-head h2{margin:0;color:var(--canvas-text);font-size:15px;font-weight:800}.canvas-asset-library-head p{margin:3px 0 0;color:var(--canvas-text-muted);font-size:12px}.canvas-asset-search{height:38px;margin:12px 12px 10px;padding:0 10px;border-radius:7px;border:1px solid var(--canvas-border);background:var(--canvas-field);display:flex;align-items:center;gap:8px;color:var(--canvas-text-muted)}.canvas-builtin-controls{flex:0 0 auto;padding:8px 10px 7px;border-bottom:1px solid var(--canvas-hairline);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 88%,transparent),color-mix(in srgb,var(--canvas-panel-solid) 88%,transparent))}.canvas-builtin-search{margin:0;height:32px;padding:0 8px;border-radius:7px;gap:6px;background:color-mix(in srgb,var(--canvas-field) 78%,transparent)}.canvas-builtin-search input{height:100%;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;font-size:12px;line-height:32px}.canvas-builtin-search input:focus,.canvas-builtin-search input:hover{background:transparent;box-shadow:none}.canvas-builtin-search .n-icon{flex:0 0 auto;width:15px;height:15px}.canvas-ai-panel{--canvas-ai-width: min(680px, calc(100vw - 44px) );position:fixed;top:76px;right:calc(18px + var(--canvas-ai-offset, 0px));bottom:16px;z-index:58;display:flex;align-items:flex-end;pointer-events:none;transition:right .24s ease}.canvas-editor.fullscreen .canvas-ai-panel,.canvas-editor:fullscreen .canvas-ai-panel{top:76px;right:calc(18px + var(--canvas-ai-offset, 0px));bottom:18px}.canvas-ai-toggle,.canvas-ai-shell{pointer-events:auto}.canvas-ai-toggle{position:absolute;top:0;right:0;width:52px;height:52px;border:1px solid color-mix(in srgb,var(--canvas-accent) 26%,var(--canvas-border));border-radius:18px;padding:0;background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--canvas-accent) 18%,transparent),transparent 54%),color-mix(in srgb,var(--canvas-panel-raised) 96%,transparent);color:var(--canvas-text);box-shadow:0 14px 28px #050f1124;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.canvas-ai-toggle:hover{transform:translate(-2px);border-color:color-mix(in srgb,var(--canvas-accent) 56%,var(--canvas-border));background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--canvas-accent) 22%,transparent),transparent 54%),color-mix(in srgb,var(--canvas-panel-solid) 98%,transparent);box-shadow:0 16px 32px #050f112e}.canvas-ai-toggle-icon{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--canvas-accent) 14%,var(--canvas-field));box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)}.canvas-ai-robot{position:relative;width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center}.canvas-ai-robot.small{width:15px;height:15px}.canvas-ai-robot-antenna{position:absolute;top:0;left:50%;width:2px;height:5px;transform:translate(-50%);border-radius:999px;background:currentColor;opacity:.92}.canvas-ai-robot:before{content:"";position:absolute;top:-1px;left:50%;width:5px;height:5px;transform:translate(-50%);border-radius:50%;background:currentColor;box-shadow:0 0 0 2px color-mix(in srgb,currentColor 14%,transparent)}.canvas-ai-robot-head{position:relative;width:18px;height:13px;margin-top:5px;border:1.8px solid currentColor;border-radius:5px;display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:color-mix(in srgb,#fff 14%,transparent)}.canvas-ai-robot.small .canvas-ai-robot-head{width:14px;height:10px;margin-top:4px;border-width:1.5px;border-radius:4px}.canvas-ai-robot-eyes{display:inline-flex;align-items:center;gap:4px}.canvas-ai-robot.small .canvas-ai-robot-eyes{gap:3px}.canvas-ai-robot-eyes span{width:2.6px;height:2.6px;border-radius:50%;background:currentColor}.canvas-ai-robot.small .canvas-ai-robot-eyes span{width:2px;height:2px}.canvas-ai-robot-mouth{width:7px;height:1.8px;border-radius:999px;background:currentColor;opacity:.72}.canvas-ai-robot.small .canvas-ai-robot-mouth{width:5px;height:1.4px}.canvas-ai-toggle-tooltip{position:absolute;right:calc(100% + 10px);top:50%;transform:translateY(-50%) translate(6px);height:30px;padding:0 10px;border-radius:9px;border:1px solid var(--canvas-border);background:color-mix(in srgb,var(--canvas-panel-solid) 96%,transparent);color:var(--canvas-text);display:inline-flex;align-items:center;font-size:12px;font-weight:700;white-space:nowrap;opacity:0;pointer-events:none;box-shadow:0 10px 20px #050f111f;transition:opacity .16s ease,transform .16s ease}.canvas-ai-toggle:hover .canvas-ai-toggle-tooltip,.canvas-ai-toggle:focus-visible .canvas-ai-toggle-tooltip{opacity:1;transform:translateY(-50%) translate(0)}.canvas-ai-toggle-dot{position:absolute;right:7px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--canvas-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--canvas-panel-raised) 88%,transparent)}.canvas-ai-panel.expanded .canvas-ai-toggle{opacity:0;transform:translate(6px);pointer-events:none}.canvas-ai-shell{width:var(--canvas-ai-width);height:100%;margin-left:10px;border-radius:18px;border:1px solid color-mix(in srgb,var(--canvas-border) 86%,transparent);background:color-mix(in srgb,var(--canvas-panel-solid) 97%,transparent);box-shadow:0 24px 54px #050f1133;overflow:hidden;display:flex;flex-direction:column;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.canvas-ai-header{min-height:50px;padding:8px 10px;border-bottom:1px solid var(--canvas-hairline);display:flex;align-items:center;justify-content:space-between;gap:10px;background:color-mix(in srgb,var(--canvas-field) 18%,transparent)}.canvas-ai-header-main{display:flex;align-items:center;gap:8px;min-width:0}.canvas-ai-badge{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--canvas-accent) 14%,var(--canvas-field));color:var(--canvas-accent-strong);box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)}.canvas-ai-header-copy{min-width:0}.canvas-ai-header-copy h3{margin:0;color:var(--canvas-text);font-size:12px;font-weight:800}.canvas-ai-header-copy p{margin:1px 0 0;color:var(--canvas-text-muted);font-size:10px}.canvas-ai-header-actions{display:flex;align-items:center;gap:6px}.canvas-ai-icon-btn{width:34px;height:34px;border:1px solid var(--canvas-border);border-radius:10px;background:var(--canvas-field);color:var(--canvas-text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:transform var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),background var(--transition-fast)}.canvas-ai-icon-btn:hover{transform:translateY(-1px);color:var(--canvas-text);border-color:color-mix(in srgb,var(--canvas-accent) 40%,var(--canvas-border));background:var(--canvas-field-hover)}.canvas-ai-body{flex:1;min-height:0;display:flex;flex-direction:column}.canvas-ai-body .chat-timeline{min-height:0;padding:6px 8px 0}.canvas-ai-body .chat-composer{border-top:1px solid var(--canvas-hairline);background:color-mix(in srgb,var(--canvas-panel-raised) 96%,transparent);padding:8px 10px 10px}.canvas-ai-state{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--canvas-text-muted);padding:24px;text-align:center}.canvas-ai-state.empty{gap:16px}.canvas-ai-empty-mark{width:72px;height:72px;border-radius:24px;display:inline-flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 20%,color-mix(in srgb,var(--canvas-accent) 58%,#fff 8%),color-mix(in srgb,var(--canvas-accent-strong) 85%,#111 15%));color:#fff;font-size:24px;font-weight:900;letter-spacing:.12em;box-shadow:0 18px 32px #050f1133}.canvas-ai-primary-btn{min-width:120px;height:38px;border:0;border-radius:12px;background:linear-gradient(180deg,var(--canvas-accent),color-mix(in srgb,var(--canvas-accent-strong) 88%,#111 12%));color:#fff;font-size:13px;font-weight:800;cursor:pointer;box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.canvas-ai-primary-btn:hover{filter:brightness(1.03)}.canvas-ai-shell-enter-active,.canvas-ai-shell-leave-active{transition:opacity .22s ease,transform .22s ease}.canvas-ai-shell-enter-from,.canvas-ai-shell-leave-to{opacity:0;transform:translate(22px)}.canvas-asset-search input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--canvas-text);font-size:13px}.canvas-asset-categories{display:flex;gap:6px;padding:0 12px 12px;overflow-x:auto}.canvas-builtin-tabs{padding:7px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:5px;overflow:visible}.canvas-builtin-tabs .canvas-asset-category{width:100%;height:24px;padding:0 8px;justify-content:center;border-radius:7px;font-size:11px}.canvas-builtin-tabs .canvas-asset-category.active{border-color:color-mix(in srgb,var(--canvas-accent) 58%,var(--canvas-border));background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent));color:#fff;box-shadow:inset 0 1px color-mix(in srgb,#fff 18%,transparent)}.canvas-asset-category{flex:0 0 auto;height:30px;padding:0 10px;border-radius:7px;border:1px solid var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text-secondary);font-size:12px;font-weight:700;cursor:pointer}.canvas-asset-category.active{color:#fff;border-color:var(--canvas-accent);background:var(--canvas-accent)}.canvas-asset-list{min-height:180px;overflow:auto;padding:0 12px 12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.canvas-asset-state{min-height:180px;grid-column:1 / -1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:var(--canvas-text-muted);font-size:13px;text-align:center}.canvas-asset-state small{max-width:230px;color:var(--canvas-text-muted);font-size:11px;line-height:1.45}.canvas-builtin-list{flex:1 1 auto;min-height:0;overflow:auto;padding:9px 12px 12px;display:flex;flex-direction:column;gap:7px}.canvas-builtin-list .canvas-asset-state{grid-column:1 / -1;min-height:260px;border:1px dashed color-mix(in srgb,var(--canvas-border) 84%,transparent);border-radius:12px;background:color-mix(in srgb,var(--canvas-field) 54%,transparent)}.canvas-asset-item{position:relative;width:100%;min-height:0;border:1px solid var(--canvas-border);border-radius:var(--canvas-radius);display:flex;flex-direction:column;gap:8px;padding:8px;background:var(--canvas-field);color:var(--canvas-text-secondary);text-align:left;cursor:pointer;overflow:hidden}.canvas-asset-item:hover{background:var(--canvas-field-hover);color:var(--canvas-text);border-color:color-mix(in srgb,var(--canvas-accent) 54%,var(--canvas-border))}.canvas-builtin-item{position:relative;width:100%;min-height:92px;border:1px solid color-mix(in srgb,var(--canvas-border) 88%,transparent);border-radius:var(--canvas-radius);display:grid;grid-template-columns:70px minmax(0,1fr) 28px;align-items:center;gap:10px;padding:8px;background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-field-hover) 54%,transparent),color-mix(in srgb,var(--canvas-field) 86%,transparent));color:var(--canvas-text-secondary);text-align:left;cursor:pointer;overflow:hidden;box-shadow:inset 0 1px color-mix(in srgb,#fff 5%,transparent)}.canvas-builtin-item:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-accent) 10%,var(--canvas-field-hover)),color-mix(in srgb,var(--canvas-field) 92%,transparent));color:var(--canvas-text);border-color:color-mix(in srgb,var(--canvas-accent) 48%,var(--canvas-border));transform:translateY(-1px)}.canvas-asset-thumb{position:relative;width:100%;aspect-ratio:4 / 3;border-radius:7px;border:1px solid var(--canvas-border);background:color-mix(in srgb,var(--canvas-bg) 82%,#000 18%);display:inline-flex;align-items:center;justify-content:center;overflow:hidden}.canvas-builtin-thumb{width:70px;height:76px;border-radius:8px;border:1px solid color-mix(in srgb,var(--canvas-border) 86%,transparent);background:linear-gradient(var(--canvas-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--canvas-hairline) 1px,transparent 1px),color-mix(in srgb,var(--canvas-bg) 86%,#000 14%);background-size:18px 18px;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;color:var(--canvas-accent-strong)}.canvas-builtin-thumb img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.canvas-asset-thumb img,.canvas-asset-thumb video{width:100%;height:100%;object-fit:cover;display:block}.canvas-asset-thumb.text{color:#7bb7ff;background:#3498db24}.canvas-asset-thumb.video{color:#ffad72;background:#e08a3a24}.canvas-asset-thumb.audio{color:#d6a5ff;background:#9b59b626}.canvas-asset-main{min-width:0;display:flex;flex-direction:column;gap:4px}.canvas-builtin-main{min-width:0;display:flex;flex-direction:column;gap:3px}.canvas-builtin-kicker{color:color-mix(in srgb,var(--canvas-accent-strong) 68%,var(--canvas-text-muted) 32%);font-size:9px;font-weight:900;letter-spacing:.06em}.canvas-builtin-title{color:var(--canvas-text);font-size:12px;font-weight:800}.canvas-builtin-desc{min-width:0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;color:var(--canvas-text-muted);font-size:10px;line-height:1.38}.canvas-asset-name,.canvas-asset-meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-asset-name{color:var(--canvas-text);font-size:13px;font-weight:700}.canvas-asset-meta{color:var(--canvas-text-muted);font-size:11px}.canvas-asset-add{position:absolute;right:8px;top:8px;width:28px;height:28px;border-radius:8px;background:#00000080;color:var(--color-primary-light);display:inline-grid;place-items:center;opacity:0;transform:translateY(-2px);transition:opacity var(--transition-fast),transform var(--transition-fast)}.canvas-builtin-insert{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--canvas-accent) 12%,var(--canvas-field));color:var(--canvas-accent-strong);display:inline-grid;place-items:center;opacity:.72;transition:opacity var(--transition-fast),transform var(--transition-fast)}.canvas-builtin-item:hover .canvas-builtin-insert{opacity:1;transform:translateY(-1px)}.canvas-asset-item:hover .canvas-asset-add{opacity:1;transform:translateY(0)}.canvas-asset-play{position:absolute;left:8px;bottom:8px;height:24px;padding:0 8px;border-radius:999px;background:#00000094;color:#fff;display:inline-flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.canvas-asset-pagination{min-height:46px;padding:8px 12px 12px;border-top:1px solid var(--canvas-hairline);display:flex;align-items:center;justify-content:space-between;gap:10px}.canvas-asset-pagination span{color:var(--canvas-text-muted);font-size:12px;font-weight:800;white-space:nowrap}.canvas-asset-page-btn{height:32px;min-width:76px;padding:0 10px;border-radius:7px;border:1px solid var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text-secondary);cursor:pointer;font-size:12px;font-weight:700}.canvas-asset-page-btn:hover{color:var(--canvas-text);background:var(--canvas-field-hover)}.canvas-asset-page-btn:disabled{cursor:not-allowed;opacity:.55}.canvas-title-input{max-width:170px;min-width:86px;height:30px;border:0;outline:0;background:transparent;color:var(--canvas-text);font-size:14px;font-weight:750}.canvas-save-state{color:var(--canvas-text-muted);font-size:12px;white-space:nowrap}.canvas-flow-wrap{flex:1;min-height:0;position:relative;z-index:1;overscroll-behavior:none}.canvas-editor.fullscreen .canvas-flow-wrap,.canvas-editor:fullscreen .canvas-flow-wrap{flex:1 1 auto;width:100%;height:100%}.ai-canvas-flow{width:100%;height:100%;background:transparent;overscroll-behavior:none;touch-action:none}.ai-canvas-flow .vue-flow__background{z-index:0}.ai-canvas-flow .vue-flow__edges{z-index:2}.ai-canvas-flow .vue-flow__nodes{z-index:4}.canvas-group-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.canvas-group-toolbar-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.canvas-group-toolbar-anchor{position:absolute;transform-origin:center bottom;pointer-events:none}.canvas-group-rect{position:absolute;display:block;padding:0;border:1px solid color-mix(in srgb,var(--canvas-accent) 42%,transparent);border-radius:8px;background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-warm) 9%,transparent)),color-mix(in srgb,var(--canvas-accent) 5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 6%,transparent);cursor:move;pointer-events:all;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.canvas-group-selection-preview{border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-accent) 8%,transparent)),color-mix(in srgb,var(--canvas-accent) 5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 8%,transparent),0 0 0 1px color-mix(in srgb,var(--canvas-accent) 14%,transparent);pointer-events:none}.canvas-group-rect:hover,.canvas-group-rect.selected,.canvas-group-rect.dragging{border-color:color-mix(in srgb,var(--canvas-accent-strong) 78%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--canvas-accent) 18%,transparent),color-mix(in srgb,var(--canvas-warm) 12%,transparent)),color-mix(in srgb,var(--canvas-accent) 7%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 9%,transparent),0 0 0 2px var(--canvas-accent-soft)}.canvas-group-toolbar{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0;border:0;background:transparent;box-shadow:none;pointer-events:none}.canvas-group-action{height:34px;min-width:76px;padding:0 13px;border-radius:999px;border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);color:var(--canvas-text);display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;letter-spacing:0;font-weight:800;cursor:pointer;pointer-events:all;white-space:nowrap;box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 10%,transparent);transition:transform .18s ease,box-shadow .2s ease,filter .2s ease}.canvas-group-action:hover{transform:translateY(-1px);box-shadow:var(--canvas-shadow-md),inset 0 1px color-mix(in srgb,#fff 12%,transparent)}.canvas-group-action:active{transform:translateY(0);filter:brightness(.98)}.canvas-group-action:focus-visible{outline:none;box-shadow:0 0 0 3px var(--canvas-accent-soft),var(--canvas-shadow-md)}.canvas-group-action.danger{color:var(--canvas-danger)}.canvas-group-action.danger:hover{border-color:color-mix(in srgb,var(--canvas-danger) 42%,var(--canvas-border));background:color-mix(in srgb,var(--canvas-danger) 10%,var(--canvas-panel-raised))}.canvas-group-clear-confirm{display:block;color:var(--canvas-text);font-size:12px;line-height:1.35;white-space:nowrap}.canvas-group-action:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.canvas-group-action-icon{min-width:48px;width:48px;padding:0;gap:3px}.canvas-group-action-caret{opacity:.72;margin-left:-1px}.ai-canvas-flow .vue-flow__pane,.ai-canvas-flow .vue-flow__pane.draggable,.ai-canvas-flow .vue-flow__pane.dragging,.ai-canvas-flow .vue-flow__pane.selection{cursor:var(--canvas-cursor-arrow)!important}.canvas-editor.fullscreen .ai-canvas-flow,.canvas-editor:fullscreen .ai-canvas-flow{height:100vh;height:100dvh}.canvas-minimap{width:112px!important;height:78px!important;border:1px solid var(--color-border-medium);border-radius:8px;background:var(--color-bg-card);overflow:hidden}.canvas-node{width:320px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-bg-card);color:var(--color-text-primary);box-shadow:var(--shadow-md);overflow:hidden}.canvas-node-wrap{position:relative;width:320px;overflow:visible}.canvas-node-wrap-generator{width:340px}.canvas-image-quickbar{position:absolute;left:0;top:-50px;display:flex;align-items:center;z-index:20;transition:opacity .18s ease,transform .18s ease}.canvas-image-quickbar.hidden{opacity:0;transform:translateY(4px);pointer-events:none}.canvas-quick-action-btn{height:34px;padding:0 12px;border-radius:999px;border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);color:var(--canvas-text);display:inline-flex;align-items:center;gap:7px;cursor:pointer;font-size:12px;letter-spacing:0;font-weight:800;box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 10%,transparent);transition:transform .18s ease,box-shadow .2s ease,filter .2s ease}.canvas-quick-action-btn:hover{transform:translateY(-1px);box-shadow:var(--canvas-shadow-md),inset 0 1px color-mix(in srgb,#fff 12%,transparent)}.canvas-quick-action-btn:active{transform:translateY(0);filter:brightness(.98)}.canvas-quick-action-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--canvas-accent-soft),var(--canvas-shadow-md)}.canvas-quick-action-prefix{opacity:.92}.canvas-quick-action-btn:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.canvas-quickbar-dropdown-menu{border-radius:14px!important;padding:6px!important;backdrop-filter:blur(18px) saturate(155%);-webkit-backdrop-filter:blur(18px) saturate(155%)}.canvas-quickbar-dropdown-menu .n-dropdown-option{border-radius:9px;margin:1px 0;padding:0!important}.canvas-quickbar-dropdown-menu .n-dropdown-option-body{border-radius:9px;min-height:34px;padding:0 12px!important;font-size:12px;font-weight:700;line-height:1.2;display:flex;align-items:center;box-sizing:border-box;transition:background .15s ease,color .15s ease}.canvas-quickbar-dropdown-menu .n-dropdown-option-body__label{width:100%;display:block}.canvas-quickbar-dropdown-menu .n-dropdown-option-body:hover,.canvas-quickbar-dropdown-menu .n-dropdown-option-body--pending,.canvas-quickbar-dropdown-menu .n-dropdown-option-body--selected{background:var(--canvas-accent-soft)!important;color:var(--canvas-accent-strong)!important}.canvas-arrange-dropdown-menu{border-radius:12px!important;padding:7px!important;min-width:150px!important;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%)}.canvas-arrange-dropdown-menu .n-dropdown-option{border-radius:8px;margin:2px 0;padding:0!important}.canvas-arrange-dropdown-menu .n-dropdown-option-body{min-height:38px;border-radius:8px;padding:0 10px!important;display:flex;align-items:center;gap:9px;font-size:12px;font-weight:800;line-height:1;transition:background .16s ease,color .16s ease,transform .16s ease}.canvas-arrange-dropdown-menu .n-dropdown-option-body__label{display:flex;align-items:center;flex:1}.canvas-arrange-dropdown-menu .n-dropdown-option-body:hover,.canvas-arrange-dropdown-menu .n-dropdown-option-body--pending{background:#1f9a8a24!important;color:#1f9a8a!important;transform:translate(1px)}.canvas-arrange-dropdown-menu .n-dropdown-option-body--selected{background:var(--canvas-accent-soft)!important;color:var(--canvas-accent-strong)!important}.canvas-arrange-menu-icon{width:20px;height:20px;display:grid;flex:0 0 20px;gap:2px}.canvas-arrange-menu-icon span{display:block;min-width:0;min-height:0;border-radius:3px;background:currentColor;opacity:.82}.canvas-arrange-menu-icon.is-grid{grid-template-columns:repeat(2,1fr);grid-template-rows:repeat(2,1fr)}.canvas-arrange-menu-icon.is-vertical{grid-template-columns:1fr;grid-template-rows:repeat(4,1fr)}.canvas-arrange-menu-icon.is-horizontal{grid-template-columns:repeat(4,1fr);grid-template-rows:1fr}[data-theme=dark] .canvas-quick-action-btn{background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 10%,transparent)}[data-theme=light] .canvas-quick-action-btn{background:var(--canvas-panel-raised)}[data-theme=dark] .canvas-quickbar-dropdown-menu{background:#161820f0!important;border:1px solid rgba(255,255,255,.1)!important;box-shadow:0 14px 34px #0000007a,0 2px 8px #00000057!important}[data-theme=dark] .canvas-quickbar-dropdown-menu .n-dropdown-option-body{color:#ffffffe6}[data-theme=light] .canvas-quickbar-dropdown-menu{background:#fffffff7!important;border:1px solid rgba(0,0,0,.08)!important;box-shadow:0 14px 32px #11182729,0 2px 8px #11182714!important}[data-theme=light] .canvas-quickbar-dropdown-menu .n-dropdown-option-body{color:#1a1b2e}[data-theme=dark] .canvas-arrange-dropdown-menu{background:#161820f2!important;border:1px solid var(--canvas-border)!important;box-shadow:0 16px 34px #00000080,0 0 0 1px #22b19d14!important}[data-theme=dark] .canvas-arrange-dropdown-menu .n-dropdown-option-body{color:#ffffffe0}[data-theme=light] .canvas-arrange-dropdown-menu{background:#fffffffa!important;border:1px solid rgba(31,154,138,.16)!important;box-shadow:var(--canvas-shadow-md)!important}[data-theme=light] .canvas-arrange-dropdown-menu .n-dropdown-option-body{color:#1a1b2e}[data-theme=dark] .canvas-group-toolbar{background:transparent;box-shadow:none}[data-theme=dark] .canvas-group-rect{border-color:color-mix(in srgb,var(--canvas-accent) 50%,transparent);background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-warm) 9%,transparent)),color-mix(in srgb,var(--canvas-accent) 7%,transparent)}[data-theme=dark] .canvas-group-selection-preview{border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-accent) 8%,transparent)),color-mix(in srgb,var(--canvas-accent) 6%,transparent)}[data-theme=dark] .canvas-group-rect:hover,[data-theme=dark] .canvas-group-rect.selected{border-color:color-mix(in srgb,var(--canvas-accent-strong) 78%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--canvas-accent) 18%,transparent),color-mix(in srgb,var(--canvas-warm) 12%,transparent)),color-mix(in srgb,var(--canvas-accent) 8%,transparent)}[data-theme=dark] .canvas-group-action{background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 10%,transparent)}[data-theme=light] .canvas-group-action{background:var(--canvas-panel-raised)}.canvas-node.selected{background:var(--color-bg-card)!important;border-color:var(--color-primary)!important;box-shadow:0 0 0 3px var(--canvas-accent-soft),var(--canvas-node-shadow)!important;overflow:visible}.vue-flow__node.selected .canvas-node,.vue-flow__node:focus .canvas-node,.vue-flow__node:focus-visible .canvas-node{background:var(--color-bg-card)!important;outline:none}.canvas-node-header{height:44px;display:flex;align-items:center;gap:8px;padding:0 10px 0 12px;border-bottom:1px solid var(--color-border-medium);cursor:grab}.canvas-node-dot{width:8px;height:8px;border-radius:999px;flex:0 0 auto}.canvas-node-dot.text{background:#3498db}.canvas-node-dot.image{background:#1f9a8a}.canvas-node-dot.video{background:#e08a3a}.canvas-node-dot.audio{background:#9b59b6}.canvas-node-dot.image-gen{background:var(--canvas-accent-strong)}.canvas-node-dot.video-gen{background:#d24d57}.canvas-node-dot.storyboard{background:#2f7d6d}.canvas-node-title{flex:0 0 112px;width:112px;max-width:112px;min-width:112px;border:0;outline:0;background:transparent;color:var(--color-text-primary);font-size:12px;font-weight:800;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-node-title.static{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.canvas-node-header .canvas-node-title+.canvas-icon-btn{margin-left:auto}.canvas-node-wrap-storyboard,.canvas-node-storyboard{width:860px}.canvas-storyboard-quickbar{gap:8px}.canvas-storyboard-body{padding:12px}.canvas-storyboard-source-text,.canvas-storyboard-input{width:100%;border:1px solid var(--color-border-medium);border-radius:7px;outline:none;background:var(--canvas-field);color:var(--canvas-text);font-size:12px}.canvas-storyboard-source-text{resize:vertical;min-height:82px;padding:9px 10px;line-height:1.45}.canvas-storyboard-input{min-height:28px;padding:0 8px}.canvas-storyboard-source-actions{display:flex;align-items:center;gap:8px;margin:-2px 0 12px}.canvas-storyboard-source-actions input[type=file]{display:none}.canvas-storyboard-file,.canvas-storyboard-summary{color:var(--canvas-text-muted);font-size:11px}.canvas-storyboard-summary{display:flex;align-items:center;gap:10px;margin:10px 0}.canvas-run-btn.storyboard-run{background:linear-gradient(180deg,#2f9f83,#247465)}.canvas-storyboard-table-panel{position:relative}.canvas-storyboard-table-toolbar{position:absolute;top:7px;right:7px;z-index:3;pointer-events:none}.canvas-storyboard-expand-btn{height:28px;padding:0 9px;border:1px solid var(--canvas-border);border-radius:7px;display:inline-flex;align-items:center;gap:5px;background:var(--canvas-panel-raised);color:var(--canvas-text-secondary);box-shadow:var(--canvas-shadow-sm);cursor:pointer;pointer-events:auto;font-size:12px;font-weight:800}.canvas-storyboard-expand-btn:hover{color:var(--canvas-text);border-color:color-mix(in srgb,var(--canvas-accent) 40%,var(--canvas-border));background:var(--canvas-panel-solid)}.canvas-storyboard-table-shell{max-height:500px;overflow:auto;border:1px solid var(--color-border-medium);border-radius:8px;background:var(--canvas-field);contain:layout paint;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch;cursor:grab;-webkit-user-select:none;user-select:none}.canvas-storyboard-table-shell.dragging{cursor:grabbing}.canvas-storyboard-table-shell.dragging .canvas-storyboard-cell-view{pointer-events:none}.canvas-storyboard-grid{display:grid;width:max-content;transform:translateZ(0)}.canvas-storyboard-grid-head,.canvas-storyboard-grid-cell{border-right:1px solid var(--color-border-medium);border-bottom:1px solid var(--color-border-medium);background:color-mix(in srgb,var(--canvas-panel-solid) 86%,transparent);box-sizing:border-box}.canvas-storyboard-grid-head{position:sticky;top:0;z-index:2;height:28px;padding:5px 6px;background:var(--canvas-panel-raised);color:var(--canvas-text-secondary);font-size:10px;text-align:left;white-space:nowrap}.canvas-storyboard-grid-cell{height:66px;padding:3px}.canvas-storyboard-grid-cell.is-row-selected{background:color-mix(in srgb,var(--canvas-accent) 13%,var(--canvas-panel-solid));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--canvas-accent) 18%,transparent)}.canvas-storyboard-grid input,.canvas-storyboard-grid textarea{width:100%;height:100%;min-width:0;border:1px solid transparent;border-radius:6px;outline:none;resize:none;background:transparent;color:var(--canvas-text);font-size:10.5px;line-height:1.3}.canvas-storyboard-grid input{height:22px;text-align:center}.canvas-storyboard-grid textarea{padding:4px}.canvas-storyboard-grid input:focus,.canvas-storyboard-grid textarea:focus{border-color:color-mix(in srgb,var(--canvas-accent) 55%,var(--canvas-border));background:var(--canvas-field)}.canvas-storyboard-grid-cell.is-actions{text-align:center;white-space:nowrap;background:var(--canvas-panel-raised)}.canvas-storyboard-grid-cell.is-row-select{position:sticky;left:0;z-index:3;display:flex;align-items:center;justify-content:center;padding:0;background:var(--canvas-panel-raised)}.canvas-storyboard-grid-head.is-row-select{left:0;z-index:5;padding:0}.canvas-storyboard-grid-cell.is-actions button{width:22px;height:22px;border:0;border-radius:6px;background:transparent;color:var(--canvas-text-muted);cursor:pointer}.canvas-storyboard-grid-cell.is-actions button:hover{background:var(--canvas-field-hover);color:var(--canvas-text)}.canvas-storyboard-cell-view{width:100%;height:100%;padding:4px;border:1px solid transparent;border-radius:6px;display:block;overflow:hidden;background:transparent;color:var(--canvas-text);cursor:text;font:inherit;font-size:10.5px;line-height:1.3;text-align:left;white-space:pre-wrap;word-break:break-word}.canvas-storyboard-cell-view.is-readonly{display:flex;align-items:center;justify-content:center;color:var(--canvas-text-secondary);cursor:default;font-weight:800;text-align:center;white-space:nowrap}.canvas-storyboard-cell-view:hover{border-color:color-mix(in srgb,var(--canvas-accent) 26%,transparent);background:color-mix(in srgb,var(--canvas-field-hover) 70%,transparent)}.canvas-storyboard-cell-view.is-readonly:hover{border-color:transparent;background:transparent}.canvas-storyboard-cell-view:empty:before{content:"";display:block;width:100%;height:100%}.canvas-storyboard-empty{min-height:140px;border:1px dashed var(--color-border-medium);border-radius:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--canvas-text-muted);background:var(--canvas-field)}.canvas-storyboard-editor-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9200;display:flex;align-items:center;justify-content:center;padding:18px;background:color-mix(in srgb,#000 52%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.canvas-storyboard-editor{width:min(1360px,94vw);min-width:0;height:min(820px,88vh);min-height:0;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--canvas-border);border-radius:10px;background:var(--canvas-panel-raised);color:var(--canvas-text);box-shadow:var(--canvas-shadow-lg)}.canvas-storyboard-editor-head{min-height:46px;padding:7px 12px;border-bottom:1px solid var(--canvas-hairline);display:flex;align-items:center;justify-content:space-between;gap:16px;background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-field) 72%,transparent),transparent)}.canvas-storyboard-editor-head h3{margin:0;color:var(--canvas-text);font-size:14px;font-weight:900;letter-spacing:0}.canvas-storyboard-editor-head p{margin:2px 0 0;color:var(--canvas-text-muted);font-size:11px}.canvas-storyboard-editor-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.canvas-storyboard-editor-actions .canvas-secondary-btn{height:28px;padding:0 8px;border-radius:7px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-size:11px;font-weight:800}.canvas-storyboard-editor-table-shell{flex:1;min-height:0;overflow:auto;contain:layout paint;transform:translateZ(0);will-change:scroll-position;-webkit-overflow-scrolling:touch;background:var(--canvas-field)}.canvas-storyboard-grid.editor{width:100%;min-width:1760px}.canvas-storyboard-grid.editor .canvas-storyboard-grid-head{height:30px;padding:5px 7px}.canvas-storyboard-grid.editor .canvas-storyboard-grid-cell{height:64px;min-height:64px;max-height:64px;padding:3px;overflow:hidden}.canvas-storyboard-grid.editor .canvas-storyboard-grid-cell.is-row-selected{background:color-mix(in srgb,var(--canvas-accent) 13%,var(--canvas-panel-solid))}.canvas-storyboard-grid.editor .canvas-storyboard-grid-cell.is-row-select.is-row-selected{background:color-mix(in srgb,var(--canvas-accent) 20%,var(--canvas-panel-raised))}.canvas-storyboard-grid.editor input:focus,.canvas-storyboard-grid.editor textarea:focus{border-color:color-mix(in srgb,var(--canvas-accent-strong) 70%,var(--canvas-border));box-shadow:0 0 0 3px var(--canvas-accent-soft)}.canvas-storyboard-row-select-btn{width:18px;height:18px;border:1px solid color-mix(in srgb,var(--canvas-border) 78%,var(--canvas-text-muted));border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--canvas-field);cursor:pointer}.canvas-storyboard-row-select-btn:after{content:"";width:8px;height:8px;border-radius:inherit;background:transparent}.canvas-storyboard-row-select-btn:hover{border-color:color-mix(in srgb,var(--canvas-accent) 68%,var(--canvas-border));background:color-mix(in srgb,var(--canvas-accent) 8%,var(--canvas-field))}.canvas-storyboard-row-select-btn.active{border-color:var(--canvas-accent);background:color-mix(in srgb,var(--canvas-accent) 12%,var(--canvas-field));box-shadow:0 0 0 3px var(--canvas-accent-soft)}.canvas-storyboard-row-select-btn.active:after{background:var(--canvas-accent)}.canvas-icon-btn{width:28px;height:28px;border-radius:7px;flex:0 0 auto}.canvas-icon-btn.danger:hover{color:var(--color-error)}.canvas-asset-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6500;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--color-overlay-bg)}.canvas-asset-dialog{width:min(420px,100%);border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-modal-bg);color:var(--color-text-primary);box-shadow:var(--shadow-xl);overflow:hidden}.canvas-asset-dialog-head{min-height:68px;padding:14px 16px;border-bottom:1px solid var(--color-border-medium);display:flex;align-items:center;justify-content:space-between;gap:12px}.canvas-asset-dialog-head h2{margin:0;font-size:16px;font-weight:900}.canvas-asset-dialog-head p{margin:4px 0 0;color:var(--color-text-muted);font-size:12px}.canvas-asset-form-field{display:flex;flex-direction:column;gap:7px;margin:14px 16px 0}.canvas-asset-form-field span{color:var(--color-text-muted);font-size:11px;font-weight:900;text-transform:uppercase}.canvas-asset-form-field input,.canvas-asset-form-field select{width:100%;height:38px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-primary);outline:0;padding:0 10px;font-size:13px}.canvas-asset-form-field input:focus,.canvas-asset-form-field select:focus{border-color:var(--color-border-focus)}.canvas-asset-dialog-preview{margin:14px 16px 0;min-height:108px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-bg-dark);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary)}.canvas-asset-dialog-preview.image{aspect-ratio:16 / 10}.canvas-asset-dialog-preview.video{aspect-ratio:16 / 9}.canvas-asset-dialog-preview img,.canvas-asset-dialog-preview video{width:100%;height:100%;object-fit:contain;display:block;background:#000}.canvas-asset-dialog-preview p{width:100%;max-height:150px;overflow:auto;padding:14px;margin:0;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.canvas-asset-audio-preview{max-width:100%;padding:16px;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--color-text-secondary);font-size:12px;font-weight:800}.canvas-asset-audio-preview span{max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-asset-dialog-actions{display:flex;justify-content:flex-end;gap:10px;padding:16px}.canvas-primary-btn,.canvas-secondary-btn{height:36px;border-radius:8px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-size:13px;font-weight:800}.canvas-primary-btn{border:0;color:#fff;background:var(--canvas-accent)}.canvas-secondary-btn{border:1px solid var(--color-border-medium);color:var(--color-text-secondary);background:var(--color-input-bg)}.canvas-primary-btn:disabled,.canvas-secondary-btn:disabled{cursor:not-allowed;opacity:.5}.canvas-textarea,.canvas-text-editor{width:calc(100% - 24px);min-height:132px;margin:12px;resize:vertical;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-primary);outline:0;padding:12px;font-size:14px;line-height:1.6}.canvas-text-editor{max-height:260px;overflow:auto;white-space:pre-wrap;word-break:break-word}.canvas-text-editor:empty:before{content:attr(data-placeholder);color:var(--color-text-muted);pointer-events:none}.canvas-textarea:focus,.canvas-text-editor:focus{border-color:var(--color-border-focus)}.canvas-ref-chip{display:inline-flex;align-items:center;max-width:160px;min-height:22px;margin:0 2px;padding:1px 7px;border-radius:7px;border:1px solid color-mix(in srgb,var(--canvas-accent) 42%,var(--canvas-border));background:var(--canvas-accent-soft);color:var(--canvas-accent-strong);font-size:12px;font-weight:800;vertical-align:baseline;-webkit-user-select:none;user-select:none;white-space:nowrap}.canvas-ref-chip.expression,.canvas-ref-chip.style,.canvas-ref-chip.lens,.canvas-ref-chip.effect_style,.canvas-ref-chip.era_style{max-width:160px;border-color:color-mix(in srgb,var(--canvas-accent) 42%,var(--canvas-border));background:var(--canvas-accent-soft);color:var(--canvas-accent-strong)}.canvas-node-actions{display:flex;align-items:center;gap:8px;padding:0 12px 12px}.canvas-chip-btn{height:30px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-secondary);padding:0 10px;display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-weight:700;font-size:12px}.canvas-chip-btn.primary{color:#fff;border-color:var(--canvas-accent);background:var(--canvas-accent);margin-left:auto}.canvas-media-box,.canvas-video-box{margin:12px;border-radius:8px;overflow:hidden;background:var(--color-input-bg);border:1px solid var(--color-border-medium)}.canvas-media-box{aspect-ratio:1 / 1;position:relative}.canvas-video-box{aspect-ratio:16 / 9}.canvas-audio-box{margin:12px;height:132px;min-height:132px;border-radius:8px;overflow:hidden;background:var(--color-input-bg);border:1px solid var(--color-border-medium)}.canvas-media-box img,.canvas-video-box video{width:100%;height:100%;object-fit:contain;display:block;background:#000}.canvas-panorama-entry{position:absolute;right:8px;top:8px;height:28px;border-radius:999px;border:1px solid rgba(255,255,255,.26);background:#0000007a;color:#fff;z-index:3;padding:0 10px;display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:700;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.canvas-panorama-entry:hover{background:#0000009e}.canvas-upload-box,.canvas-loading,.canvas-error{width:100%;height:100%;min-height:180px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--color-text-muted)}.canvas-upload-box{cursor:pointer;border:1px dashed var(--color-border-strong)}.canvas-upload-box input{display:none}.canvas-audio-player{height:132px;min-height:132px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:var(--color-text-secondary)}.canvas-audio-player audio{width:100%}.canvas-audio-name{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700}.canvas-error{color:var(--color-error);text-align:center;padding:16px;line-height:1.5}.canvas-node-meta{display:flex;justify-content:space-between;gap:8px;color:var(--color-text-muted);font-size:11px;padding:0 12px 12px}.canvas-node-meta.inline{padding:0;margin:-2px 0 10px}.canvas-config-body{padding:12px}.canvas-node-generator,.canvas-node-generator.collapsed{width:340px}.canvas-node-video-generator,.canvas-node-video-generator.collapsed{width:420px}.canvas-node-generator.collapsed .canvas-node-header{border-bottom:1px solid var(--color-border-medium)}.canvas-generator-preview,.canvas-generator-result{position:relative;width:100%;min-width:0;margin-bottom:12px;border-radius:8px;overflow:hidden;background:var(--color-bg-dark);border:1px solid var(--color-border-medium)}.canvas-generator-preview{width:calc(100% - 24px);margin:12px;aspect-ratio:1 / 1}.canvas-generator-preview.video,.canvas-generator-result.video{aspect-ratio:16 / 9}.canvas-generator-preview img,.canvas-generator-result img,.canvas-generator-preview video,.canvas-generator-result video{position:relative;z-index:1;width:100%;height:100%;object-fit:contain;display:block;background:#000}.canvas-preview-stack{position:absolute;top:9px;right:9px;bottom:9px;left:9px;border-radius:8px;border:1px solid rgba(255,255,255,.26);box-shadow:7px -7px #ffffff29,13px -13px #ffffff14;z-index:2;pointer-events:none}.canvas-multi-image-badge{position:absolute;right:10px;top:10px;z-index:3;min-width:42px;height:24px;padding:0 9px;border-radius:999px;border:1px solid rgba(255,255,255,.24);background:#000000a8;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;line-height:1;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.canvas-generator-empty{width:100%;min-height:188px;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-input-bg) 72%,transparent)}.canvas-generator-prompt{width:100%;min-height:92px;max-height:180px;overflow:auto;resize:vertical;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-primary);outline:0;padding:10px;font-size:13px;line-height:1.55;white-space:pre-wrap;word-break:break-word}.canvas-generator-prompt:focus{border-color:var(--color-border-focus)}.canvas-generator-prompt-injected{min-height:44px;resize:none;overflow:hidden;display:flex;align-items:center;color:var(--color-text-muted);background:color-mix(in srgb,var(--color-input-bg) 78%,var(--color-bg-muted));cursor:default;-webkit-user-select:none;user-select:none}.canvas-generator-prompt:empty:before{content:attr(data-placeholder);color:var(--color-text-muted);pointer-events:none}.canvas-result-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:-4px 0 12px}.canvas-result-thumb{position:relative;aspect-ratio:1 / 1;min-width:0;padding:0;border-radius:7px;overflow:hidden;border:1px solid var(--color-border-medium);background:var(--color-bg-dark);cursor:pointer}.canvas-result-thumb.active{border-color:var(--color-primary);box-shadow:0 0 0 2px var(--canvas-accent-soft)}.canvas-result-thumb img{width:100%;height:100%;display:block;object-fit:cover}.canvas-result-main-badge{position:absolute;right:4px;bottom:4px;height:18px;padding:0 5px;border-radius:5px;background:#000000a3;color:#fff;font-size:10px;font-weight:800;line-height:18px}.canvas-field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.canvas-field span{color:var(--color-text-muted);font-size:11px;font-weight:800;text-transform:uppercase}.canvas-field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.canvas-field-grid.three{grid-template-columns:1fr 1fr 1fr}.canvas-compact-select{min-width:0}.canvas-compact-select .n-base-selection{min-height:28px;border-radius:7px}.canvas-select-menu{max-width:260px!important;min-width:112px!important}.canvas-select-menu .n-base-select-option{min-height:30px!important}.canvas-select-menu .n-base-select-option__content{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.canvas-segment{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:4px;margin-bottom:12px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg)}.canvas-mode-pill,.canvas-toggle-row{min-height:32px;margin-bottom:12px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-secondary);font-size:12px;font-weight:800}.canvas-mode-pill{display:flex;align-items:center;padding:0 10px}.canvas-toggle-row{display:flex;align-items:center;justify-content:space-between;padding:0 10px}.canvas-toggle-row span{color:var(--color-text-muted);font-size:11px;text-transform:uppercase}.canvas-generator-options.inline{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:nowrap}.canvas-generator-options.inline .canvas-toggle-row,.canvas-generator-options.inline .canvas-field{flex:0 0 auto;margin-bottom:0}.canvas-generator-options.inline .canvas-toggle-row{gap:8px;min-height:30px}.canvas-generator-options.inline .canvas-inline-number-field{display:flex;flex-direction:row;align-items:center;gap:6px}.canvas-generator-options.inline .canvas-inline-number-field .n-input-number{width:86px}.canvas-segment button{height:30px;border:0;border-radius:6px;color:var(--color-text-secondary);background:transparent;cursor:pointer;font-size:12px;font-weight:800}.canvas-segment button.active{color:#fff;background:var(--canvas-accent)}.canvas-input-summary{display:flex;gap:8px;margin-bottom:10px}.canvas-input-summary span{border:1px solid var(--color-border-medium);background:var(--color-input-bg);color:var(--color-text-secondary);border-radius:8px;padding:5px 8px;font-size:11px;font-weight:700}.canvas-prompt-preview,.canvas-empty-hint{min-height:52px;border-radius:8px;padding:10px;margin-bottom:12px;font-size:12px;line-height:1.55;background:var(--color-input-bg);border:1px solid var(--color-border-medium);color:var(--color-text-secondary)}.canvas-empty-hint{color:var(--color-text-muted)}.canvas-empty-hint.compact{min-height:0;margin-bottom:0;font-size:11px}.canvas-reference-list{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.canvas-reference-row{min-height:38px;display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-input-bg)}.canvas-reference-thumb,.canvas-mention-thumb{flex:0 0 auto;width:30px;height:30px;border-radius:7px;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border-medium);background:var(--color-bg-dark);color:var(--color-text-secondary);font-size:11px;font-weight:900}.canvas-reference-thumb img,.canvas-mention-thumb img{width:100%;height:100%;object-fit:cover;display:block}.canvas-reference-thumb.video,.canvas-mention-thumb.video{background:#dc5d4f29;color:#ff9588}.canvas-reference-thumb.audio,.canvas-mention-thumb.audio{background:#2ca88429;color:#59d8b0}.canvas-reference-thumb.expression,.canvas-mention-thumb.expression{background:color-mix(in srgb,var(--canvas-accent) 14%,transparent);color:var(--canvas-accent-strong)}.canvas-reference-info,.canvas-mention-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.canvas-reference-line,.canvas-mention-line{min-width:0;display:flex;align-items:center;gap:6px}.canvas-reference-index{flex:0 0 auto;color:var(--color-primary-light);font-weight:800;font-size:11px}.canvas-reference-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-secondary);font-size:11px}.canvas-reference-meta,.canvas-mention-meta{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font-size:10px}.canvas-role-select{width:82px;flex:0 0 auto}.canvas-mention-menu{position:relative;z-index:20;margin:-4px 12px 10px;display:flex;flex-direction:column;gap:4px;max-height:160px;overflow:auto;border-radius:8px;border:1px solid var(--color-border-medium);background:var(--color-modal-bg);padding:6px;box-shadow:var(--shadow-md)}.canvas-mention-menu.generator{margin:-6px 0 12px}.canvas-command-menu.generator{max-height:280px;padding:6px;gap:5px}.canvas-mention-item{width:100%;min-height:44px;border:0;border-radius:6px;display:grid;grid-template-columns:30px minmax(0,1fr) minmax(72px,.7fr);align-items:center;gap:8px;padding:6px;color:var(--color-text-secondary);background:transparent;cursor:pointer;text-align:left;font-size:11px}.canvas-command-item{min-height:46px;grid-template-columns:38px minmax(0,1fr) 88px;padding:6px 8px;border-radius:10px;border:1px solid transparent}.canvas-mention-item:hover,.canvas-mention-item.active{background:var(--color-input-bg-hover);color:var(--color-text-primary)}.canvas-mention-kind{color:var(--color-text-muted)}.canvas-mention-token{color:var(--color-primary-light);font-weight:800}.canvas-command-item .canvas-mention-line{display:flex;align-items:center;gap:8px}.canvas-command-item .canvas-mention-token{font-size:12px;letter-spacing:.01em}.canvas-command-item .canvas-mention-kind{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:999px;background:color-mix(in srgb,var(--color-primary-light) 14%,transparent);color:var(--color-text-secondary);font-size:10px;font-weight:700;white-space:nowrap}.canvas-mention-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-command-item .canvas-mention-name{margin-top:2px;font-size:11px;color:var(--color-text-secondary)}.canvas-command-item .canvas-mention-meta{justify-self:end;font-size:10px;line-height:1.35;text-align:right;color:var(--color-text-muted)}.canvas-run-btn{width:100%;height:38px;border-radius:8px;border:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;cursor:pointer;font-weight:800}.canvas-run-btn.image-run{background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent))}.canvas-run-btn.video-run{background:linear-gradient(135deg,#d24d57,#e08a3a)}.canvas-run-btn:disabled{cursor:not-allowed;opacity:.5}.canvas-inline-error{margin-top:10px;color:var(--color-error);font-size:12px;line-height:1.5}.canvas-handle{width:12px!important;height:12px!important;background:var(--color-primary)!important;border:2px solid var(--color-bg-card)!important}.canvas-dataflow-edge__interaction{stroke:transparent;stroke-width:20}.canvas-dataflow-edge__glow{fill:none;stroke:var(--color-primary);stroke-width:3.4;stroke-linecap:round;opacity:0;pointer-events:none}.canvas-dataflow-edge__line{fill:none;stroke:color-mix(in srgb,var(--color-primary) 30%,#93a0b5 70%);stroke-width:1.65;stroke-linecap:round;pointer-events:none}.canvas-dataflow-edge__marker-head{fill:color-mix(in srgb,var(--color-primary) 34%,#93a0b5 66%)}.canvas-dataflow-edge__motion{fill:none;stroke:transparent;pointer-events:none}.canvas-dataflow-edge__particle{fill:var(--color-primary-light);opacity:.95;pointer-events:none}.canvas-dataflow-edge__particle.secondary{opacity:.72}.canvas-dataflow-edge.active .canvas-dataflow-edge__line{stroke:var(--color-primary-light);stroke-width:2.15;stroke-dasharray:10 9;animation:canvas-flow-dash 1.85s linear infinite}.canvas-dataflow-edge.active .canvas-dataflow-edge__glow{stroke:var(--color-primary-light);stroke-width:4;opacity:.16}.canvas-dataflow-edge.active .canvas-dataflow-edge__marker-head{fill:var(--color-primary-light)}.canvas-dataflow-edge.selected .canvas-dataflow-edge__line{stroke:var(--color-accent);stroke-width:2.3}.canvas-dataflow-edge.selected .canvas-dataflow-edge__glow{stroke:var(--color-accent);opacity:.18}.canvas-dataflow-edge.selected .canvas-dataflow-edge__marker-head{fill:var(--color-accent)}@keyframes canvas-flow-dash{to{stroke-dashoffset:-12}}.canvas-preview{position:fixed;top:0;right:0;bottom:0;left:0;z-index:7900;background:#000000e0;display:flex;align-items:center;justify-content:center;padding:28px}.canvas-preview img,.canvas-preview video{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px;background:#000}.canvas-preview-close{position:absolute;right:24px;top:18px;width:38px;height:38px;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#ffffff14;color:#fff;cursor:pointer;font-size:26px;line-height:1}.canvas-preview.panorama{z-index:8000;background:#000000ed}.canvas-preview-close.panorama-close{display:inline-flex;align-items:center;justify-content:center;font-size:16px}.canvas-panorama-shell{width:min(1200px,calc(100vw - 72px));height:min(760px,calc(100vh - 82px));border-radius:14px;overflow:hidden;border:1px solid rgba(255,255,255,.15);background:#080a10fa;box-shadow:0 24px 52px #00000075;display:flex;flex-direction:column}.canvas-panorama-header{min-height:50px;padding:0 16px;border-bottom:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:space-between;color:#fffffff0;font-size:13px;font-weight:800}.canvas-panorama-header small{color:#ffffffad;font-size:12px;font-weight:500}.canvas-panorama-stage{flex:1;position:relative;background:radial-gradient(circle at 50% 38%,#1c2337,#0b0f1a 58%,#05070d)}.canvas-panorama-stage canvas{width:100%!important;height:100%!important;display:block}.canvas-panorama-loading,.canvas-panorama-error{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;color:#fffc}.canvas-panorama-error{color:#ff8a8a}.canvas-editor .canvas-group-rect{border-color:color-mix(in srgb,var(--canvas-accent) 42%,transparent);background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-warm) 9%,transparent)),color-mix(in srgb,var(--canvas-accent) 5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 6%,transparent),0 12px 32px color-mix(in srgb,var(--canvas-accent) 9%,transparent)}.canvas-editor .canvas-group-selection-preview{border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);background:linear-gradient(135deg,var(--canvas-accent-soft),color-mix(in srgb,var(--canvas-accent) 8%,transparent)),color-mix(in srgb,var(--canvas-accent) 5%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 8%,transparent),0 0 0 1px color-mix(in srgb,var(--canvas-accent) 14%,transparent)}.canvas-editor .canvas-group-rect:hover,.canvas-editor .canvas-group-rect.selected,.canvas-editor .canvas-group-rect.dragging{border-color:color-mix(in srgb,var(--canvas-accent-strong) 78%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--canvas-accent) 18%,transparent),color-mix(in srgb,var(--canvas-warm) 12%,transparent)),color-mix(in srgb,var(--canvas-accent) 7%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,#fff 9%,transparent),0 0 0 2px var(--canvas-accent-soft),var(--canvas-shadow-sm)}.canvas-editor .canvas-group-action,.canvas-editor .canvas-quick-action-btn{border:1px solid var(--canvas-border);border-radius:var(--canvas-radius);background:var(--canvas-panel-raised);color:var(--canvas-text);box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 10%,transparent);letter-spacing:0;backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-editor .canvas-group-action.primary{color:#fff;border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent))}.canvas-editor .canvas-group-action:hover,.canvas-editor .canvas-quick-action-btn:hover{border-color:color-mix(in srgb,var(--canvas-accent) 38%,var(--canvas-border));background:var(--canvas-panel-solid);box-shadow:var(--canvas-shadow-md),inset 0 1px color-mix(in srgb,#fff 12%,transparent)}.canvas-editor .canvas-group-action.primary:hover{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-accent-strong) 88%,#fff 12%),var(--canvas-accent))}.canvas-editor .canvas-group-action:focus-visible,.canvas-editor .canvas-quick-action-btn:focus-visible{outline:none;box-shadow:0 0 0 3px var(--canvas-accent-soft),var(--canvas-shadow-md)}.canvas-quickbar-dropdown-menu,.canvas-arrange-dropdown-menu,[data-theme=dark] .canvas-quickbar-dropdown-menu,[data-theme=light] .canvas-quickbar-dropdown-menu,[data-theme=dark] .canvas-arrange-dropdown-menu,[data-theme=light] .canvas-arrange-dropdown-menu{border-radius:var(--canvas-radius)!important;border:1px solid var(--canvas-border)!important;background:var(--canvas-panel-raised)!important;box-shadow:var(--canvas-shadow-md)!important;backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-quickbar-dropdown-menu .n-dropdown-option-body,.canvas-arrange-dropdown-menu .n-dropdown-option-body,[data-theme=dark] .canvas-quickbar-dropdown-menu .n-dropdown-option-body,[data-theme=light] .canvas-quickbar-dropdown-menu .n-dropdown-option-body,[data-theme=dark] .canvas-arrange-dropdown-menu .n-dropdown-option-body,[data-theme=light] .canvas-arrange-dropdown-menu .n-dropdown-option-body{color:var(--canvas-text-secondary)!important}.canvas-quickbar-dropdown-menu .n-dropdown-option-body:hover,.canvas-quickbar-dropdown-menu .n-dropdown-option-body--pending,.canvas-arrange-dropdown-menu .n-dropdown-option-body:hover,.canvas-arrange-dropdown-menu .n-dropdown-option-body--pending,.canvas-quickbar-dropdown-menu .n-dropdown-option-body--selected,.canvas-arrange-dropdown-menu .n-dropdown-option-body--selected{background:var(--canvas-accent-soft)!important;color:var(--canvas-accent-strong)!important}.canvas-editor .canvas-minimap{width:112px!important;height:78px!important;border:1px solid var(--canvas-border);border-radius:var(--canvas-radius);background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-sm);overflow:hidden}.canvas-editor .canvas-node{border:1px solid var(--canvas-border);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 96%,#fff 4%),var(--canvas-panel-solid));color:var(--canvas-text);box-shadow:var(--canvas-node-shadow),inset 0 1px color-mix(in srgb,#fff 8%,transparent)}.canvas-editor .canvas-node.selected,.canvas-editor .vue-flow__node.selected .canvas-node,.canvas-editor .vue-flow__node:focus .canvas-node,.canvas-editor .vue-flow__node:focus-visible .canvas-node{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 96%,#fff 4%),var(--canvas-panel-solid))!important;border-color:color-mix(in srgb,var(--canvas-accent-strong) 70%,var(--canvas-border))!important;outline:none;box-shadow:0 0 0 3px var(--canvas-accent-soft),var(--canvas-node-shadow),inset 0 1px color-mix(in srgb,#fff 9%,transparent)!important}.canvas-editor .canvas-node-header{height:42px;border-bottom:1px solid var(--canvas-hairline);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-field) 76%,transparent),transparent)}.canvas-editor .canvas-node-dot{width:9px;height:9px;border:1px solid color-mix(in srgb,#fff 35%,transparent);box-shadow:0 0 0 3px color-mix(in srgb,currentColor 13%,transparent)}.canvas-editor .canvas-node-dot.text{background:#3a8fb7;color:#3a8fb7}.canvas-editor .canvas-node-dot.image{background:var(--canvas-accent);color:var(--canvas-accent)}.canvas-editor .canvas-node-dot.video{background:var(--canvas-warm);color:var(--canvas-warm)}.canvas-editor .canvas-node-dot.audio{background:#8f74ad;color:#8f74ad}.canvas-editor .canvas-node-dot.image-gen{background:var(--canvas-accent-strong);color:var(--canvas-accent-strong)}.canvas-editor .canvas-node-dot.video-gen{background:var(--canvas-danger);color:var(--canvas-danger)}.canvas-editor .canvas-node-dot.storyboard{background:#2f9f83;color:#2f9f83}.canvas-editor .canvas-node-title{color:var(--canvas-text);letter-spacing:0;text-transform:none}.canvas-editor .canvas-icon-btn{border-radius:7px;color:var(--canvas-text-muted)}.canvas-editor .canvas-icon-btn:hover{color:var(--canvas-text);border-color:var(--canvas-border);background:var(--canvas-field-hover)}.canvas-editor .canvas-icon-btn.danger:hover{color:var(--canvas-danger);border-color:color-mix(in srgb,var(--canvas-danger) 38%,var(--canvas-border));background:color-mix(in srgb,var(--canvas-danger) 10%,transparent)}.canvas-editor .canvas-asset-dialog-overlay,.canvas-asset-dialog-overlay{background:color-mix(in srgb,#000 48%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.canvas-editor .canvas-asset-dialog,.canvas-asset-dialog{border:1px solid var(--canvas-border);background:var(--canvas-panel-raised);color:var(--canvas-text);box-shadow:var(--canvas-shadow-lg);backdrop-filter:var(--canvas-blur);-webkit-backdrop-filter:var(--canvas-blur)}.canvas-editor .canvas-asset-dialog-head,.canvas-asset-dialog-head{border-bottom:1px solid var(--canvas-hairline)}.canvas-editor .canvas-asset-dialog-head p,.canvas-asset-dialog-head p,.canvas-editor .canvas-asset-form-field span,.canvas-asset-form-field span{color:var(--canvas-text-muted)}.canvas-editor .canvas-asset-form-field input,.canvas-editor .canvas-asset-form-field select,.canvas-asset-form-field input,.canvas-asset-form-field select{border-color:var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text)}.canvas-editor .canvas-asset-form-field input:focus,.canvas-editor .canvas-asset-form-field select:focus,.canvas-asset-form-field input:focus,.canvas-asset-form-field select:focus{border-color:color-mix(in srgb,var(--canvas-accent-strong) 70%,var(--canvas-border));box-shadow:0 0 0 3px var(--canvas-accent-soft)}.canvas-editor .canvas-asset-dialog-preview,.canvas-asset-dialog-preview{border-color:var(--canvas-border);background:linear-gradient(var(--canvas-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--canvas-hairline) 1px,transparent 1px),color-mix(in srgb,var(--canvas-bg) 88%,#000 12%);background-size:20px 20px;color:var(--canvas-text-secondary)}.canvas-editor .canvas-primary-btn,.canvas-primary-btn{border:1px solid color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);color:#fff;background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent));box-shadow:inset 0 1px color-mix(in srgb,#fff 16%,transparent)}.canvas-editor .canvas-secondary-btn,.canvas-secondary-btn{border-color:var(--canvas-border);color:var(--canvas-text-secondary);background:var(--canvas-field)}.canvas-editor .canvas-primary-btn:hover,.canvas-primary-btn:hover,.canvas-editor .canvas-secondary-btn:hover,.canvas-secondary-btn:hover{transform:translateY(-1px)}.canvas-editor .canvas-textarea,.canvas-editor .canvas-text-editor,.canvas-editor .canvas-generator-prompt{border-color:var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text);box-shadow:inset 0 1px color-mix(in srgb,#fff 4%,transparent)}.canvas-editor .canvas-textarea:focus,.canvas-editor .canvas-text-editor:focus,.canvas-editor .canvas-generator-prompt:focus{border-color:color-mix(in srgb,var(--canvas-accent-strong) 72%,var(--canvas-border));box-shadow:0 0 0 3px var(--canvas-accent-soft),inset 0 1px color-mix(in srgb,#fff 4%,transparent)}.canvas-editor .canvas-text-editor:empty:before,.canvas-editor .canvas-generator-prompt:empty:before{color:var(--canvas-text-muted)}.canvas-editor .canvas-generator-prompt-injected{color:var(--canvas-text-muted);background:color-mix(in srgb,var(--canvas-field) 82%,var(--canvas-panel))}.canvas-editor .canvas-ref-chip{border-color:color-mix(in srgb,var(--canvas-accent) 42%,var(--canvas-border));background:var(--canvas-accent-soft);color:var(--canvas-accent-strong)}.canvas-editor .canvas-ref-chip.expression,.canvas-editor .canvas-ref-chip.style,.canvas-editor .canvas-ref-chip.lens,.canvas-editor .canvas-ref-chip.effect_style,.canvas-editor .canvas-ref-chip.era_style{border-color:color-mix(in srgb,var(--canvas-accent) 44%,var(--canvas-border));background:var(--canvas-accent-soft);color:var(--canvas-accent-strong)}.canvas-editor .canvas-chip-btn,.canvas-editor .canvas-input-summary span{border-color:var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text-secondary)}.canvas-editor .canvas-chip-btn:hover{color:var(--canvas-text);background:var(--canvas-field-hover);border-color:color-mix(in srgb,var(--canvas-accent) 40%,var(--canvas-border))}.canvas-editor .canvas-chip-btn.primary{color:#fff;border-color:color-mix(in srgb,var(--canvas-accent-strong) 58%,transparent);background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent))}.canvas-editor .canvas-media-box,.canvas-editor .canvas-video-box,.canvas-editor .canvas-audio-box,.canvas-editor .canvas-result-thumb{border-color:var(--canvas-border)}.canvas-editor .canvas-result-thumb{background:linear-gradient(var(--canvas-hairline) 1px,transparent 1px),linear-gradient(90deg,var(--canvas-hairline) 1px,transparent 1px),color-mix(in srgb,var(--canvas-bg) 88%,#000 12%);background-size:22px 22px}.canvas-editor .canvas-media-box,.canvas-editor .canvas-video-box,.canvas-editor .canvas-audio-box{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 82%,transparent),color-mix(in srgb,var(--canvas-field) 56%,transparent)),color-mix(in srgb,var(--canvas-bg) 74%,var(--canvas-panel-solid) 26%);background-size:auto}.canvas-editor .canvas-upload-box{position:relative;isolation:isolate;min-height:100%;padding:22px;border:0;color:var(--canvas-text-muted);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-field-hover) 66%,transparent),color-mix(in srgb,var(--canvas-field) 38%,transparent))}.canvas-editor .canvas-audio-box .canvas-upload-box{min-height:100%;padding:18px;gap:8px}.canvas-editor .canvas-audio-box .canvas-upload-box:before{top:12px;right:12px;bottom:12px;left:12px}.canvas-editor .canvas-audio-box .canvas-upload-box>.n-icon{width:38px;height:38px}.canvas-editor .canvas-upload-box:before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;z-index:-1;border:1px dashed color-mix(in srgb,var(--canvas-accent) 34%,var(--canvas-border));border-radius:7px;background:color-mix(in srgb,var(--canvas-panel-solid) 32%,transparent);transition:border-color var(--transition-fast),background var(--transition-fast)}.canvas-editor .canvas-upload-box>.n-icon{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--canvas-accent) 30%,var(--canvas-border));border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--canvas-accent-strong);background:var(--canvas-accent-soft);box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)}.canvas-editor .canvas-upload-box span{color:var(--canvas-text-secondary);font-size:12px;font-weight:800}.canvas-editor .canvas-upload-box:hover:before{border-color:color-mix(in srgb,var(--canvas-accent-strong) 62%,var(--canvas-border));background:color-mix(in srgb,var(--canvas-accent) 7%,transparent)}.canvas-editor .canvas-node-generator .canvas-generator-preview,.canvas-editor .canvas-node-generator .canvas-generator-result{border-color:var(--canvas-border);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 82%,transparent),color-mix(in srgb,var(--canvas-field) 56%,transparent)),color-mix(in srgb,var(--canvas-bg) 74%,var(--canvas-panel-solid) 26%);background-size:auto}.canvas-editor .canvas-node-generator .canvas-generator-empty{position:relative;isolation:isolate;min-height:188px;padding:22px;color:var(--canvas-text-muted);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-field-hover) 66%,transparent),color-mix(in srgb,var(--canvas-field) 38%,transparent))}.canvas-editor .canvas-node-generator .canvas-generator-preview.video .canvas-generator-empty,.canvas-editor .canvas-node-generator .canvas-generator-result.video .canvas-generator-empty{min-height:0;height:100%;padding:18px;gap:8px}.canvas-editor .canvas-node-generator .canvas-generator-preview.video .canvas-generator-empty:before,.canvas-editor .canvas-node-generator .canvas-generator-result.video .canvas-generator-empty:before{top:12px;right:12px;bottom:12px;left:12px}.canvas-editor .canvas-node-generator .canvas-generator-preview.video .canvas-generator-empty>.n-icon,.canvas-editor .canvas-node-generator .canvas-generator-result.video .canvas-generator-empty>.n-icon{width:38px;height:38px}.canvas-editor .canvas-node-generator .canvas-generator-empty:before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;z-index:-1;border:1px solid color-mix(in srgb,var(--canvas-border) 72%,transparent);border-radius:7px;background:color-mix(in srgb,var(--canvas-panel-solid) 32%,transparent)}.canvas-editor .canvas-node-generator .canvas-generator-empty>.n-icon{width:42px;height:42px;border:1px solid color-mix(in srgb,var(--canvas-accent) 30%,var(--canvas-border));border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:var(--canvas-accent-strong);background:var(--canvas-accent-soft);box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)}.canvas-editor .canvas-node-generator .canvas-generator-empty span{max-width:220px;color:var(--canvas-text-secondary);font-size:12px;font-weight:800;line-height:1.4;text-align:center}.canvas-editor .canvas-result-thumb.active{border-color:var(--canvas-accent-strong);box-shadow:0 0 0 2px var(--canvas-accent-soft)}.canvas-editor .canvas-preview-stack{border-color:color-mix(in srgb,#fff 28%,transparent);box-shadow:7px -7px color-mix(in srgb,#fff 14%,transparent),13px -13px color-mix(in srgb,#fff 7%,transparent)}.canvas-editor .canvas-upload-box,.canvas-editor .canvas-loading,.canvas-editor .canvas-generator-empty,.canvas-editor .canvas-audio-player{color:var(--canvas-text-muted)}.canvas-editor .canvas-upload-box{border-color:color-mix(in srgb,var(--canvas-accent) 35%,var(--canvas-border));background:color-mix(in srgb,var(--canvas-field) 68%,transparent)}.canvas-editor .canvas-upload-box:hover{color:var(--canvas-accent-strong);border-color:color-mix(in srgb,var(--canvas-accent-strong) 62%,var(--canvas-border));background:var(--canvas-accent-soft)}.canvas-editor .canvas-error,.canvas-editor .canvas-inline-error{color:var(--canvas-danger)}.canvas-editor .canvas-node-meta,.canvas-editor .canvas-field span,.canvas-editor .canvas-toggle-row span,.canvas-editor .canvas-empty-hint,.canvas-editor .canvas-reference-meta,.canvas-editor .canvas-mention-meta,.canvas-editor .canvas-mention-kind{color:var(--canvas-text-muted)}.canvas-editor .canvas-field-grid,.canvas-editor .canvas-input-summary{min-width:0}.canvas-editor .canvas-segment,.canvas-editor .canvas-mode-pill,.canvas-editor .canvas-toggle-row,.canvas-editor .canvas-prompt-preview,.canvas-editor .canvas-empty-hint,.canvas-editor .canvas-reference-row,.canvas-editor .canvas-mention-menu{border-color:var(--canvas-border);background:var(--canvas-field);color:var(--canvas-text-secondary)}.canvas-editor .canvas-mention-menu{background:var(--canvas-panel-raised);box-shadow:var(--canvas-shadow-sm)}.canvas-editor .canvas-segment button{color:var(--canvas-text-secondary)}.canvas-editor .canvas-segment button:hover,.canvas-editor .canvas-mention-item:hover,.canvas-editor .canvas-mention-item.active{background:var(--canvas-field-hover);color:var(--canvas-text)}.canvas-editor .canvas-command-item{border-color:color-mix(in srgb,var(--canvas-border) 88%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-panel-raised) 88%,transparent),color-mix(in srgb,var(--canvas-field) 94%,transparent))}.canvas-editor .canvas-command-item:hover,.canvas-editor .canvas-command-item.active{border-color:color-mix(in srgb,var(--canvas-accent) 42%,var(--canvas-border));box-shadow:inset 0 1px color-mix(in srgb,#fff 10%,transparent)}.canvas-editor .canvas-command-item .canvas-mention-kind{background:color-mix(in srgb,var(--canvas-accent) 12%,transparent);color:var(--canvas-text-secondary)}.canvas-editor .canvas-segment button.active{color:#fff;background:var(--canvas-accent);box-shadow:inset 0 1px color-mix(in srgb,#fff 14%,transparent)}.canvas-editor .canvas-reference-thumb,.canvas-editor .canvas-mention-thumb{border-color:var(--canvas-border);background:color-mix(in srgb,var(--canvas-bg) 88%,#000 12%);color:var(--canvas-text-secondary)}.canvas-editor .canvas-reference-thumb.video,.canvas-editor .canvas-mention-thumb.video{background:color-mix(in srgb,var(--canvas-danger) 14%,transparent);color:color-mix(in srgb,var(--canvas-danger) 72%,#fff 28%)}.canvas-editor .canvas-reference-thumb.audio,.canvas-editor .canvas-mention-thumb.audio,.canvas-editor .canvas-reference-thumb.expression,.canvas-editor .canvas-mention-thumb.expression{background:color-mix(in srgb,var(--canvas-accent) 14%,transparent);color:var(--canvas-accent-strong)}.canvas-editor .canvas-mention-thumb.command{background:color-mix(in srgb,var(--canvas-accent) 14%,transparent);color:var(--canvas-accent-strong);font-weight:900}.canvas-editor .canvas-mention-thumb.command.expression{background:color-mix(in srgb,#23b26d 18%,transparent);color:#16824d}.canvas-editor .canvas-mention-thumb.command.style{background:color-mix(in srgb,#e08a1e 18%,transparent);color:#a15a00}.canvas-editor .canvas-mention-thumb.command.lens{background:color-mix(in srgb,#2d7ff9 18%,transparent);color:#1d57b8}.canvas-editor .canvas-mention-thumb.command.effect-style{background:color-mix(in srgb,#d946ef 18%,transparent);color:#9d24b5}.canvas-editor .canvas-mention-thumb.command.era-style{background:color-mix(in srgb,#8b6f47 20%,transparent);color:#71512b}.canvas-editor .canvas-reference-index,.canvas-editor .canvas-mention-token{color:var(--canvas-accent-strong)}.canvas-editor .canvas-reference-name,.canvas-editor .canvas-mention-item{color:var(--canvas-text-secondary)}.canvas-editor .canvas-run-btn{border:1px solid transparent;box-shadow:var(--canvas-shadow-sm),inset 0 1px color-mix(in srgb,#fff 18%,transparent)}.canvas-editor .canvas-run-btn.image-run{background:linear-gradient(180deg,var(--canvas-accent-strong),var(--canvas-accent))}.canvas-editor .canvas-run-btn.video-run{background:linear-gradient(180deg,color-mix(in srgb,var(--canvas-danger) 88%,var(--canvas-warm) 12%),var(--canvas-warm))}.canvas-editor .canvas-run-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.03)}.canvas-editor .canvas-handle{width:12px!important;height:12px!important;background:var(--canvas-accent-strong)!important;border:2px solid var(--canvas-panel-solid)!important;box-shadow:0 0 0 3px var(--canvas-accent-soft)!important}.canvas-editor .canvas-dataflow-edge__glow{stroke:var(--canvas-accent-strong)}.canvas-editor .canvas-dataflow-edge__line{stroke:color-mix(in srgb,var(--canvas-accent) 44%,var(--canvas-text-muted) 56%)}.canvas-editor .canvas-dataflow-edge__marker-head{fill:color-mix(in srgb,var(--canvas-accent) 46%,var(--canvas-text-muted) 54%)}.canvas-editor .canvas-dataflow-edge__particle{fill:var(--canvas-accent-strong)}.canvas-editor .canvas-dataflow-edge.active .canvas-dataflow-edge__line,.canvas-editor .canvas-dataflow-edge.active .canvas-dataflow-edge__glow{stroke:var(--canvas-accent-strong)}.canvas-editor .canvas-dataflow-edge.active .canvas-dataflow-edge__marker-head{fill:var(--canvas-accent-strong)}.canvas-editor .canvas-dataflow-edge.selected .canvas-dataflow-edge__line,.canvas-editor .canvas-dataflow-edge.selected .canvas-dataflow-edge__glow{stroke:var(--canvas-warm)}.canvas-editor .canvas-dataflow-edge.selected .canvas-dataflow-edge__marker-head{fill:var(--canvas-warm)}.canvas-preview{background:color-mix(in srgb,#030505 86%,var(--canvas-bg) 14%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.canvas-preview img,.canvas-preview video{box-shadow:0 24px 70px #00000075}.canvas-preview-close{border-color:#ffffff2e;background:#ffffff1a;color:#fff}.canvas-preview-close:hover{background:#ffffff29}.canvas-panorama-shell{border-radius:var(--canvas-radius);border-color:#ffffff29;background:#090d10;box-shadow:0 28px 76px #0000008a}.canvas-panorama-header{border-bottom-color:#ffffff1f}.canvas-panorama-stage{background:radial-gradient(circle at 50% 38%,#1b2727,#0d1214 58%,#050707)}@media (max-width: 900px){.canvases-page{padding:20px}.canvases-header{align-items:stretch;flex-direction:column;height:auto;padding:14px}.canvas-topbar{top:10px;left:74px;right:10px;height:auto;align-items:flex-start;gap:8px}.canvas-title-group{width:auto;max-width:min(260px,calc(46vw - 8px));min-height:40px}.canvas-title-input{min-width:72px;max-width:120px}.canvas-toolbar{max-width:calc(54vw - 8px);flex-wrap:nowrap}.canvas-save-state{display:none}html.app-sidebar-collapsed .canvas-editor:not(.fullscreen) .canvas-topbar{left:10px}}@media (max-width: 768px){.canvas-topbar{left:10px}}@media (max-width: 900px){.canvas-editor.fullscreen .canvas-topbar,.canvas-editor:fullscreen .canvas-topbar{left:10px;right:10px;top:10px;height:auto;flex-direction:row;align-items:flex-start}.canvas-editor.fullscreen .canvas-title-group,.canvas-editor:fullscreen .canvas-title-group{width:auto;max-width:min(260px,calc(46vw - 8px))}.canvas-editor.fullscreen .canvas-title-input,.canvas-editor:fullscreen .canvas-title-input{min-width:72px;max-width:120px}.canvas-editor.fullscreen .canvas-toolbar,.canvas-editor:fullscreen .canvas-toolbar{flex-wrap:nowrap;max-width:calc(54vw - 8px)}.canvas-asset-library,.canvas-editor.fullscreen .canvas-asset-library,.canvas-editor:fullscreen .canvas-asset-library{top:auto;left:8px;right:8px;bottom:8px;width:auto;max-height:min(62dvh,520px)}.canvas-builtin-library,.canvas-editor.fullscreen .canvas-builtin-library,.canvas-editor:fullscreen .canvas-builtin-library{height:min(72dvh,640px);max-height:min(72dvh,640px)}.canvas-builtin-item{min-height:94px}.canvas-ai-panel,.canvas-editor.fullscreen .canvas-ai-panel,.canvas-editor:fullscreen .canvas-ai-panel{--canvas-ai-width: calc(100vw - 20px) ;top:auto;right:10px;left:10px;bottom:10px;align-items:stretch}.canvas-ai-toggle{top:auto;bottom:0;width:64px;min-height:148px;border-radius:22px 22px 0 0;padding:14px 10px 14px 12px}.canvas-ai-shell{width:100%;margin-left:0;max-height:min(68dvh,680px)}.canvas-ai-body{min-height:0}}@media (min-width: 901px){.canvas-editor .canvas-minimap{bottom:18px!important;right:18px!important}.canvas-editor.has-ai-panel .canvas-minimap,.canvas-editor.fullscreen.has-ai-panel .canvas-minimap,.canvas-editor:fullscreen.has-ai-panel .canvas-minimap{right:706px!important}}.auth-modal-overlay[data-v-42d48264]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay-bg);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:20px}.auth-modal[data-v-42d48264]{width:100%;max-width:440px;max-height:90vh;overflow-y:auto;padding:28px 24px;background:var(--color-modal-bg);border:1px solid var(--color-border-medium);border-radius:18px;box-shadow:0 25px 80px var(--color-tint-black-50);position:relative;animation:modalIn-42d48264 .4s cubic-bezier(.4,0,.2,1)}@keyframes modalIn-42d48264{0%{opacity:0;transform:scale(.9) translateY(-30px)}to{opacity:1;transform:scale(1) translateY(0)}}.close-btn[data-v-42d48264]{position:absolute;top:12px;right:12px;width:36px;height:36px;border:none;background:var(--color-tint-white-06);border-radius:10px;color:var(--color-text-muted);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.close-btn[data-v-42d48264]:hover{background:var(--color-tint-white-12);color:var(--color-text-primary);transform:rotate(90deg)}.auth-header[data-v-42d48264]{text-align:center;margin-bottom:32px}.auth-brand[data-v-42d48264]{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:12px}.logo-icon[data-v-42d48264]{width:40px;height:40px;object-fit:contain}.auth-header h1[data-v-42d48264]{font-family:Noto Sans SC,PingFang SC,Microsoft YaHei,sans-serif;font-size:28px;font-weight:900;margin:0;color:var(--color-text-primary);letter-spacing:.02em;transform:skew(-3deg)}.subtitle[data-v-42d48264]{color:var(--color-text-secondary);font-size:14px;margin:0;letter-spacing:.02em}.auth-tabs[data-v-42d48264]{display:flex;gap:8px;margin-bottom:28px;background:var(--color-tint-white-03);border-radius:12px;padding:6px;border:1px solid var(--color-tint-white-06)}.tab-btn[data-v-42d48264]{flex:1;padding:12px 16px;border:none;background:transparent;color:var(--color-text-muted);font-size:14px;font-weight:600;border-radius:8px;cursor:pointer;transition:all .3s ease}.tab-btn.active[data-v-42d48264]{background:#00cae0;color:#fff;box-shadow:0 4px 16px #00cae059}.tab-btn[data-v-42d48264]:hover:not(.active){color:var(--color-text-secondary);background:#00cae014}.auth-form[data-v-42d48264]{display:flex;flex-direction:column;gap:16px}.form-group[data-v-42d48264]{display:flex;flex-direction:column;gap:6px}.form-label[data-v-42d48264]{font-size:13px;font-weight:600;color:var(--color-text-secondary);letter-spacing:.3px;margin-bottom:2px}.input-wrapper[data-v-42d48264]{position:relative;display:flex;align-items:center}.form-input[data-v-42d48264]{width:100%;padding:12px 14px;font-size:14px;background:var(--color-input-bg);border:1px solid var(--color-border-medium);border-radius:12px;color:var(--color-text-primary);transition:all .3s ease}.form-input[data-v-42d48264]:focus{background:var(--color-input-bg-focus);border-color:#00cae080;outline:none;box-shadow:0 0 0 3px #00cae026}.form-input[data-v-42d48264]::placeholder{color:var(--color-text-muted)}.form-input[data-v-42d48264]:disabled{opacity:.5;cursor:not-allowed}.toggle-password-btn[data-v-42d48264]{position:absolute;right:12px;background:transparent;border:none;color:var(--color-text-muted);cursor:pointer;font-size:16px;padding:4px;transition:all .2s ease}.toggle-password-btn[data-v-42d48264]:hover{color:var(--color-accent)}.success-alert[data-v-42d48264]{display:flex;align-items:center;gap:10px;padding:12px 14px;background:var(--color-success-light);border:1px solid rgba(76,175,80,.3);border-radius:10px;color:var(--color-success);font-size:13px}.success-icon[data-v-42d48264]{font-size:16px;flex-shrink:0}.error-alert[data-v-42d48264]{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:10px;color:var(--color-error-light);font-size:13px}.error-icon[data-v-42d48264]{font-size:16px;flex-shrink:0}.submit-btn[data-v-42d48264]{padding:12px;font-size:14px;font-weight:700;color:#fff;background:#00cae0;border:none;border-radius:10px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;margin-top:8px;letter-spacing:.5px}.submit-btn[data-v-42d48264]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 28px #00cae066}.submit-btn[data-v-42d48264]:disabled{opacity:.6;cursor:not-allowed}.spinner[data-v-42d48264]{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin-42d48264 .8s linear infinite}@keyframes spin-42d48264{to{transform:rotate(360deg)}}.auth-footer[data-v-42d48264]{text-align:center;margin-top:28px;padding-top:24px;border-top:1px solid var(--color-tint-white-06)}.footer-text[data-v-42d48264]{font-size:14px;color:var(--color-text-muted);margin:0}.link-btn[data-v-42d48264]{background:transparent;border:none;color:var(--color-accent);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.link-btn[data-v-42d48264]:hover{text-decoration:underline;color:#00cae0}@media (max-width: 768px){.auth-modal[data-v-42d48264]{max-width:calc(100% - 32px);margin:16px;padding:28px 20px}.auth-header h1[data-v-42d48264]{font-size:24px}.logo-icon[data-v-42d48264]{width:34px;height:34px}}@media (max-width: 480px){.auth-modal[data-v-42d48264]{max-width:calc(100% - 24px);margin:12px;padding:24px 16px}.auth-header h1[data-v-42d48264]{font-size:22px}.logo-icon[data-v-42d48264]{width:30px;height:30px}.form-group label[data-v-42d48264]{font-size:12px}.form-input[data-v-42d48264]{padding:10px 12px;font-size:13px}}@media (max-width: 360px){.auth-modal[data-v-42d48264]{padding:20px 14px}.auth-header h1[data-v-42d48264]{font-size:20px}}.app-root[data-v-c98ae716]{width:100%;min-height:100vh;position:relative}.particle-field[data-v-c98ae716]{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.particle[data-v-c98ae716]{position:absolute;left:var(--x);top:var(--y);width:var(--size);height:var(--size);background:rgba(var(--particle-color),var(--opacity));border-radius:50%;animation:particleFloat-c98ae716 var(--duration) ease-in-out var(--delay) infinite}@keyframes particleFloat-c98ae716{0%,to{transform:translate(0) scale(1);opacity:var(--opacity)}25%{transform:translate(30px,-40px) scale(1.2)}50%{transform:translate(-20px,-80px) scale(.8);opacity:calc(var(--opacity) * 1.5)}75%{transform:translate(40px,-40px) scale(1.1)}}
