:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#0e0e12;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--bg-app: #0e0e12;--bg-panel: #16161c;--bg-card: #1c1c24;--bg-input: #22222c;--bg-hover: #2a2a36;--border: rgba(255, 255, 255, .06);--border-focus: rgba(120, 100, 255, .5);--text-primary: #f0eef6;--text-secondary: #9490a8;--text-muted: #5e5a72;--accent: #7c6aff;--accent-hover: #9584ff;--accent-glow: rgba(124, 106, 255, .25);--accent-faded: rgba(124, 106, 255, .1);--header-h: 64px;--panel-w: 360px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--ease: cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{margin:0;display:flex;min-width:320px;min-height:100vh;overflow:hidden}#app{width:100%}.app-header.svelte-yv8olq.svelte-yv8olq{height:var(--header-h);display:flex;align-items:center;justify-content:space-between;padding:0 24px;background:var(--bg-panel);border-bottom:1px solid var(--border);z-index:100}.header-left.svelte-yv8olq.svelte-yv8olq,.header-right.svelte-yv8olq.svelte-yv8olq,.logo.svelte-yv8olq.svelte-yv8olq{display:flex;align-items:center;gap:12px}.logo-icon.svelte-yv8olq.svelte-yv8olq{width:32px;height:32px;border-radius:8px;background:linear-gradient(135deg,#fd79a8,#6c5ce7,#45b7d1);box-shadow:0 4px 12px #6c5ce74d}h1.svelte-yv8olq.svelte-yv8olq{font-size:18px;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#eee,#aaa);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.divider.svelte-yv8olq.svelte-yv8olq{width:1px;height:24px;background:var(--border);margin:0 8px}.history-controls.svelte-yv8olq.svelte-yv8olq{display:flex;gap:4px}.icon-btn.svelte-yv8olq.svelte-yv8olq{background:transparent;border:none;color:var(--text-secondary);width:36px;height:36px;border-radius:8px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.icon-btn.svelte-yv8olq.svelte-yv8olq:hover:not(:disabled),.icon-btn.active.svelte-yv8olq.svelte-yv8olq{background:var(--bg-hover);color:var(--text-primary)}.icon-btn.active.svelte-yv8olq.svelte-yv8olq{background:var(--accent-faded);color:var(--accent)}.small-divider.svelte-yv8olq.svelte-yv8olq{width:1px;height:16px;background:var(--border);margin:8px 4px;align-self:center}.icon-btn.svelte-yv8olq.svelte-yv8olq:disabled{opacity:.3;cursor:default}.btn.svelte-yv8olq.svelte-yv8olq{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:var(--radius-sm);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.btn-ghost.svelte-yv8olq.svelte-yv8olq{background:transparent;color:var(--text-secondary);border:1px solid var(--border)}.btn-ghost.svelte-yv8olq.svelte-yv8olq:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-muted)}.btn-primary.svelte-yv8olq.svelte-yv8olq{background:var(--accent);color:#fff}.btn-primary.svelte-yv8olq.svelte-yv8olq:hover{background:var(--accent-hover);box-shadow:0 4px 15px var(--accent-glow)}.modal-overlay.svelte-yv8olq.svelte-yv8olq{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-yv8olq.svelte-yv8olq{background:var(--bg-panel);border:1px solid var(--border);border-radius:var(--radius-lg, 16px);padding:28px;width:400px;max-width:90vw;box-shadow:0 20px 60px #00000080}.modal-title.svelte-yv8olq.svelte-yv8olq{font-size:18px;font-weight:700;color:var(--text-primary);margin-bottom:20px;display:flex;align-items:center;gap:8px}.modal-field.svelte-yv8olq.svelte-yv8olq{margin-bottom:16px}.modal-field.svelte-yv8olq label.svelte-yv8olq{display:block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}.modal-field.svelte-yv8olq input.svelte-yv8olq{width:100%;padding:10px 12px;border-radius:var(--radius-sm, 8px);border:1px solid var(--border);background:var(--bg-input, #1a1a2e);color:var(--text-primary);font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.modal-field.svelte-yv8olq input.svelte-yv8olq:focus{border-color:var(--accent)}.modal-actions.svelte-yv8olq.svelte-yv8olq{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.canvas-section.svelte-158bbr3.svelte-158bbr3{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at center,#1a1a24,#0e0e12);padding:40px;overflow:hidden}.canvas-wrapper.svelte-158bbr3.svelte-158bbr3{position:relative;background:#000;border-radius:var(--radius-lg);box-shadow:0 20px 50px #00000080,0 0 0 1px var(--border);overflow:hidden;touch-action:none}.gradient-bg.svelte-158bbr3.svelte-158bbr3{width:100%;height:100%;position:relative;display:block;overflow:hidden}.handles-overlay.svelte-158bbr3.svelte-158bbr3{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.handle.svelte-158bbr3.svelte-158bbr3{position:absolute;width:24px;height:24px;transform:translate(-50%,-50%);border-radius:50%;border:2px solid white;box-shadow:0 2px 8px #0006,0 0 0 1px #0000001a;cursor:grab;pointer-events:auto;transition:transform .2s,box-shadow .2s}.handle.svelte-158bbr3.svelte-158bbr3:hover{transform:translate(-50%,-50%) scale(1.2);z-index:10}.handle.active.svelte-158bbr3.svelte-158bbr3{cursor:grabbing;transform:translate(-50%,-50%) scale(1.3);box-shadow:0 4px 12px #00000080,0 0 20px var(--accent-glow)}.handle.svelte-158bbr3 .label.svelte-158bbr3{position:absolute;top:-28px;left:50%;transform:translate(-50%);background:#000c;color:#fff;padding:2px 8px;border-radius:4px;font-size:10px;white-space:nowrap;opacity:0;transition:opacity .2s}.handle.svelte-158bbr3:hover .label.svelte-158bbr3,.handle.active.svelte-158bbr3 .label.svelte-158bbr3{opacity:1}.canvas-info.svelte-158bbr3.svelte-158bbr3{margin-top:20px;font-size:12px;color:var(--text-muted);font-weight:500;letter-spacing:.05em}.menu-overlay.svelte-158bbr3.svelte-158bbr3{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000}.context-menu.svelte-158bbr3.svelte-158bbr3{position:fixed;background:#1e1e24;border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 10px 25px #00000080,0 0 0 1px #ffffff0d;min-width:160px;padding:4px;display:flex;flex-direction:column;gap:2px;transform:translate(2px,2px);animation:svelte-158bbr3-menu-pop .15s ease-out}@keyframes svelte-158bbr3-menu-pop{0%{opacity:0;transform:translateY(-4px) scale(.98)}to{opacity:1;transform:translateY(2px) scale(1)}}.menu-item.svelte-158bbr3.svelte-158bbr3{display:flex;align-items:center;gap:10px;width:100%;padding:8px 12px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;border-radius:var(--radius-xs);cursor:pointer;text-align:left;transition:all .2s}.menu-item.svelte-158bbr3.svelte-158bbr3:hover:not(:disabled){background:var(--bg-hover);color:#fff}.menu-item.delete.svelte-158bbr3.svelte-158bbr3:hover:not(:disabled){background:#f871711a;color:#f87171}.menu-item.svelte-158bbr3.svelte-158bbr3:disabled{opacity:.4;cursor:not-allowed}.menu-divider.svelte-158bbr3.svelte-158bbr3{height:1px;background:var(--border);margin:2px 4px}.controls-panel.svelte-64w26t.svelte-64w26t{width:var(--panel-w);background:var(--bg-panel);border-left:1px solid var(--border);overflow-y:auto}.panel-inner.svelte-64w26t.svelte-64w26t{padding:24px;display:flex;flex-direction:column;gap:32px}.section-header.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.size-badge.svelte-64w26t.svelte-64w26t{font-size:10px;font-family:monospace;background:var(--bg-input);color:var(--text-muted);padding:2px 6px;border-radius:4px;border:1px solid var(--border)}.presets-grid.svelte-64w26t.svelte-64w26t{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.preset-btn.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.preset-btn.svelte-64w26t.svelte-64w26t:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-muted)}.preset-btn.active.svelte-64w26t.svelte-64w26t{background:var(--accent-faded);color:var(--accent);border-color:var(--accent)}h2.svelte-64w26t.svelte-64w26t{font-size:12px;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);font-weight:700}.stops-list.svelte-64w26t.svelte-64w26t{display:flex;flex-direction:column;gap:12px}.stop-item.svelte-64w26t.svelte-64w26t{display:flex;flex-direction:column;gap:12px;padding:12px;background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border)}.stop-item-top.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;gap:12px}.stop-item-controls.svelte-64w26t.svelte-64w26t{display:flex;flex-direction:column;gap:8px;padding-left:26px}.inner-row.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;gap:10px}.inner-row.svelte-64w26t label.svelte-64w26t{font-size:10px;color:var(--text-muted);width:45px;text-transform:uppercase}.inner-row.svelte-64w26t input.svelte-64w26t{flex:1}.inner-val.svelte-64w26t.svelte-64w26t{font-size:10px;color:var(--text-muted);min-width:30px;text-align:right}.drag-handle.svelte-64w26t.svelte-64w26t{cursor:grab;color:var(--text-muted)}.color-picker-wrap.svelte-64w26t.svelte-64w26t{flex:1;display:flex;align-items:center;gap:10px}input[type=color].svelte-64w26t.svelte-64w26t{width:28px;height:28px;border:none;background:none;cursor:pointer}.color-val.svelte-64w26t.svelte-64w26t{font-family:monospace;font-size:12px;color:var(--text-primary)}.remove-btn.svelte-64w26t.svelte-64w26t,.add-btn.svelte-64w26t.svelte-64w26t,.duplicate-btn.svelte-64w26t.svelte-64w26t{background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:color .2s}.duplicate-btn.svelte-64w26t.svelte-64w26t:hover{color:var(--accent)}.remove-btn.svelte-64w26t.svelte-64w26t:hover:not(:disabled){color:#f87171}.add-btn.svelte-64w26t.svelte-64w26t:hover{color:var(--accent)}.control-row.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;gap:12px;margin-bottom:12px}.control-row.svelte-64w26t label.svelte-64w26t{flex:1;font-size:13px;color:var(--text-secondary)}.val.svelte-64w26t.svelte-64w26t{min-width:32px;text-align:right;font-size:12px;color:var(--text-muted)}.val-group.svelte-64w26t.svelte-64w26t{display:flex;align-items:center;gap:4px;min-width:45px}.reset-icon.svelte-64w26t.svelte-64w26t{background:transparent;border:none;color:var(--text-muted);font-size:10px;cursor:pointer;padding:2px;border-radius:50%;line-height:1;display:flex;align-items:center;justify-content:center;transition:all .2s}.reset-icon.svelte-64w26t.svelte-64w26t:hover{background:var(--bg-hover);color:var(--accent)}input.overridden.svelte-64w26t.svelte-64w26t{accent-color:var(--accent)}input[type=range].svelte-64w26t.svelte-64w26t{flex:2}select.svelte-64w26t.svelte-64w26t{background:var(--bg-input);color:#fff;border:1px solid var(--border);padding:4px 8px;border-radius:4px;font-size:13px}.history-panel.svelte-az25sa.svelte-az25sa{width:280px;background:var(--bg-panel);border-right:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.tabs.svelte-az25sa.svelte-az25sa{display:flex;padding:12px;gap:8px;border-bottom:1px solid var(--border)}.tab.svelte-az25sa.svelte-az25sa{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--text-secondary);background:transparent;border:none;cursor:pointer;transition:all .2s}.tab.active.svelte-az25sa.svelte-az25sa{background:var(--bg-hover);color:var(--text-primary)}.list-container.svelte-az25sa.svelte-az25sa{flex:1;overflow-y:auto;padding:12px}.list.svelte-az25sa.svelte-az25sa{display:flex;flex-direction:column;gap:8px}.list-item.svelte-az25sa.svelte-az25sa{position:relative;padding:12px;background:var(--bg-card);border-radius:var(--radius-md);border:1px solid var(--border);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:12px;width:100%;text-align:left;color:inherit;font-family:inherit}.list-item.svelte-az25sa.svelte-az25sa:hover{border-color:var(--text-muted);background:var(--bg-hover)}.list-item.current.svelte-az25sa.svelte-az25sa{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.item-main.svelte-az25sa.svelte-az25sa{flex:1;display:flex;flex-direction:column;gap:8px}.item-info.svelte-az25sa.svelte-az25sa{display:flex;flex-direction:column}.item-name.svelte-az25sa.svelte-az25sa{font-size:13px;font-weight:600;color:var(--text-primary)}.item-time.svelte-az25sa.svelte-az25sa{font-size:10px;color:var(--text-muted);display:flex;align-items:center;gap:4px}.item-preview.svelte-az25sa.svelte-az25sa{width:100%;height:40px;border-radius:4px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.preview-blob.svelte-az25sa.svelte-az25sa{position:absolute;transform:translate(-50%,-50%);border-radius:50%;pointer-events:none}.star-btn.svelte-az25sa.svelte-az25sa,.remove-btn.svelte-az25sa.svelte-az25sa{background:transparent;border:none;color:var(--text-muted);cursor:pointer;transition:all .2s;padding:4px}.star-btn.svelte-az25sa.svelte-az25sa:hover,.star-btn.starred.svelte-az25sa.svelte-az25sa{color:#fbbf24}.remove-btn.svelte-az25sa.svelte-az25sa:hover{color:#f87171}.current-indicator.svelte-az25sa.svelte-az25sa{position:absolute;top:8px;right:8px;color:var(--accent)}.empty-state.svelte-az25sa.svelte-az25sa{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 0;color:var(--text-muted);text-align:center;gap:12px}.empty-state.svelte-az25sa p.svelte-az25sa{font-size:13px}.drop-overlay.svelte-t7cads.svelte-t7cads{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0e0e12bf;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;padding:24px;pointer-events:none;opacity:0;visibility:hidden;transition:opacity .2s var(--ease),visibility .2s var(--ease)}.drop-overlay.visible.svelte-t7cads.svelte-t7cads{opacity:1;visibility:visible}.drop-card.svelte-t7cads.svelte-t7cads{position:relative;width:100%;max-width:480px;padding:44px 32px;border-radius:var(--radius-lg);background:linear-gradient(135deg,#1c1c24f2,#16161cf2);border:2px dashed var(--accent);box-shadow:0 0 50px #7c6aff40,0 20px 40px #0009,inset 0 0 20px #7c6aff1a;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;transform:scale(.94);transition:transform .25s var(--ease);animation:svelte-t7cads-pulseBorder 2s infinite ease-in-out}.drop-overlay.visible.svelte-t7cads .drop-card.svelte-t7cads{transform:scale(1)}.glow-sphere.svelte-t7cads.svelte-t7cads{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:240px;height:240px;background:radial-gradient(circle,rgba(124,106,255,.2) 0%,transparent 70%);border-radius:50%;pointer-events:none}.icon-wrapper.svelte-t7cads.svelte-t7cads{position:relative;width:80px;height:80px;border-radius:24px;background:linear-gradient(135deg,var(--accent-faded) 0%,rgba(124,106,255,.2) 100%);border:1px solid rgba(124,106,255,.4);display:flex;align-items:center;justify-content:center;color:var(--accent-hover);margin-bottom:20px;box-shadow:0 8px 24px #7c6aff40;animation:svelte-t7cads-floatIcon 3s ease-in-out infinite}.sparkle-badge.svelte-t7cads.svelte-t7cads{position:absolute;top:-6px;right:-6px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #7c6aff80}.drop-title.svelte-t7cads.svelte-t7cads{font-size:20px;font-weight:700;color:var(--text-primary);margin-bottom:8px;letter-spacing:-.01em}.drop-description.svelte-t7cads.svelte-t7cads{font-size:14px;color:var(--text-secondary);margin-bottom:20px;max-width:320px;line-height:1.5}.drop-badge.svelte-t7cads.svelte-t7cads{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;background:#7c6aff26;border:1px solid rgba(124,106,255,.3);color:var(--accent-hover);font-size:11px;font-weight:600;letter-spacing:.08em}@keyframes svelte-t7cads-pulseBorder{0%,to{border-color:var(--accent);box-shadow:0 0 40px #7c6aff33,0 20px 40px #0009,inset 0 0 15px #7c6aff14}50%{border-color:var(--accent-hover);box-shadow:0 0 60px #7c6aff66,0 20px 40px #0009,inset 0 0 25px #7c6aff2e}}@keyframes svelte-t7cads-floatIcon{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.toast-container.svelte-1t5cckh.svelte-1t5cckh{position:fixed;bottom:24px;right:24px;z-index:10000;display:flex;flex-direction:column;gap:10px;max-width:400px;pointer-events:none}.toast-item.svelte-1t5cckh.svelte-1t5cckh{pointer-events:auto;display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);background:#16161ce6;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--border);box-shadow:0 10px 30px #0006,0 0 1px #ffffff1a;color:var(--text-primary);font-size:13px;line-height:1.4;transition:transform .2s var(--ease)}.toast-item.success.svelte-1t5cckh.svelte-1t5cckh{border-color:#4ade804d;box-shadow:0 10px 30px #0006,0 0 15px #4ade8026}.toast-item.success.svelte-1t5cckh .toast-icon.svelte-1t5cckh{color:#4ade80}.toast-item.error.svelte-1t5cckh.svelte-1t5cckh{border-color:#f871714d;box-shadow:0 10px 30px #0006,0 0 15px #f8717126}.toast-item.error.svelte-1t5cckh .toast-icon.svelte-1t5cckh{color:#f87171}.toast-item.info.svelte-1t5cckh.svelte-1t5cckh{border-color:#7c6aff4d;box-shadow:0 10px 30px #0006,0 0 15px #7c6aff26}.toast-item.info.svelte-1t5cckh .toast-icon.svelte-1t5cckh{color:var(--accent)}.toast-icon.svelte-1t5cckh.svelte-1t5cckh{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-message.svelte-1t5cckh.svelte-1t5cckh{flex:1;word-break:break-word;font-weight:500}.toast-close.svelte-1t5cckh.svelte-1t5cckh{background:transparent;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;transition:color .15s ease,background .15s ease}.toast-close.svelte-1t5cckh.svelte-1t5cckh:hover{color:var(--text-primary);background:var(--bg-hover)}.app-container.svelte-oh18mu{display:flex;flex-direction:column;height:100vh;background-color:var(--bg-app)}.main-content.svelte-oh18mu{flex:1;display:flex;overflow:hidden}
