.editor{position:relative;flex:1;min-width:0;height:100%;overflow:hidden}.editor-canvas-container{position:absolute;top:0;right:0;bottom:0;left:0}.editor-empty-state{position:absolute;top:52%;left:50%;z-index:10;display:flex;width:min(420px,calc(100% - 48px));flex-direction:column;align-items:center;box-sizing:border-box;padding:0;color:#403b35;text-align:center;pointer-events:none;transform:translate(-50%,-50%)}.editor-empty-state__illustration{width:184px;height:96px;margin-bottom:18px}.editor-empty-state__illustration svg{display:block;width:100%;height:100%;overflow:visible}.editor-empty-state__illustration path,.editor-empty-state__illustration rect,.editor-empty-state__illustration circle{stroke-linecap:round;stroke-linejoin:round}.editor-empty-state__illustration .editor-empty-state__scribble{fill:none;stroke:#746c6242;stroke-width:1.4}.editor-empty-state__illustration .editor-empty-state__connector,.editor-empty-state__illustration .editor-empty-state__connector-arrow{fill:none;stroke:#8d867d;stroke-width:1.7;stroke-dasharray:4 5}.editor-empty-state__illustration .editor-empty-state__connector-arrow{stroke-dasharray:none}.editor-empty-state__illustration .editor-empty-state__circle{fill:#fffefa;stroke:#8d867d;stroke-width:1.7}.editor-empty-state__illustration .editor-empty-state__rectangle{fill:#eeecfa;stroke:#615ba4;stroke-width:1.8}.editor-empty-state__illustration .editor-empty-state__plus{fill:none;stroke:#615ba4;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.editor-empty-state__title{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:22px;font-weight:650;line-height:1.25;letter-spacing:-.015em}.editor-empty-state__description{max-width:360px;margin:9px 0 20px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:14px;line-height:1.55;color:#8a8279}.editor-empty-state__button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;gap:7px;padding:0 14px;color:#514c9a;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:13px;font-weight:600;line-height:1;pointer-events:auto;background:rgba(255,254,250,.72);border:1px solid rgba(97,91,164,.42);border-radius:8px;box-shadow:0 1px 2px #463d300f;outline:none;cursor:pointer;transition:background-color .12s ease,box-shadow .12s ease,transform .12s ease}.editor-empty-state__button:hover{color:#464184;background:#eeecfa;border-color:#514c9ab3;box-shadow:0 3px 9px #514c9a1f;transform:translateY(-1px)}.editor-empty-state__button:active{box-shadow:0 1px 2px #463d3014;transform:translateY(0) scale(.98)}.editor-empty-state__button:focus-visible{box-shadow:0 0 0 3px #615ba42e}.editor-empty-state__button-arrow{font-size:16px;font-weight:400;line-height:1;transition:transform .12s ease}.editor-empty-state__button:hover .editor-empty-state__button-arrow{transform:translate(2px)}@media (max-width: 640px){.editor-empty-state{top:54%;width:min(360px,calc(100% - 40px))}.editor-empty-state__illustration{margin-bottom:12px;transform:scale(.84)}.editor-empty-state__title{font-size:20px}}#toolbar{position:fixed;top:20px;left:50%;z-index:100;display:flex;align-items:center;gap:4px;box-sizing:border-box;max-width:calc(100vw - 32px);padding:7px 9px;background:var(--ui-color-surface);border:1px solid rgba(73,67,57,.22);border-radius:13px;box-shadow:var(--ui-floating-shadow);transform:translate(-50%)}.tb-group,.zoom-wrap{display:flex;align-items:center;gap:4px}.tb-sep{width:1px;height:20px;margin:0 4px;flex:0 0 auto;background:rgba(122,113,101,.2)}.tb-button{position:relative;display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:36px;height:36px;flex:0 0 36px;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--ui-color-text);background:rgba(255,255,255,.45);border:1px solid rgba(73,67,57,.24);border-radius:7px;outline:none;cursor:pointer;transition:color .12s ease,background-color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.tb-button .tb-icon{width:20px;height:20px;overflow:visible;pointer-events:none}.tb-button:hover{color:var(--ui-color-text-strong);background:var(--ui-color-hover);border-color:#4943396b;transform:translateY(-1px)}.tb-button:active{transform:translateY(0) scale(.96)}.tb-button:focus-visible{position:relative;z-index:1;box-shadow:var(--ui-focus-ring)}.tb-button:disabled{color:#aaa399;background:rgba(247,244,239,.38);border-color:#7a716526;cursor:not-allowed;opacity:.62;transform:none}.tb-button[data-pressed],.tb-button[data-pressed]:hover{color:var(--ui-color-accent-strong);background:var(--ui-color-accent-soft);border-color:var(--ui-color-accent);box-shadow:inset 0 0 0 1px #615ba414}.zoom-label{box-sizing:border-box;min-width:44px;height:32px;padding:0 5px;-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--ui-font-sans);font-size:12px;font-weight:600;line-height:32px;color:var(--ui-color-text-muted);text-align:center;font-variant-numeric:tabular-nums;background:transparent;border:0;border-radius:6px;outline:none;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .12s ease,background-color .12s ease}.zoom-label:hover{color:var(--ui-color-text-strong);background:var(--ui-color-hover);border-color:transparent}.zoom-label:focus-visible{box-shadow:var(--ui-focus-ring)}.zoom-label[data-popup-open]{color:var(--ui-color-text-strong);background:var(--ui-color-hover)}.zoom-menu__positioner{outline:none}.zoom-menu__surface{box-sizing:border-box;min-width:150px;padding:4px;color:var(--ui-color-text);background:var(--ui-color-surface);border:1px solid rgba(73,67,57,.22);border-radius:9px;box-shadow:var(--ui-floating-shadow);outline:none;transform-origin:var(--transform-origin);transition:opacity .12s ease,transform .12s ease}.zoom-menu__surface[data-starting-style],.zoom-menu__surface[data-ending-style]{opacity:0;transform:translateY(-4px) scale(.98)}.zoom-menu__item{display:flex;align-items:center;box-sizing:border-box;width:100%;height:34px;gap:8px;padding:0 9px;color:var(--ui-color-text);font:550 12px/1 var(--ui-font-sans);white-space:nowrap;background:transparent;border:0;border-radius:6px;outline:none;cursor:pointer;transition:color .12s ease,background-color .12s ease}.zoom-menu__item .tb-icon{width:18px;height:18px;flex:0 0 18px;overflow:visible;pointer-events:none}.zoom-menu__item:hover,.zoom-menu__item[data-highlighted]{color:var(--ui-color-text-strong);background:var(--ui-color-hover)}.zoom-menu__item[data-highlighted]{box-shadow:0 0 0 2px #615ba42e}.zoom-menu__value{display:inline-flex;width:18px;flex:0 0 18px;justify-content:center;font-size:10px;font-variant-numeric:tabular-nums}.language-select{box-sizing:border-box;height:36px;min-width:78px;padding:0 28px 0 11px;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:var(--ui-color-text);font:600 12px/1 var(--ui-font-sans);background:linear-gradient(45deg,transparent 50%,#6f675d 50%) calc(100% - 14px) 15px / 5px 5px no-repeat,linear-gradient(135deg,#6f675d 50%,transparent 50%) calc(100% - 9px) 15px / 5px 5px no-repeat,var(--ui-color-surface);border:1px solid rgba(73,67,57,.24);border-radius:7px;outline:none;cursor:pointer;transition:background-color .12s ease,border-color .12s ease}.language-select:hover{background-color:var(--ui-color-hover);border-color:#4943396b}.language-select:focus-visible{box-shadow:var(--ui-focus-ring)}@media (prefers-reduced-motion: reduce){.tb-button,.zoom-label,.zoom-menu__surface,.zoom-menu__item,.language-select{transition-duration:0ms}}@media (max-width: 820px){#toolbar{top:12px;justify-content:flex-start;overflow-x:auto;scrollbar-width:none}#toolbar::-webkit-scrollbar{display:none}.tb-button{width:34px;height:34px;flex-basis:34px}.tb-sep{margin:0 2px}.language-select{height:34px}}.ctx-panel{position:fixed;left:20px;top:50%;z-index:10;width:256px;opacity:0;pointer-events:none;transform:translate(-10px,-50%);transition:opacity .18s ease,transform .22s cubic-bezier(.2,.8,.2,1)}.ctx-panel--visible{opacity:1;pointer-events:auto;transform:translateY(-50%)}.ctx-card{box-sizing:border-box;padding:14px;color:var(--ui-color-text);background:var(--ui-color-surface);border:1px solid rgba(73,67,57,.22);border-radius:12px;box-shadow:0 1px 2px #463d300f,0 8px 24px #463d301a;transition:padding .18s ease,box-shadow .18s ease}.ctx-card--collapsed{padding-block:10px;box-shadow:0 1px 2px #463d300d,0 5px 16px #463d3014}.ctx-heading{display:flex;align-items:center;justify-content:space-between;min-height:24px;font-family:var(--ui-font-sans);font-size:15px;font-weight:650;line-height:1.2;color:var(--ui-color-text-strong)}.ctx-collapse-btn{display:grid;place-items:center;width:24px;height:24px;padding:0;color:#696158;background:transparent;border:0;border-radius:6px;outline:none;cursor:pointer;transition:color .12s ease,background-color .12s ease}.ctx-collapse-btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .16s ease}.ctx-collapse-btn--collapsed svg{transform:rotate(-90deg)}.ctx-collapse-btn:hover{color:var(--ui-color-text-strong);background:#f3f0eb;border-color:transparent}.ctx-collapse-btn:focus-visible{box-shadow:var(--ui-focus-ring)}.ctx-body{display:flex;flex-direction:column;gap:12px;padding-top:12px}.ctx-selection-note{margin:0;padding:6px 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;font-size:12px;line-height:1.3;color:var(--ui-color-accent-strong);background:var(--ui-color-accent-soft);border-radius:6px}.ctx-section{display:flex;flex-direction:column;gap:10px;margin:0;padding:0}.ctx-section-title,.ctx-label{font-family:var(--ui-font-sans);color:var(--ui-color-text-muted)}.ctx-section-title{margin:0;font-size:12px;font-weight:650;line-height:1.2}.ctx-label{display:block;font-size:11px;font-weight:550;line-height:1.2}.ctx-field{display:flex;flex-direction:column;gap:5px}.ctx-colors{display:flex;align-items:center;justify-content:space-between;width:100%}.ctx-dot{position:relative;box-sizing:border-box;width:22px;height:22px;flex:0 0 22px;padding:0;border:1.25px solid rgba(47,43,38,.78);border-radius:50%;box-shadow:inset 0 1px 1px #ffffff57;outline:none;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.ctx-dot:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:inherit;box-shadow:inset 0 1px 1px #00000014;pointer-events:none}.ctx-dot:hover{border-color:#2f2b26;transform:translateY(-1px) scale(1.06)}.ctx-dot:focus-visible{box-shadow:0 0 0 3px #615ba433}.ctx-dot[data-pressed]{border-color:var(--ui-color-accent-strong);box-shadow:0 0 0 2px var(--ui-color-surface),0 0 0 3.5px var(--ui-color-accent)}.ctx-dot--transparent{background:linear-gradient(45deg,transparent 45%,#d75d58 46%,#d75d58 54%,transparent 55%),#fff}.ctx-dot[data-color="#ffffff"]:after{box-shadow:inset 0 0 0 1px #0000000f}.ctx-sep{height:1px;background:rgba(122,113,101,.18)}.ctx-segmented{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;width:100%;overflow:hidden;background:rgba(255,255,255,.5);border:1px solid rgba(73,67,57,.24);border-radius:7px}.ctx-segmented--width{grid-template-columns:repeat(4,1fr);grid-auto-flow:initial}.ctx-segment-btn{height:30px;min-width:0;padding:0 8px;font-family:var(--ui-font-sans);font-size:12px;font-weight:550;line-height:28px;color:var(--ui-color-text);background:transparent;border:0;border-right:1px solid rgba(73,67,57,.18);border-radius:0;outline:none;cursor:pointer;transition:color .12s ease,background-color .12s ease}.ctx-segment-btn:last-child{border-right:0}.ctx-segment-btn:hover{color:var(--ui-color-text-strong);background:var(--ui-color-hover);border-color:#4943392e}.ctx-segment-btn:focus-visible{position:relative;z-index:1;box-shadow:inset 0 0 0 2px #615ba480}.ctx-segment-btn[data-pressed],.ctx-segment-btn[data-pressed]:hover{color:var(--ui-color-accent-strong);background:var(--ui-color-accent-soft);font-weight:650}.ctx-alpha-row{display:flex;align-items:center;gap:9px;width:100%}.ctx-slider{display:flex;width:100%;flex-direction:column;gap:5px}.ctx-slider__control{display:flex;height:18px;flex:1;align-items:center;cursor:pointer;touch-action:none;-webkit-user-select:none;user-select:none}.ctx-slider__track{position:relative;width:100%;height:3px;background:#d8d1c7;border-radius:3px}.ctx-slider__indicator{height:100%;background:var(--ui-color-accent);border-radius:inherit}.ctx-slider__thumb{box-sizing:border-box;width:16px;height:16px;background:var(--ui-color-surface);border:1.5px solid var(--ui-color-accent);border-radius:50%;box-shadow:0 1px 2px #4943392e;outline:none}.ctx-slider__thumb:has(input:focus-visible){box-shadow:var(--ui-focus-ring)}.ctx-alpha-value{min-width:34px;font-family:var(--ui-font-sans);font-size:11px;font-weight:550;line-height:1;color:var(--ui-color-text-muted);text-align:right;font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){.ctx-panel,.ctx-card,.ctx-collapse-btn svg,.ctx-dot,.ctx-segment-btn{transition-duration:0ms}}@media (max-width: 720px){.ctx-panel{left:12px;width:min(256px,calc(100vw - 24px))}}@media (max-height: 560px){.ctx-panel{top:82px;transform:translate(-10px)}.ctx-panel--visible{transform:translate(0)}.ctx-card{max-height:calc(100vh - 94px);overflow-y:auto}}:root{--ui-font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--ui-color-text: #403b35;--ui-color-text-strong: #292621;--ui-color-text-muted: #5d564d;--ui-color-surface: #fffefa;--ui-color-hover: #f4f1ed;--ui-color-accent: #615ba4;--ui-color-accent-strong: #514c9a;--ui-color-accent-soft: #eeecfa;--ui-focus-ring: 0 0 0 3px rgba(97, 91, 164, .18);--ui-floating-shadow: 0 1px 2px rgba(70, 61, 48, .06), 0 8px 24px rgba(70, 61, 48, .12)}.ui-tooltip-positioner,.ui-menu-positioner{z-index:300}.ui-tooltip{max-width:240px;padding:6px 8px;color:var(--ui-color-surface);font:550 12px/1.25 var(--ui-font-sans);text-align:center;background:var(--ui-color-text-strong);border-radius:6px;box-shadow:0 4px 14px #2f2b262e;transform-origin:var(--transform-origin);transition:opacity .1s ease,transform .1s ease}.ui-tooltip[data-starting-style],.ui-tooltip[data-ending-style]{opacity:0;transform:scale(.96)}.ui-toast-viewport{position:fixed;right:20px;bottom:20px;z-index:400;display:flex;width:min(360px,calc(100vw - 40px));flex-direction:column;gap:8px;pointer-events:none}.ui-toast{box-sizing:border-box;width:100%;color:var(--ui-color-text);background:var(--ui-color-surface);border:1px solid rgba(73,67,57,.24);border-left:3px solid #d75d58;border-radius:9px;box-shadow:var(--ui-floating-shadow);pointer-events:auto;transform:translate(var(--toast-swipe-movement-x));transition:opacity .16s ease,transform .18s ease}.ui-toast[data-starting-style],.ui-toast[data-ending-style]{opacity:0;transform:translate(calc(var(--toast-swipe-movement-x) + 20px))}.ui-toast__content{padding:11px 13px}.ui-toast__description{margin:0;font:550 13px/1.45 var(--ui-font-sans)}@media (max-width: 640px){.ui-toast-viewport{right:12px;bottom:12px;width:calc(100vw - 24px)}}@media (prefers-reduced-motion: reduce){.ui-tooltip,.ui-toast{transition-duration:0ms}}: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:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}.app-layout{display:flex;width:100vw;height:100vh}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}
