.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #555;--xy-background-pattern-lines-color-default: #333;--xy-background-pattern-cross-color-default: #333;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial;--tw-content:"";--fx-angle:0deg}}}@layer theme{:root,:host{--color-black:#000;--spacing:.25rem;--container-lg:32rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height: 1.5 ;--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-relaxed:1.625;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base{button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}a{color:var(--text)}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.\!fixed{position:fixed!important}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.top-1\/2{top:50%}.top-3{top:calc(var(--spacing) * 3)}.right-3{right:calc(var(--spacing) * 3)}.left-1\/2{left:50%}.left-2{left:calc(var(--spacing) * 2)}.isolate{isolation:isolate}.z-10{z-index:10}.z-40{z-index:40}.z-50{z-index:50}.z-\[1100\]{z-index:1100}.z-\[1200\]{z-index:1200}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.m-0{margin:0}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.my-1{margin-block:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.\!hidden{display:none!important}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.size-2{width:calc(var(--spacing) * 2);height:calc(var(--spacing) * 2)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-30{height:calc(var(--spacing) * 30)}.h-100{height:calc(var(--spacing) * 100)}.h-full{height:100%}.h-px{height:1px}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.w-2{width:calc(var(--spacing) * 2)}.w-3{width:calc(var(--spacing) * 3)}.w-72{width:calc(var(--spacing) * 72)}.w-full{width:100%}.w-px{width:1px}.max-w-lg{max-width:var(--container-lg)}.min-w-0{min-width:0}.min-w-\[8rem\]{min-width:8rem}.min-w-\[10rem\]{min-width:10rem}.min-w-\[12rem\]{min-width:12rem}.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.-translate-x-1\/2{--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.zoom-2025{zoom:2025%}.cursor-default{cursor:default}.cursor-none{cursor:none}.resize{resize:both}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.items-center{align-items:center}.justify-center{justify-content:center}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-md{border-radius:6px}.rounded-sm{border-radius:4px}.rounded-xl{border-radius:10px}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-solid{--tw-border-style:solid;border-style:solid}.border-border,.border-input{border-color:var(--border)}.border-ring{border-color:var(--text)}.border-transparent{border-color:#0000}.bg-background{background-color:var(--bg)}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--panel)}.bg-muted{background-color:var(--panel-3)}.bg-popover{background-color:var(--panel-2)}.bg-primary{background-color:var(--accent)}.bg-secondary{background-color:var(--panel-3)}.bg-transparent{background-color:#0000}.fill-current{fill:currentColor}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-3{padding:calc(var(--spacing) * 3)}.p-6{padding:calc(var(--spacing) * 6)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pr-2{padding-right:calc(var(--spacing) * 2)}.pl-8{padding-left:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.whitespace-nowrap{white-space:nowrap}.text-card-foreground,.text-foreground{color:var(--text)}.text-muted-foreground{color:var(--text-2)}.text-popover-foreground{color:var(--text)}.text-primary-foreground{color:var(--accent-fg)}.text-secondary-foreground{color:var(--text)}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.\!italic{font-style:italic!important}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.no-underline{text-decoration-line:none}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.placeholder\:text-muted-foreground::placeholder{color:var(--text-2)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:left-1\/2:after{content:var(--tw-content);left:50%}.after\:w-px:after{content:var(--tw-content);width:1px}.after\:-translate-x-1\/2:after{content:var(--tw-content);--tw-translate-x: -50% ;translate:var(--tw-translate-x) var(--tw-translate-y)}.after\:bg-border:after{content:var(--tw-content);background-color:var(--border)}@media(hover:hover){.hover\:bg-muted:hover{background-color:var(--panel-3)}.hover\:text-foreground:hover{color:var(--text)}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.hover\:opacity-100:hover{opacity:1}}.focus\:bg-accent:focus{background-color:var(--panel-3)}.focus\:text-accent-foreground:focus{color:var(--text)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--panel-3)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--text)}.data-\[separator-orientation\=horizontal\]\:h-2[data-separator-orientation=horizontal]{height:calc(var(--spacing) * 2)}.data-\[separator-orientation\=horizontal\]\:w-full[data-separator-orientation=horizontal]{width:100%}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:var(--bg)}.data-\[state\=active\]\:text-foreground[data-state=active]{color:var(--text)}.data-\[state\=open\]\:bg-accent[data-state=open],.data-\[state\=open\]\:bg-muted[data-state=open]{background-color:var(--panel-3)}.data-\[state\=open\]\:text-foreground[data-state=open]{color:var(--text)}@media(min-width:40rem){.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:rounded-lg{border-radius:8px}.sm\:text-left{text-align:left}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--text-2)}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}}:root{--bg:#0c0c0c;--panel:#141414;--panel-2:#1a1a1a;--panel-3:#222;--border:#2a2a2a;--border-2:#333;--text:#f4f4f5;--text-2:#a1a1aa;--text-3:#96969f;--accent:#f4f4f5;--accent-2:#d4d4d8;--accent-fg:#0c0c0c;--control-selected:var(--accent);--control-selected-text:var(--accent-fg);--control-selected-border:transparent;--danger:#e11d48;--ok:#4ade80;--warning:#f4bd62;--info:#82baff;--focus:#a5b4fc;--focus-border:var(--focus)}@supports (color:color-mix(in lab,red,red)){:root{--focus-border:color-mix(in srgb, var(--focus) 45%, var(--border-2))}}:root{--focus-ring:0 0 0 3px var(--focus)}@supports (color:color-mix(in lab,red,red)){:root{--focus-ring:0 0 0 3px color-mix(in srgb, var(--focus) 14%, transparent)}}:root{--radius:6px;--font:"Inter", system-ui, -apple-system, sans-serif;--mono:"JetBrains Mono", ui-monospace, monospace;--tb-h:44px;--rail-w:48px;--rail-w-open:240px;--tool-rail-w:44px;--flyout-w:288px;--picker-w:264px;--insp-w:320px;--strip-h:112px;--agent-w:360px;--panel-gap:12px;--shadow-float:0 1px 2px #0000004d, 0 8px 24px #00000059;--tool-active:#ffffff24;--glass:#141414d1;--glass-border:#ffffff14;--shadow:0 12px 36px #00000073;--shadow-sm:0 8px 24px #0006;--accent-soft:#ffffff14;--accent-soft-text:#f4f4f5;--btn-hover:#262626;--scrollbar:#3f3f46;--overlay:#0000009e;--home-wash:var(--bg);--home-title:var(--text);--code-bg:#111;--minimap-bg:#141414;--minimap-border:#2a2a2a;--minimap-mask:#0c0c0c8c;--minimap-node:#52525b;--handle-ring:#0c0c0c;--checker-a:#333;--checker-b:#1a1a1a;--stage-dots:#2e2e2e;--card-preview-bg:#111;--logo-glow:none;--chip-on-media:#0c0c0cc7;--invert-hover:#ffffff0f;--danger-soft:#e11d481f;--danger-text:#fb7185;color-scheme:dark}html[data-theme=light]{--bg:#f7f7f5;--panel:#fff;--panel-2:#f4f4f2;--panel-3:#ecece8;--border:#e4e4e0;--border-2:#d6d6d1;--text:#171717;--text-2:#525252;--text-3:#63635f;--accent:#535b66;--accent-2:#454d58;--accent-fg:#fafafa;--control-selected:#1717171a;--control-selected-text:#171717;--control-selected-border:transparent;--shadow-float:0 1px 2px #1717170f, 0 8px 24px #1717171a;--tool-active:#1717171a;--danger:#e11d48;--ok:#15803d;--warning:#8a570a;--info:#245ea8;--focus:#4338ca;--focus-border:var(--focus)}@supports (color:color-mix(in lab,red,red)){html[data-theme=light]{--focus-border:color-mix(in srgb, var(--focus) 40%, var(--border-2))}}html[data-theme=light]{--focus-ring:0 0 0 3px var(--focus)}@supports (color:color-mix(in lab,red,red)){html[data-theme=light]{--focus-ring:0 0 0 3px color-mix(in srgb, var(--focus) 12%, transparent)}}html[data-theme=light]{--glass:#ffffffe0;--glass-border:#17171714;--shadow:0 12px 36px #17171714;--shadow-sm:0 8px 22px #17171714;--accent-soft:#1717170f;--accent-soft-text:#171717;--btn-hover:#e8e8e4;--scrollbar:#cfcfc8;--overlay:#17171747;--home-wash:var(--bg);--home-title:var(--text);--code-bg:#f4f4f2;--minimap-bg:#fff;--minimap-border:#e4e4e0;--minimap-mask:#ffffff8c;--minimap-node:#a3a3a3;--handle-ring:#fff;--checker-a:#e4e4e0;--checker-b:#f4f4f2;--stage-dots:#d4d4d0;--card-preview-bg:#f0f0ec;--logo-glow:none;--chip-on-media:#ffffffdb;--invert-hover:#1717170d;--danger-soft:#e11d481a;--danger-text:#be123c;color-scheme:light}@property --fx-angle{syntax:"<angle>";inherits:false;initial-value:0deg}*{box-sizing:border-box}html,body,#root{height:100dvh;margin:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font-size:13px;overflow:hidden}:is(button,a,select,[tabindex]):focus-visible{outline:2px solid var(--focus)}@supports (color:color-mix(in lab,red,red)){:is(button,a,select,[tabindex]):focus-visible{outline:2px solid color-mix(in srgb,var(--focus) 70%,transparent)}}:is(button,a,select,[tabindex]):focus-visible{outline-offset:2px}:is(input,textarea,[contenteditable=true]):focus-visible{outline:none}:is(.input,.rt-field,.num-box,.color-text,.search,.dlg-input,.tb-name-input,.fx-website-empty-input):is(:focus,:focus-within){border-color:var(--focus-border);box-shadow:var(--focus-ring);outline:none}[cmdk-input-wrapper] input{box-shadow:none;border:0;outline:none}[cmdk-input-wrapper]:focus-within{box-shadow:inset 0 -1px 0 var(--focus-border)}input::placeholder,textarea::placeholder{color:var(--text-3);opacity:1}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}code{font-family:var(--mono);background:var(--panel-3);border-radius:4px;padding:1px 5px;font-size:11px}kbd{font-family:var(--mono);background:var(--panel-3);border:1px solid var(--border-2);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-size:11px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--scrollbar);border:2px solid var(--panel);border-radius:6px}::-webkit-scrollbar-track{background:0 0}.spin{animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.editor{flex-direction:column;height:100%;display:flex}.editor-body{flex-direction:row;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.editor-stage{position:absolute;top:0;right:0;bottom:0;left:0}.editor.is-present .editor-body{height:100%}.center-msg{height:100%;color:var(--text-2);flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex}.ctx-menu{z-index:800;background:var(--panel-2);border:1px solid var(--border-2);min-width:248px;max-width:292px;box-shadow:var(--shadow);color:var(--text);border-radius:12px;padding:6px;font-size:12.5px;position:fixed}.ctx-section{padding:4px 0}.ctx-section+.ctx-section{border-top:1px solid var(--border)}.ctx-item{text-align:left;width:100%;color:var(--text);background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:12.5px;display:flex}.ctx-item:hover{background:var(--panel-3)}.ctx-item:disabled{opacity:.4;pointer-events:none}.ctx-item.is-danger{color:var(--danger)}.ctx-item.is-danger:hover{background:#e11d481f}.ctx-icon{width:16px;color:var(--text-2);flex:none;display:flex}.ctx-item.is-danger .ctx-icon{color:var(--danger)}.ctx-label{flex:1;min-width:0}.ctx-kbd{color:var(--text-3);font-variant:small-caps;letter-spacing:.04em;margin-left:auto;font-size:10.5px}.ctx-color{flex-direction:column;gap:6px;padding:6px 8px 8px;display:flex}.ctx-color-name{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:10.5px;font-weight:600}.ctx-swatches{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.ctx-swatch{border:1px solid var(--glass-border);border-radius:50%;flex:none;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.ctx-swatch.is-on{box-shadow:0 0 0 2px var(--panel-2),0 0 0 3.5px var(--text)}.ctx-swatch-custom{align-items:center;display:flex}.ctx-swatch-custom .color{gap:0;width:auto}.ctx-swatch-custom .color-text{display:none}.ctx-swatch-custom .color-swatch{border-radius:50%;width:18px;height:18px}.ctx-path{gap:4px;padding:4px 8px 8px;display:flex}.ctx-path-btn{border:1px solid var(--border-2);background:var(--panel-3);height:28px;color:var(--text-2);border-radius:7px;flex:1;font-size:11px;font-weight:600}.ctx-path-btn:hover{color:var(--text);background:var(--btn-hover)}.ctx-path-btn.is-on{background:var(--control-selected);color:var(--control-selected-text);border-color:var(--control-selected-border)}.btn{color:var(--text-2);white-space:nowrap;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:6px;font-weight:500;transition:background .12s,color .12s,border-color .12s;display:inline-flex}.btn--sm{height:26px;padding:0 8px;font-size:12px}.btn--md{height:30px;padding:0 10px;font-size:12.5px}.btn--lg{height:38px;padding:0 16px;font-size:14px}.btn--icon.btn--sm{width:26px;padding:0}.btn--icon.btn--md{width:30px;padding:0}.btn--block{width:100%}.btn--default{background:var(--panel-3);border-color:var(--border-2);color:var(--text)}.btn--default:hover{background:var(--btn-hover)}.btn--subtle{background:var(--panel-2);border-color:var(--border);color:var(--text)}.btn--ghost:hover{background:var(--panel-3);color:var(--text)}.btn--ghost.is-active{background:var(--control-selected);color:var(--control-selected-text);border-color:var(--control-selected-border)}.btn--primary{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.btn--primary:hover{background:var(--accent-2);border-color:var(--accent-2)}.btn--subtle:hover{background:var(--btn-hover);border-color:var(--border-2)}.btn svg{flex-shrink:0}.btn--danger{background:var(--danger-soft);color:var(--danger-text);border-color:var(--danger)}@supports (color:color-mix(in lab,red,red)){.btn--danger{border-color:color-mix(in srgb,var(--danger) 30%,transparent)}}.btn--danger:hover{background:var(--danger)}@supports (color:color-mix(in lab,red,red)){.btn--danger:hover{background:color-mix(in srgb,var(--danger) 18%,transparent)}}.btn:disabled{opacity:.4;cursor:default;pointer-events:none}.btn-row{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.inline{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.side-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:20px;overflow-y:auto}.side-h{text-align:left;width:100%;font:inherit;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:0;align-items:center;gap:6px;padding:14px 12px 8px;font-size:11px;font-weight:600;transition:color .12s;display:flex}.side-h:hover{color:var(--text)}.side-h svg{opacity:.85;flex:none}.side-group.is-collapsed .side-h{padding-bottom:6px}.side-group.is-collapsed+.side-group .side-h{padding-top:8px}.side-search{margin:10px 12px 6px}.side-search-row{align-items:center;gap:6px;margin:10px 12px 6px;display:flex}.side-search-row .side-search{flex:1;margin:0}.side-add{border:1px solid var(--border);background:var(--panel-2);width:32px;height:32px;color:var(--text-2);border-radius:8px;flex:none;justify-content:center;align-items:center;transition:color .12s,border-color .12s,background .12s;display:inline-flex}.side-add:hover{color:var(--text);border-color:var(--text);background:var(--accent-soft)}.side-add:disabled{opacity:.45;pointer-events:none}.search{background:var(--panel-2);border:1px solid var(--border);height:32px;color:var(--text-3);border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:flex}.search input{color:var(--text);background:0 0;border:0;outline:none;flex:1;min-width:0}.search:focus-within{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.search input:focus-visible{outline:none}.prim-grid{grid-template-columns:repeat(3,1fr);gap:6px;padding:0 12px;display:grid}.prim{background:var(--panel-2);border:1px solid var(--border);cursor:grab;color:var(--text-2);text-align:center;-webkit-user-select:none;user-select:none;border-radius:9px;flex-direction:column;align-items:center;gap:6px;padding:10px 4px 8px;font-size:11px;transition:border-color .12s,transform .12s,color .12s;display:flex}.prim:hover{border-color:var(--text);color:var(--text);transform:translateY(-1px)}.prim:active{cursor:grabbing}.prim-icon{color:var(--text)}.prim--region{padding-top:8px}.prim--tool.is-active{border-color:var(--text);color:var(--text);background:var(--accent-soft);box-shadow:inset 0 0 0 1px var(--text)}@supports (color:color-mix(in lab,red,red)){.prim--tool.is-active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text) 20%,transparent)}}.region-swatch{border-style:dashed;border-width:1.5px;align-items:flex-start;width:46px;height:28px;display:flex;position:relative}.region-swatch-label{border-radius:3px;align-items:center;gap:3px;height:10px;padding:0 4px;line-height:0;display:inline-flex;position:absolute;top:-5px;left:5px}.region-swatch-label i{opacity:.8;background:currentColor;border-radius:2px;width:12px;height:3px;display:block}.lib-grid{grid-template-columns:1fr 1fr;gap:8px;padding:0 12px;display:grid}.lib-item{background:var(--panel-2);border:1px solid var(--border);cursor:grab;border-radius:9px;transition:border-color .12s,transform .12s;overflow:hidden}.lib-item:hover{border-color:var(--text);transform:translateY(-1px)}.lib-name{color:var(--text-2);border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:6px;padding:6px 8px;font-size:11px;display:flex}.lib-name span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.lib-actions{flex:none;align-items:center;gap:2px;display:inline-flex}.lib-act{color:var(--text-3);border-radius:4px;padding:2px;transition:color .12s,background .12s;display:inline-flex}.lib-act:hover{color:var(--text);background:var(--panel-3)}.lib-act--danger:hover{color:var(--danger);background:#ff3b5c1f}.quota{flex-direction:column;gap:4px;min-width:0;display:flex}.quota-track{background:var(--panel-3);border-radius:999px;height:4px;overflow:hidden}.quota-track>span{background:var(--accent);border-radius:inherit;height:100%;display:block}.quota.is-warn .quota-track>span{background:var(--warning)}.quota.is-full .quota-track>span{background:var(--danger)}.quota-label{color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px}.quota.is-warn .quota-label,.quota.is-full .quota-label{color:var(--text-2)}.quota-full{color:var(--danger-text);letter-spacing:.04em;text-transform:uppercase;font-size:10px;font-weight:600}.imglib{position:relative}.imglib-quota{padding:2px 12px 10px}.imglib-grid{grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 8px;display:grid}.imglib-item{background:var(--panel-2);border:1px solid var(--border);cursor:grab;border-radius:9px;margin:0;transition:border-color .12s,transform .12s;overflow:hidden}.imglib-item:hover{border-color:var(--text);transform:translateY(-1px)}.imglib-thumb{aspect-ratio:4/3;background:conic-gradient(var(--checker-a) 25%,var(--checker-b) 0 50%,var(--checker-a) 0 75%,var(--checker-b) 0) 0 0 / 14px 14px;cursor:pointer;border:0;width:100%;padding:0;display:block}.imglib-thumb img{object-fit:contain;pointer-events:none;width:100%;height:100%;display:block}.imglib-cap{border-top:1px solid var(--border);align-items:center;gap:4px;padding:5px 8px;display:flex}.imglib-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-2);flex:1;font-size:11px;overflow:hidden}.imglib.is-over .media-drop{display:flex}.card-preview{background:var(--card-preview-bg);justify-content:center;align-items:center;display:flex;overflow:hidden}.icon-grid{grid-template-columns:repeat(auto-fill,minmax(36px,1fr));gap:4px;padding:4px 12px;display:grid}.icon-cell{height:36px;color:var(--text-2);cursor:pointer;border:1px solid #0000;border-radius:7px;justify-content:center;align-items:center;display:flex}.icon-cell:hover{background:var(--panel-3);color:var(--text);border-color:var(--border-2)}.icons-panel{flex-direction:column;flex:1;min-height:0;display:flex}.icons-panel-chips{padding:0 12px 8px}.icons-panel-opts{justify-content:space-between;align-items:center;gap:10px;padding:0 12px 6px;display:flex}.icons-panel-opts .hint{padding:0}.icons-panel-opts .toggle{flex:none}.icons-panel-opts .toggle-label{white-space:nowrap}.icon-set-chips .chip{cursor:pointer}.icon-grid-scroll{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:12px;overflow-y:auto}.icon-grid-canvas{position:relative}.icon-row{gap:4px;display:grid;position:absolute;left:12px;right:12px}.icon-row .icon-cell{min-width:0;height:100%}.icon-cell.is-loading{cursor:progress}.icon-cell{position:relative}.icon-cell-glyph{justify-content:center;align-items:center;width:100%;height:100%;display:inline-flex}.icon-cell-tag{position:absolute;top:2px;right:2px}.tag-dot{background:var(--accent-soft,#7c9cff2e);width:14px;height:14px;color:var(--accent,#7c9cff);border:1px solid #0000;border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex;position:relative}.tag-dot.is-button{cursor:pointer}.tag-dot.is-button:hover{border-color:var(--accent,#7c9cff)}.logo-cell-tag{z-index:1;position:absolute;top:4px;left:4px}.tag-editor{flex-direction:column;gap:8px;display:flex}.tag-chips{flex-wrap:wrap;gap:6px;min-height:24px;display:flex}.tag-chip{background:var(--accent-soft,#7c9cff2e);color:var(--text);border-radius:999px;align-items:center;gap:4px;padding:3px 6px 3px 9px;font-size:12px;line-height:1;display:inline-flex}.tag-chip button{width:16px;height:16px;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;padding:0;display:inline-flex}.tag-chip button:hover{color:var(--text);background:#00000040}.tag-none{color:var(--text-3);align-self:center;font-size:12px}.tag-add{align-items:center;gap:6px;display:flex}.tag-add .input{flex:1;min-width:0}.tag-suggest{flex-wrap:wrap;gap:5px;display:flex}.tag-suggest .chip{cursor:pointer}.tag-suggest .chip em{color:var(--text-3);margin-left:2px;font-style:normal}.icon-skel{background:var(--panel-3);border-radius:4px;width:45%;height:45%;animation:1.1s ease-in-out infinite icon-skel;display:block}@keyframes icon-skel{0%,to{opacity:.35}50%{opacity:.9}}.layer-row{cursor:pointer;color:var(--text-2);align-items:center;gap:6px;padding:5px 12px;font-size:12px;display:flex}.layer-caret{width:14px;height:14px;color:var(--text-3);border-radius:3px;flex:none;justify-content:center;align-items:center;display:inline-flex}.layer-caret:hover{background:var(--panel-3);color:var(--text)}.layer-row.is-region .layer-name{font-weight:600}.layer-row:hover{background:var(--panel-2);color:var(--text)}.layer-row.is-active{background:var(--accent-soft);color:var(--text)}.layer-icon{color:var(--text-3);width:16px;display:inline-flex}.layer-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.layer-btn{color:var(--text-3);opacity:0;border-radius:4px;padding:3px;display:inline-flex}.layer-row:hover .layer-btn,.layer-row.is-active .layer-btn{opacity:1}.layer-btn:hover{color:var(--text);background:var(--panel-3)}.insp{width:var(--insp-w);background:var(--panel);border-left:1px solid var(--border);flex-direction:column;flex:none;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;container:insp/inline-size}.insp-head{justify-content:space-between;align-items:center;gap:8px;padding:12px 14px 8px;display:flex}.insp-title{text-overflow:ellipsis;white-space:nowrap;max-width:220px;font-size:14px;font-weight:700;overflow:hidden}.insp-sub{color:var(--text-3);margin-top:2px;font-size:11px}.insp-body{overscroll-behavior:contain;flex:1;min-height:0;padding-bottom:40px;overflow-y:auto}.tabs{border-bottom:1px solid var(--border);gap:2px;padding:0 10px;display:flex}.tab{color:var(--text-3);border-bottom:2px solid #0000;align-items:center;gap:5px;margin-bottom:-1px;padding:8px 10px;font-size:12px;font-weight:500;display:inline-flex}.tab:hover{color:var(--text)}.tab.is-active{color:var(--text);border-bottom-color:var(--text)}.sec{border-bottom:1px solid var(--border)}.sec-head{-webkit-user-select:none;user-select:none;color:var(--text-2);align-items:center;gap:6px;padding:0 12px;display:flex}.sec-trigger{text-align:left;flex:1;align-items:center;gap:6px;min-width:0;padding:10px 0;display:flex}.sec-trigger:hover,.sec.is-open .sec-head{color:var(--text)}.sec-title{flex:1;font-size:12px;font-weight:600}.sec-right{align-items:center;gap:6px;display:flex}.sec-body{flex-direction:column;gap:8px;padding:2px 12px 12px;display:flex}.row{grid-template-columns:84px 1fr;align-items:center;gap:8px;min-height:26px;display:grid}.row--stack{grid-template-columns:1fr}.row-label{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.row-ctl{align-items:center;min-width:0;display:flex}.row-ctl>*{flex:1;min-width:0}.row-ctl>.btn,.row-ctl>.inline>.btn{flex:none}.hint{color:var(--text-3);font-size:11.5px;line-height:1.5}.input{background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);border-radius:6px;outline:none;min-width:0;padding:5px 8px;font-size:12.5px}.input:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.input--area{resize:vertical;line-height:1.45}.input--mono{font-family:var(--mono);font-size:11.5px}.select{background:var(--panel-2);border:1px solid var(--border);width:100%;color:var(--text);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 13px) 12px,calc(100% - 8px) 12px;background-repeat:no-repeat;background-size:5px 5px;border-radius:6px;outline:none;padding:5px 8px;font-size:12.5px}.select option{background:var(--panel-2)}.num{align-items:center;gap:8px;width:100%;display:flex}.num--slider .num-box{flex:none;width:64px}.num-range{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--border-2);border-radius:2px;outline:none;flex:1;min-width:0;height:4px}.num-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);border:2px solid var(--panel);cursor:pointer;border-radius:50%;width:12px;height:12px}.num-box{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;align-items:center;width:100%;height:26px;padding:0 6px;display:flex}.num-box:focus-within{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.num-input{font-variant-numeric:tabular-nums;width:100%;color:var(--text);background:0 0;border:0;outline:none;min-width:0;font-size:12px}.num-unit{color:var(--text-3);margin-left:2px;font-size:10px}.color{align-items:center;gap:6px;width:100%;display:flex}.color-swatch{border:1px solid var(--border-2);background-image:linear-gradient(45deg,var(--checker-a) 25%,transparent 25%),linear-gradient(-45deg,var(--checker-a) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,var(--checker-a) 75%),linear-gradient(-45deg,transparent 75%,var(--checker-a) 75%);background-position:0 0,0 4px,4px -4px,-4px 0;background-size:8px 8px;border-radius:6px;flex:none;width:26px;height:26px}.color-swatch.is-inherit{background:repeating-linear-gradient(135deg,var(--checker-a) 0 4px,var(--checker-b) 4px 8px)}.color-text{background:var(--panel-2);border:1px solid var(--border);min-width:0;font-family:var(--mono);color:var(--text);border-radius:6px;outline:none;flex:1;padding:5px 8px;font-size:11.5px}.color-text:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.color-pop{z-index:1000;background:var(--panel-2);border:1px solid var(--border-2);box-shadow:var(--shadow-sm);border-radius:8px;width:232px;padding:10px;position:fixed}.color-pop .react-colorful{width:100%;height:190px}.color-swatches{grid-template-columns:repeat(7,1fr);gap:5px;margin-top:10px;display:grid}.color-mini{border:1px solid var(--glass-border);border-radius:6px;height:22px}.color-mini.is-inherit{background:repeating-linear-gradient(135deg,var(--checker-a) 0 4px,var(--checker-b) 4px 8px)}.toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;display:inline-flex;position:relative}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle:has(input:focus-visible) .toggle-track{outline:2px solid var(--focus);outline-offset:3px}.toggle-track{background:var(--border-2);border-radius:9px;flex:none;width:32px;height:18px;transition:background .15s;position:relative}.toggle-thumb{background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle.is-on .toggle-track{background:var(--accent)}.toggle.is-on .toggle-thumb{background:var(--accent-fg);transform:translate(14px)}.toggle-label{color:var(--text-2);font-size:12px}.seg{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;width:100%;padding:2px;display:inline-flex}.seg-btn{color:var(--text-2);border-radius:5px;flex:1;justify-content:center;align-items:center;gap:4px;padding:4px 6px;font-size:12px;display:inline-flex}.seg--sm .seg-btn{padding:3px 4px;font-size:11.5px}.seg-btn.is-active{background:var(--panel-3);color:var(--text);box-shadow:0 1px 2px #0006}.preset-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.preset{background:var(--panel-2);border:1px solid var(--border);color:var(--text-2);text-align:center;border-radius:8px;flex-direction:column;align-items:center;gap:5px;padding:8px 4px 6px;font-size:10.5px;transition:border-color .12s,background .12s,color .12s,box-shadow .12s;display:flex}.preset:hover{border-color:var(--text);color:var(--text)}.preset.is-active{border-color:var(--text);background:var(--accent-soft);color:var(--text);box-shadow:inset 0 0 0 1px var(--text)}.preset-preview{justify-content:center;align-items:center;height:24px;display:flex}.preset-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.fx-preview{background:var(--panel-3);border-radius:5px;width:34px;height:20px;display:block}.bg-swatch{border:1px solid var(--glass-border);border-radius:5px;width:44px;height:24px;display:block}.preset--row{text-align:left;flex-direction:row;justify-content:flex-start;gap:8px;padding:6px 8px}.preset--row .preset-preview{height:auto}.preset--row .bg-swatch{width:36px;height:18px}.style-preview{border:1px solid var(--glass-border);background:var(--sp-canvas,#1c212b);border-radius:5px;width:44px;height:28px;display:block;position:relative;overflow:hidden}.style-preview-region{border:1px var(--sp-border,dashed) var(--sp-accent,#7c5cff);opacity:.85;border-radius:3px;position:absolute;top:4px;right:3px;bottom:5px;left:3px}.style-preview-box{border-radius:var(--sp-radius,2px);background:var(--sp-surface,#12151c);border:1px solid var(--sp-line,#5b6b8a);width:13px;height:10px;position:absolute;top:9px;left:8px}.style-preview-line{border-top:1.5px solid var(--sp-line,#5b6b8a);width:16px;height:0;position:absolute;top:13px;left:22px}.style-preview-line:after{content:"";border:3.5px solid #0000;border-left-color:var(--sp-line,#5b6b8a);position:absolute;top:-3.5px;right:-1px}.preset--row .style-preview{width:36px;height:20px}.style-tab .bg-picker{border-bottom:0;padding-bottom:4px}.style-tab .sec{border-top:1px solid var(--border)}.bg-picker{border-bottom:1px solid var(--border);flex-direction:column;gap:8px;padding:10px 12px 12px;display:flex}.bg-picker-toolbar{align-items:center;gap:6px;display:flex}.bg-picker-toolbar .search{flex:1;height:28px}.bg-view-toggle{border:1px solid var(--border);background:var(--panel-2);border-radius:7px;flex:none;padding:2px;display:inline-flex}.bg-view-btn{width:22px;height:22px;color:var(--text-3);border-radius:5px;justify-content:center;align-items:center;display:inline-flex}.bg-view-btn:hover{color:var(--text)}.bg-view-btn.is-active{background:var(--panel-3);color:var(--text)}.bg-picker-scroll{flex-direction:column;gap:8px;max-height:268px;padding-right:2px;display:flex;overflow-y:auto}.bg-picker-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);font-size:10px;font-weight:600}.bg-preset-list{flex-direction:column;gap:4px;display:flex}.bg-preset-wrap{position:relative}.bg-preset-list .bg-preset-wrap,.bg-preset-list .preset{width:100%}.bg-preset-del{width:18px;height:18px;color:var(--text-3);opacity:0;background:var(--panel-2);border-radius:4px;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:3px;right:3px}@supports (color:color-mix(in lab,red,red)){.bg-preset-del{background:color-mix(in srgb,var(--panel-2) 80%,transparent)}}.bg-preset-wrap:hover .bg-preset-del,.bg-preset-wrap:focus-within .bg-preset-del{opacity:1}.bg-preset-del:hover{color:var(--danger);background:var(--danger-soft)}.bg-picker-actions,.bg-picker-save{align-items:center;gap:6px;display:flex}.bg-picker-save .input{flex:1;height:26px;padding:3px 8px}.chip-row{flex-wrap:wrap;gap:5px;display:flex}.chip{background:var(--panel-2);border:1px solid var(--border);color:var(--text-2);border-radius:999px;padding:4px 9px;font-size:11.5px}.chip:hover{border-color:var(--text);color:var(--text)}.chip.is-active{border-color:var(--text);color:var(--text);background:var(--accent-soft)}.shape-grid{grid-template-columns:repeat(6,1fr);gap:4px;margin-bottom:4px;display:grid}.shape-pick{border:1px solid var(--border);background:var(--panel-2);height:34px;color:var(--text-2);border-radius:7px;justify-content:center;align-items:center;display:flex}.shape-pick:hover{color:var(--text);border-color:var(--border-2)}.shape-pick.is-active{color:var(--text);border-color:var(--text)}.icon-current{background:var(--panel-2);border:1px solid var(--border);width:30px;height:30px;color:var(--text);border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.code-wrap{border:1px solid var(--border);border-radius:8px;font-size:12px;overflow:hidden}.code-wrap .cm-editor{background:var(--code-bg)}.code-wrap .cm-editor.cm-focused{outline:none}.code-wrap .cm-scroller{font-family:var(--mono);font-size:11.5px;line-height:1.5}.kbd-list{flex-direction:column;gap:6px;display:flex}.kbd-row{color:var(--text-2);align-items:center;gap:10px;font-size:12px;display:flex}.kbd-row kbd{text-align:center;min-width:90px}.steps{flex-direction:column;gap:6px;display:flex}.step{background:var(--panel-2);border:1px solid var(--border);border-radius:9px;padding:8px}.step-head{align-items:center;gap:4px;display:flex}.step-num{background:var(--accent-soft);width:20px;height:20px;color:var(--text);border-radius:6px;flex:none;justify-content:center;align-items:center;font-size:11px;font-weight:700;display:inline-flex}.step-name{text-align:left;color:var(--text);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;flex:1;padding:3px 6px;font-size:12.5px;font-weight:600;overflow:hidden}.step-name:hover{background:var(--panel-3)}.step-meta{color:var(--text-3);flex-wrap:wrap;align-items:center;gap:10px;margin-top:6px;font-size:11px;display:flex}.step-meta .is-on{color:var(--text)}.step-meta .num{width:auto}.modal-bg{background:var(--overlay);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:500;justify-content:center;align-items:center;display:flex;position:fixed;top:0;right:0;bottom:0;left:0}.modal{background:var(--panel);border:1px solid var(--border-2);box-shadow:var(--shadow-sm);border-radius:8px;flex-direction:column;width:min(720px,92vw);max-height:82vh;display:flex}.modal-head{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:12px;display:flex}.modal-head .search{flex:1}.modal-body{flex:1;min-height:0;padding:8px;overflow-y:auto}.modal--icons{height:82vh}.modal--icons .modal-sub{padding:8px 12px 0}.modal-body--icons{flex-direction:column;padding:4px 0 0;display:flex;overflow:hidden}.modal--icons .icon-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}.modal--icons .icon-cell{height:44px}.modal-foot{border-top:1px solid var(--border);padding:10px 14px}.share-modal{width:min(480px,92vw)}.share-title{flex:1;margin:0;font-size:15px;font-weight:650}.share-body{padding:16px 18px 18px}.share-lead{color:var(--text-2);margin:0 0 14px;font-size:13px;line-height:1.5}.share-error{color:var(--danger);margin:0 0 12px;font-size:13px}.share-enable{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:4px 0 14px;display:flex}.share-enable-label{color:var(--text);font-size:13px;font-weight:600}.share-field{flex-direction:column;gap:6px;margin:14px 0 0;display:flex}.share-field-label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:11px;font-weight:600}.share-row{align-items:center;gap:6px;display:flex}.share-row .input{flex:1;min-width:0}.share-stats{color:var(--text-2);font-variant-numeric:tabular-nums;margin-top:14px;font-size:12px}.share-rotate{align-items:center;gap:10px;margin-top:12px;display:flex}.share-brand{top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));z-index:3;background:var(--glass);border:1px solid var(--glass-border);color:var(--text);pointer-events:all;box-shadow:var(--shadow-sm);border-radius:8px;align-items:center;gap:8px;padding:6px 10px 6px 8px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex;position:absolute}.share-brand:hover{background:var(--panel);color:var(--text)}.share-brand .floani-logo{display:block}.export-modal{width:min(520px,92vw)}.export-modal .share-title{align-items:center;gap:8px;display:flex}.export-lock{color:var(--text-2);align-items:flex-start;gap:14px;padding:6px 0 4px;display:flex}.export-lock svg{color:var(--text-3);flex:none;margin-top:2px}.export-lock .hint{margin-top:4px;line-height:1.5}.export-check{flex-direction:column;gap:7px;margin:0;padding:0;font-size:12.5px;list-style:none;display:flex}.export-check li{color:var(--text-2);align-items:flex-start;gap:8px;line-height:1.45;display:flex}.export-check li svg{flex:none;margin-top:2px}.export-check li.is-ok{color:var(--text)}.export-check li.is-ok svg{color:var(--ok,#22c55e)}.export-check li.is-block{color:var(--text)}.export-check li.is-block svg{color:var(--danger)}.export-check li.is-warn svg{color:var(--warn,#f59e0b)}.export-check li.is-mute{color:var(--text-3)}.export-fix{background:var(--panel-2);border:1px solid var(--border);border-radius:8px;align-items:center;gap:10px;margin-top:12px;padding:10px 12px;display:flex}.export-fix .btn{flex:none}.export-actions{border-top:1px solid var(--border);align-items:center;gap:12px;margin-top:16px;padding-top:14px;display:flex}.export-job{border:1px solid var(--border);background:var(--panel-2);border-radius:8px;flex-direction:column;gap:8px;margin-top:14px;padding:10px 12px;display:flex}.export-job-head{align-items:center;gap:8px;font-size:12.5px;display:flex}.export-job-status{color:var(--text);font-weight:600}.export-job.is-ready .export-job-head svg{color:var(--ok,#22c55e)}.export-job.is-failed .export-job-head svg{color:var(--danger)}.export-progress{background:var(--panel-3);border-radius:2px;height:4px;overflow:hidden}.export-progress-bar{background:var(--accent);border-radius:2px;height:100%;transition:width .4s}.export-progress.is-indeterminate .export-progress-bar{width:35%;animation:1.6s ease-in-out infinite export-progress}@keyframes export-progress{0%{transform:translate(-100%)}to{transform:translate(290%)}}@media(prefers-reduced-motion:reduce){.export-progress.is-indeterminate .export-progress-bar{opacity:.5;width:100%;animation:none}}.export-download{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.export-download a.btn{text-decoration:none}.link-btn{color:var(--text);font-size:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;text-decoration:underline;display:inline-flex}.link-btn:disabled{opacity:.5;cursor:default}.export-ready{background:var(--panel-2);border:1px solid var(--border);border-radius:7px;flex-direction:column;gap:6px;margin-top:6px;padding:8px 10px;display:flex}.export-ready .hint{margin:0}.export-ready .btn{align-self:flex-start}.toast{background:var(--panel-2);border:1px solid var(--border-2);width:max-content;max-width:calc(100vw - 24px);color:var(--text);z-index:900;box-shadow:var(--shadow-sm);border-radius:8px;margin-inline:auto;padding:9px 16px;font-size:12.5px;animation:.25s ease-out both fx-in-slide-up;position:fixed;bottom:22px;left:0;right:0}.toast--success{border-color:#22c55e66}.toast--error{border-color:#ff3b5c80}.stage{background:var(--bg);position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.bg-layer{z-index:0;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.bg-fill{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.bg-fx{pointer-events:none;width:100%;height:100%;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.stage-plane{z-index:1;transform-origin:50%;transition:transform .28s cubic-bezier(.2,.7,.2,1);position:absolute;top:0;right:0;bottom:0;left:0}.stage.is-dragging .stage-plane{transition:none}.stage.is-3d .stage-plane,.stage.is-3d .react-flow,.stage.is-3d .react-flow__renderer,.stage.is-3d .react-flow__pane,.stage.is-3d .react-flow__container,.stage.is-3d .react-flow__viewport,.stage.is-3d .react-flow__nodes,.stage.is-3d .react-flow__node{transform-style:preserve-3d}.stage.is-3d .react-flow{overflow:visible!important}.stage.is-3d .flow-wrapper{transform:translateZ(0)}.stage.is-3d .react-flow__pane{cursor:grab}.stage.is-3d.is-dragging .react-flow__pane{cursor:grabbing}.stage-floor{pointer-events:none;background:radial-gradient(ellipse at center,var(--floor-color) 0%,transparent 55%);position:absolute;top:-100%;right:-100%;bottom:-100%;left:-100%;transform:translateZ(-2px)}.stage-floor.has-grid{background-image:radial-gradient(ellipse at center,var(--floor-color) 0%,transparent 55%),linear-gradient(var(--floor-color) 1px,transparent 1px),linear-gradient(90deg,var(--floor-color) 1px,transparent 1px);background-size:100% 100%,90px 90px,90px 90px;-webkit-mask:radial-gradient(#000 18%,#0000 52%);mask:radial-gradient(#000 18%,#0000 52%)}.flow-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.recenter-pill{left:var(--inset-left,0px);right:var(--inset-right,0px);z-index:30;background:var(--panel-2);border:1px solid var(--border-2);width:max-content;color:var(--text);box-shadow:var(--shadow-sm);cursor:pointer;border-radius:999px;align-items:center;gap:7px;margin-inline:auto;padding:8px 14px;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s;animation:.25s ease-out both fx-in-slide-up;display:inline-flex;position:absolute;bottom:22px}.recenter-pill:hover{background:var(--panel-3);border-color:var(--text)}.flow-rf,.react-flow__background{background:0 0!important}.flow-wrapper.tool-pan .react-flow__pane{cursor:grab}.flow-wrapper.tool-pan .react-flow__pane.dragging{cursor:grabbing}.react-flow__attribution{background:0 0;padding:3px 8px;font-size:9px}.react-flow__attribution a{color:var(--text-3);text-decoration:none}.editor.is-present .react-flow__attribution{display:none}.mmap .react-flow__panel.react-flow__minimap{margin:0;position:static}.editor .react-flow__panel.react-flow__attribution{bottom:2px;right:max(4px,calc(var(--inset-right,0px) - 8px));margin:0}.react-flow__minimap-mask{fill:var(--minimap-mask)}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:inherit}.react-flow__edge{cursor:pointer;outline:none}.react-flow__edge-interaction{pointer-events:stroke;cursor:pointer}.react-flow__edgeupdater{fill:none;stroke:none;pointer-events:none}.react-flow__node{outline:none!important}.react-flow__node[data-presentation-hidden],.react-flow__node[data-presentation-hidden] *,.react-flow__edge[data-presentation-hidden],.react-flow__edge[data-presentation-hidden] *{pointer-events:none!important}.react-flow__edge[data-presentation-hidden]{visibility:hidden}.react-flow__node-video{overflow:visible}.react-flow__connection-path{stroke:var(--accent)}.react-flow__selection,.react-flow__nodesselection-rect{background:var(--text)}@supports (color:color-mix(in lab,red,red)){.react-flow__selection,.react-flow__nodesselection-rect{background:color-mix(in srgb,var(--text) 8%,transparent)}}.react-flow__selection,.react-flow__nodesselection-rect{border:1px solid var(--text)}@supports (color:color-mix(in lab,red,red)){.react-flow__selection,.react-flow__nodesselection-rect{border:1px solid color-mix(in srgb,var(--text) 45%,transparent)}}.react-flow__resize-control.fx-resizer-line{border-color:var(--accent);opacity:.8;border-width:1px}.react-flow__resize-control.fx-resizer-handle{background:var(--text);border:2px solid var(--bg);border-radius:3px;width:9px;height:9px}.flow-wrapper.is-dup-mod:not(.tool-pan):not(.is-connecting) .react-flow__node{cursor:copy}.react-flow__edge-textbg{fill:#0000}.fx-edge-label{pointer-events:all;cursor:pointer;white-space:nowrap;border:1px solid #ffffff0f;font-weight:500;line-height:1.2;position:absolute}.anims-paused .fx-motion,.anims-paused .fx-glow,.anims-paused .fx-border,.anims-paused .fx-highlight,.anims-paused .fx-path-main,.anims-paused .fx-path-glow,.anims-paused .fx-path-highlight,.anims-paused .fx-text,.anims-paused .fx-table,.anims-paused .fx-table-row,.anims-paused .fx-table-cell,.is-paused{animation-play-state:paused!important}.fx-node{width:max-content;display:block;position:relative}.fx-node.has-motion-session{will-change:transform}.fx-node.has-motion-session:has(.rv-highlight),.fx-node.has-lift:has(.rv-highlight){will-change:auto}.fx-node.is-locked .fx-content{cursor:default}.fx-entrance,.fx-motion,.fx-shadow,.fx-glow,.fx-content{display:block}.fx-transform{display:block;position:relative}.fx-glow{filter:var(--glow-a,none)}.fx-glow.ga-pulse{animation:fx-glow-pulse var(--fx-speed,2s) var(--fx-easing,ease-in-out) infinite}.fx-glow.ga-breathe{animation:fx-glow-breathe var(--fx-speed,2s) var(--fx-easing,ease-in-out) infinite}.fx-glow.ga-hue{animation:fx-glow-hue var(--fx-speed,4s) var(--fx-easing,linear) infinite}.fx-glow.ga-flicker{animation:fx-glow-flicker var(--fx-speed,2s) var(--fx-easing,linear) infinite}@keyframes fx-glow-pulse{0%,to{filter:var(--glow-a)}50%{filter:var(--glow-b)}}@keyframes fx-glow-breathe{0%,to{filter:var(--glow-lo)}50%{filter:var(--glow-b)}}@keyframes fx-glow-hue{0%{filter:var(--glow-h0)}25%{filter:var(--glow-h1)}50%{filter:var(--glow-h2)}75%{filter:var(--glow-h3)}to{filter:var(--glow-h0)}}@keyframes fx-glow-flicker{0%,to{filter:var(--glow-a)}6%{filter:var(--glow-lo)}8%{filter:var(--glow-b)}10%{filter:var(--glow-a)}43%{filter:var(--glow-a)}45%{filter:var(--glow-lo)}47%{filter:var(--glow-a)}70%{filter:var(--glow-b)}72%{filter:none}74%{filter:var(--glow-a)}}.fx-selection{border:1.5px solid var(--accent);pointer-events:none;box-shadow:0 0 0 3px var(--accent-soft);z-index:4;border-radius:7px;position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px}.fx-node .fx-handle{border:2px solid var(--handle-ring);opacity:0;z-index:6;border-radius:50%;width:10px;min-width:6px;height:10px;min-height:6px;transition:opacity .15s,transform .15s}.fx-node .fx-handle:before{content:"";border-radius:50%;position:absolute;top:-8px;right:-8px;bottom:-8px;left:-8px}.fx-node.hv-always .fx-handle,.fx-node:hover .fx-handle,.fx-node.is-selected .fx-handle{opacity:1}.fx-node .fx-handle.react-flow__handle-top:hover,.fx-node .fx-handle.react-flow__handle-left:hover{transform:translate(-50%,-50%)scale(1.25)}.fx-node .fx-handle.react-flow__handle-right:hover{transform:translate(50%,-50%)scale(1.25)}.fx-node .fx-handle.react-flow__handle-bottom:hover{transform:translate(-50%,50%)scale(1.25)}.fx-node.hv-never .fx-handle{opacity:0!important;pointer-events:none!important}.react-flow__handle.fx-handle.connectingfrom,.flow-wrapper.is-connecting .fx-node:not(.hv-never) .fx-handle{opacity:1}.fx-border,.fx-border-reveal{pointer-events:none;z-index:3;position:absolute;top:0;right:0;bottom:0;left:0}.fx-border-reveal>.fx-border{inset:var(--fx-border-inset,0px)}.fx-border.b-gradient,.fx-border.b-running{-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0,#000 0),linear-gradient(#000 0,#000 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.fx-border.b-running.is-animated{animation:fx-spin-angle var(--fx-speed,3s) var(--fx-easing,linear) infinite}.fx-border.b-neon.is-animated,.fx-border.b-solid.is-animated,.fx-border.b-dashed.is-animated,.fx-border.b-dotted.is-animated,.fx-border.b-gradient.is-animated{animation:fx-border-pulse var(--fx-speed,3s) var(--fx-easing,ease-in-out) infinite}@keyframes fx-spin-angle{to{--fx-angle:360deg}}@keyframes fx-border-pulse{50%{opacity:.45}}.fx-highlight{pointer-events:none;z-index:3;position:absolute}.fx-highlight.h-ring{filter:drop-shadow(0 0 var(--fx-hb1,3px) var(--fx-hc)) drop-shadow(0 0 var(--fx-hb2,9px) var(--fx-hc));top:0;right:0;bottom:0;left:0}@supports (color:color-mix(in lab,red,red)){.fx-highlight.h-ring{filter:drop-shadow(0 0 var(--fx-hb1,3px) var(--fx-hc)) drop-shadow(0 0 var(--fx-hb2,9px) color-mix(in srgb,var(--fx-hc) 55%,transparent))}}.fx-highlight.h-ring>*{display:block}.fx-highlight.h-ring.r-masked{inset:calc(var(--fx-hpad) * -1);padding:calc(var(--fx-hpad) + var(--fx-hbw));-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0,#000 0),linear-gradient(#000 0,#000 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.fx-highlight.h-ring.r-masked:before{content:"";inset:var(--fx-hpad);border:var(--fx-hbw) var(--fx-hbs,solid) var(--fx-hc);border-radius:var(--fx-hr,0);position:absolute}.fx-highlight.h-outline{outline:3px solid var(--fx-hc);border-radius:inherit;top:-3px;right:-3px;bottom:-3px;left:-3px}.fx-highlight.h-tint{background:var(--fx-hc);opacity:.28;mix-blend-mode:screen;border-radius:inherit;top:0;right:0;bottom:0;left:0}html[data-theme=light] .fx-highlight.h-tint{mix-blend-mode:multiply;opacity:.16}.fx-highlight.is-animated{animation:fx-ring-pulse var(--fx-hspeed,1.6s) var(--fx-heasing,ease-in-out) infinite}.fx-overlay{z-index:5;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}@keyframes fx-ring-pulse{0%,to{opacity:1}50%{opacity:.4}}.fx-motion.m-float{animation:fx-float var(--fx-mspeed,4s) var(--fx-measing,ease-in-out) infinite}.fx-motion.m-bob{animation:fx-bob var(--fx-mspeed,4s) var(--fx-measing,ease-in-out) infinite}.fx-motion.m-sway{animation:fx-sway var(--fx-mspeed,4s) var(--fx-measing,ease-in-out) infinite}.fx-motion.m-spin{animation:fx-spin var(--fx-mspeed,4s) var(--fx-measing,linear) infinite}.fx-motion.m-pulse-scale{animation:fx-pulse-scale var(--fx-mspeed,4s) var(--fx-measing,ease-in-out) infinite}.fx-motion.m-wobble{animation:fx-wobble var(--fx-mspeed,4s) var(--fx-measing,ease-in-out) infinite}@keyframes fx-float{0%,to{transform:translateY(0)}50%{transform:translateY(calc(var(--fx-amp) * -1))}}@keyframes fx-bob{0%,to{transform:translateY(0)rotate(0)}25%{transform:translateY(calc(var(--fx-amp) * -.5)) rotate(1.2deg)}75%{transform:translateY(calc(var(--fx-amp) * .5)) rotate(-1.2deg)}}@keyframes fx-sway{0%,to{transform:translate(calc(var(--fx-amp) * -1))}50%{transform:translate(var(--fx-amp))}}@keyframes fx-spin{to{transform:rotate(360deg)}}@keyframes fx-pulse-scale{0%,to{transform:scale(1)}50%{transform:scale(var(--fx-amp-scale))}}@keyframes fx-wobble{0%,to{transform:rotate(calc(var(--fx-amp-deg) * -.25))}50%{transform:rotate(calc(var(--fx-amp-deg) * .25))}}.fx-entrance.e-fade{animation:fx-in-fade var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-scale{animation:fx-in-scale var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.9,.3,1.3))}.fx-entrance.e-slide-up{animation:fx-in-slide-up var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-slide-down{animation:fx-in-slide-down var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-slide-left{animation:fx-in-slide-left var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-slide-right{animation:fx-in-slide-right var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-flip{animation:fx-in-flip var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,cubic-bezier(.2,.7,.2,1))}.fx-entrance.e-blur{animation:fx-in-blur var(--fx-edur,.8s) var(--fx-edelay,0s) both var(--fx-eeasing,ease-out)}@keyframes fx-in-fade{0%{opacity:0}to{opacity:1}}@keyframes fx-in-scale{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes fx-in-slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes fx-in-slide-down{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes fx-in-slide-left{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes fx-in-slide-right{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes fx-in-flip{0%{opacity:0;transform:perspective(700px)rotateY(80deg)}to{opacity:1;transform:perspective(700px)rotateY(0)}}.fx-entrance.e-fade .fx-chart-plot,.fx-entrance.e-scale .fx-chart-plot,.fx-entrance.e-slide-up .fx-chart-plot,.fx-entrance.e-slide-down .fx-chart-plot,.fx-entrance.e-slide-left .fx-chart-plot,.fx-entrance.e-slide-right .fx-chart-plot,.fx-entrance.e-flip .fx-chart-plot,.fx-entrance.e-blur .fx-chart-plot,.fx-entrance.rv-fade .fx-chart-plot,.fx-entrance.rv-scale .fx-chart-plot,.fx-entrance.rv-slide-up .fx-chart-plot,.fx-entrance.rv-slide-down .fx-chart-plot,.fx-entrance.rv-slide-left .fx-chart-plot,.fx-entrance.rv-slide-right .fx-chart-plot,.fx-entrance.rv-flip .fx-chart-plot,.fx-entrance.rv-blur .fx-chart-plot{animation:fx-chart-plot-in var(--fx-edur,var(--rv-dur,.8s)) var(--fx-edelay,var(--rv-delay,0s)) both var(--rv-ease,var(--fx-eeasing,cubic-bezier(.16, .84, .32, 1)))}@keyframes fx-chart-plot-in{0%{opacity:.25;filter:blur(8px);transform:translateY(10px)scale(.97)}to{opacity:1;filter:none;transform:none}}@keyframes fx-in-blur{0%{opacity:0;filter:blur(14px)}to{opacity:1;filter:blur()}}.fx-card-host{display:block}.fx-text{cursor:default;outline:none;min-width:20px;min-height:1em}.fx-text.is-editing{outline:1px dashed var(--accent);outline-offset:2px;cursor:text;-webkit-user-select:text;user-select:text}.fx-rich{outline:none;min-width:1em}.fx-rich.is-editing{cursor:text;-webkit-user-select:text;user-select:text}.fx-rich b,.fx-rich strong{font-weight:700}.fx-rich i,.fx-rich em{font-style:italic}.fx-rich u{text-decoration:underline}.fx-rich s,.fx-rich strike{text-decoration:line-through}.fx-rich p{margin:0}.fx-rich ul,.fx-rich ol{white-space:normal;margin:.12em 0;padding-inline-start:1.2em}.fx-rich li{margin:0}.fx-rich code{font-family:var(--mono,ui-monospace, SFMono-Regular, Menlo, monospace);background:currentColor;border-radius:4px;padding:.05em .32em;font-size:.88em}@supports (color:color-mix(in lab,red,red)){.fx-rich code{background:color-mix(in srgb,currentColor 12%,transparent)}}.fx-rich blockquote{border-left:3px solid;margin:.2em 0;padding:.12em .7em}@supports (color:color-mix(in lab,red,red)){.fx-rich blockquote{border-left:3px solid color-mix(in srgb,currentColor 45%,transparent)}}.fx-rich blockquote{opacity:.95}.fx-rich a{color:var(--accent,#3b82f6);text-underline-offset:2px;pointer-events:none;text-decoration:underline}.fx-rich.is-editing a,.rt-field a{pointer-events:auto}.fx-rich sub,.fx-rich sup{font-size:.72em;line-height:0}.fx-rich.is-editing.is-empty:before,.rt-field.is-empty:before{content:attr(data-placeholder);color:inherit;opacity:.4;pointer-events:none}.rt-controls{flex-direction:column;gap:8px;width:100%;display:flex}.rt-controls-label{color:var(--text-3);font-size:11px}.rt-bar{flex-wrap:wrap;align-items:center;gap:4px 2px;display:flex}.rt-bar--compact{max-width:508px}.rt-bar-group{align-items:center;gap:1px;display:inline-flex}.rt-bar-group:not(.rt-bar-group--last):after{content:"";background:var(--border-2);align-self:center;width:1px;height:16px;margin:0 4px}.rt-bar-wrap{align-items:center;display:inline-flex}.rt-bar-div{background:var(--border-2);width:1px;height:16px;margin:0 4px}.rt-btn{width:28px;height:28px;color:var(--text-2);background:0 0;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;display:inline-flex;position:relative}.rt-btn:hover{background:var(--panel-3);color:var(--text)}.rt-btn.is-on{background:var(--control-selected);color:var(--control-selected-text);border-color:var(--control-selected-border)}.rt-color-btn .rt-letter{font-size:13px;font-weight:700;line-height:1}.rt-color-mark{background:currentColor;border-radius:2px;height:3px;position:absolute;bottom:4px;left:6px;right:6px}.rt-palette{z-index:1200;background:var(--panel-2);border:1px solid var(--border-2);box-shadow:var(--shadow);border-radius:10px;grid-template-columns:repeat(6,18px);gap:6px;padding:8px;display:grid;position:fixed}.rt-swatch{border:1px solid var(--text);border-radius:4px;width:18px;height:18px}@supports (color:color-mix(in lab,red,red)){.rt-swatch{border:1px solid color-mix(in srgb,var(--text) 18%,transparent)}}.rt-swatch{cursor:pointer;padding:0}.rt-swatch.is-on{outline:2px solid var(--accent,#3b82f6);outline-offset:1px}.rt-swatch--none{color:var(--text-3);background:0 0;font-size:11px;line-height:16px}.rt-bubble{z-index:1100;background:var(--panel-2);border:1px solid var(--border-2);max-width:calc(100vw - 16px);box-shadow:var(--shadow-sm);border-radius:9px;align-items:center;padding:3px;animation:.12s ease-out both fx-in-fade;display:flex;position:fixed}.rt-bubble .rt-bar--compact{flex-wrap:nowrap;gap:1px;max-width:none}.rt-bubble .rt-btn{width:26px;height:26px}.rt-bubble .rt-btn.has-chev{gap:1px;width:auto;padding:0 3px 0 5px}.rt-bubble .rt-bar-div{margin:0 3px}.rt-chev{opacity:.6;flex:none}.rt-item{display:inline-flex;position:relative}.rt-btn.is-open{background:var(--panel-3);color:var(--text)}.rt-menu{z-index:3;background:var(--panel-2);border:1px solid var(--border-2);min-width:176px;box-shadow:var(--shadow);white-space:nowrap;border-radius:10px;padding:6px;position:absolute;top:calc(100% + 6px);left:0}.rt-menu--wide{min-width:0}.rt-menu.is-right{left:auto;right:0}.rt-menu.is-up{top:auto;bottom:calc(100% + 6px)}.rt-menu-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:4px;font-size:10.5px;font-weight:600}.rt-menu-swatches{grid-template-columns:repeat(6,18px);gap:6px;padding:2px 4px 6px;display:grid}.rt-menu-item{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:8px;padding:6px 8px;font-size:12.5px;display:flex}.rt-menu-item:hover{background:var(--panel-3)}.rt-menu-item.is-on{background:var(--accent-soft);color:var(--accent-soft-text)}.rt-menu-icon{width:16px;color:var(--text-2);flex:none;display:flex}.rt-menu-item.is-on .rt-menu-icon{color:inherit}.rt-menu-label{flex:1;min-width:0}.rt-menu-kbd{color:var(--text-3);letter-spacing:.04em;margin-left:16px;font-size:10.5px}.rt-menu-div{background:var(--border);height:1px;margin:4px 2px}.rt-field{white-space:pre-wrap;min-height:64px;overflow:auto}.rt-field--line{white-space:nowrap;height:auto;min-height:30px;padding:5px 8px;overflow:hidden}.fx-shape{display:block;position:relative}.fx-shape-svg{display:block;overflow:visible}.fx-shape-label{text-align:center;pointer-events:none;justify-content:center;align-items:center;gap:8px;padding:8px 12px;line-height:1.2;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.fx-shape-label.is-editing{pointer-events:auto}.fx-shape-label .fx-rich{white-space:pre-wrap;width:100%;max-width:100%}.fx-shape-label.pos-top{flex-direction:column;gap:4px}.fx-shape.sh-callout .fx-shape-label{padding-bottom:calc(8px + 22%)}.fx-shape.sh-thought .fx-shape-label{padding-bottom:calc(8px + 24%)}.fx-shape.sh-sticky .fx-shape-label{padding:14px 16px 22px}.fx-shape-icon{line-height:0;display:inline-flex}.fx-icon-node{flex-direction:column;align-items:center;gap:6px;display:flex}.fx-icon-box{line-height:0;display:inline-flex}.fx-icon-label{white-space:nowrap;font-weight:500}.fx-image-node{flex-direction:column;align-items:center;gap:6px;display:flex}.fx-image-node.is-caption-top{flex-direction:column-reverse}.fx-image-caption{text-align:center;overflow-wrap:anywhere;max-width:100%;line-height:1.25}.fx-image-caption .fx-rich{max-width:100%;display:inline-block}.fx-icon-node.is-label-top{flex-direction:column-reverse}.fx-image{background:0 0;display:block;position:relative;overflow:hidden}.fx-video{position:relative}.fx-image.is-uploading img,.fx-video.is-uploading video,.fx-doc.is-uploading .fx-doc-head,.fx-doc.is-uploading .fx-doc-body{opacity:.55}.fx-upload-veil{pointer-events:none;border-radius:inherit;position:absolute;top:0;right:0;bottom:0;left:0}.fx-upload-badge{border:1px solid var(--border-2);background:#0c0e14c7;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;display:flex;position:absolute;bottom:6px;right:6px;box-shadow:0 2px 8px #00000059}.fx-upload-spinner{border:2px solid #ffffff40;border-top-color:var(--accent,#7c9cff);border-radius:999px;width:11px;height:11px;animation:.8s linear infinite fx-upload-spin}@keyframes fx-upload-spin{to{transform:rotate(360deg)}}.flow-wrapper.is-file-drag:after{content:"Drop to add to the canvas";z-index:40;pointer-events:none;border:2px dashed var(--accent,#7c9cff);background:var(--accent,#7c9cff);border-radius:14px;position:absolute;top:12px;right:12px;bottom:12px;left:12px}@supports (color:color-mix(in lab,red,red)){.flow-wrapper.is-file-drag:after{background:color-mix(in srgb,var(--accent,#7c9cff) 8%,transparent)}}.flow-wrapper.is-file-drag:after{color:var(--text);letter-spacing:.01em;justify-content:center;align-items:flex-end;padding-bottom:28px;font-size:13px;font-weight:600;display:flex}.fx-doc{box-sizing:border-box;background:var(--panel-2);border:1px solid var(--border);color:var(--text);flex-direction:column;display:flex;position:relative;overflow:hidden}.fx-doc-head{flex:none;align-items:center;gap:8px;min-width:0;padding:10px 10px 8px 12px;display:flex}.fx-doc-icon{color:#fff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.fx-doc-icon.is-pdf{background:#d64545}.fx-doc-icon.is-word{background:#2b6fd6}.fx-doc-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:600;overflow:hidden}.fx-doc-open{width:24px;height:24px;color:var(--text-2);border-radius:6px;flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.fx-doc-open:hover{background:var(--btn-hover);color:var(--text)}.fx-doc-body{flex:1;justify-content:space-between;align-items:center;gap:8px;min-height:0;padding:0 12px 12px;display:flex}.fx-doc-meta{color:var(--text-3);font-size:11.5px}.fx-doc-btn{border:1px solid var(--border-2);background:var(--panel-3);color:var(--text-2);font:inherit;cursor:pointer;border-radius:6px;padding:4px 9px;font-size:11.5px}.fx-doc-btn:hover{color:var(--text);border-color:var(--text-3)}.fx-doc-frame{border-top:1px solid var(--border);background:#fff;flex:1;min-height:0;position:relative}.fx-doc-frame iframe{background:#fff;border:0;width:100%;height:100%;display:block}.fx-doc-frame.is-inert:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0}.fx-image img{width:100%;height:100%;display:block}.fx-image-empty{height:100%;color:var(--text-3);background:conic-gradient(var(--checker-a) 25%,var(--checker-b) 0 50%,var(--checker-a) 0 75%,var(--checker-b) 0) 0 0 / 12px 12px;justify-content:center;align-items:center;font-size:12px;display:flex}.fx-table{min-width:160px;color:var(--tbl-fg,#e6e8ef);background:var(--tbl-bg,#12151c);border-radius:var(--tbl-radius,14px);border:1px solid var(--tbl-accent,#7c5cff);flex-direction:column;display:flex;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.fx-table{border:1px solid color-mix(in srgb,var(--tbl-accent,#7c5cff) 28%,transparent)}}.fx-table{box-sizing:border-box;font-size:var(--tbl-fs,13px);line-height:1.25}.fx-table table{border-collapse:collapse;table-layout:fixed;flex:1;width:100%;height:100%}.fx-table-caption{letter-spacing:.08em;text-transform:uppercase;color:var(--tbl-accent,#7c5cff);opacity:.9;padding:8px 14px 4px;font-size:11px;font-weight:700}.fx-table-cell,.fx-table th,.fx-table td{padding:var(--tbl-py,9px) var(--tbl-px,14px);vertical-align:middle;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;position:relative;overflow:hidden}.fx-table-cell.align-left{text-align:left}.fx-table-cell.align-center{text-align:center}.fx-table-cell.align-right{text-align:right}.fx-table-row.is-header .fx-table-cell{background:var(--tbl-hbg);color:var(--tbl-hfg);font-size:var(--tbl-hs,11px);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.fx-table-cell.is-stub{color:var(--tbl-fg);font-weight:600}@supports (color:color-mix(in lab,red,red)){.fx-table-cell.is-stub{color:color-mix(in srgb,var(--tbl-fg) 80%,var(--tbl-accent))}}.fx-table.is-zebra .fx-table-row:not(.is-header):nth-child(2n) .fx-table-cell{background:var(--tbl-zebra)}.fx-table.grid-horizontal .fx-table-row:not(:last-child) .fx-table-cell{border-bottom:1px solid var(--tbl-grid)}.fx-table.grid-full .fx-table-cell{border:1px solid var(--tbl-grid)}.fx-table-row.is-hl .fx-table-cell{box-shadow:inset 3px 0 0 var(--tbl-accent);background:var(--tbl-accent)}@supports (color:color-mix(in lab,red,red)){.fx-table-row.is-hl .fx-table-cell{background:color-mix(in srgb,var(--tbl-accent) 12%,transparent)}}.fx-table-cell.is-hl-col{background:var(--tbl-accent)}@supports (color:color-mix(in lab,red,red)){.fx-table-cell.is-hl-col{background:color-mix(in srgb,var(--tbl-accent) 10%,transparent)}}.fx-table-cell.is-neg .fx-table-val{color:#fb7185}.fx-table-cell.has-bar{isolation:isolate}.fx-table-bar{width:calc(var(--tbl-bar,0) * 100%);background:var(--tbl-accent);max-width:100%;position:absolute;inset:18% auto 18% 0}@supports (color:color-mix(in lab,red,red)){.fx-table-bar{background:color-mix(in srgb,var(--tbl-accent) 22%,transparent)}}.fx-table-bar{pointer-events:none;z-index:0;border-radius:0 999px 999px 0}.fx-table-val{z-index:1;position:relative}.fx-table-tools{border-bottom:1px solid var(--tbl-grid,#ffffff14);align-items:center;gap:8px;padding:4px 10px 6px;display:flex}@supports (color:color-mix(in lab,red,red)){.fx-table-tools{border-bottom:1px solid color-mix(in srgb,var(--tbl-grid,#ffffff14) 90%,transparent)}}.fx-table-filter{background:var(--tbl-fg);border:0;flex:1;min-width:0}@supports (color:color-mix(in lab,red,red)){.fx-table-filter{background:color-mix(in srgb,var(--tbl-fg) 8%,transparent)}}.fx-table-filter{color:inherit;font:inherit;border-radius:6px;outline:none;padding:4px 8px;font-size:11px}.fx-table-filter::placeholder{color:var(--tbl-fg)}@supports (color:color-mix(in lab,red,red)){.fx-table-filter::placeholder{color:color-mix(in srgb,var(--tbl-fg) 40%,transparent)}}.fx-table-filter.is-static{opacity:.7;background:0 0;padding-left:0}.fx-table-meta{opacity:.5;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:10px}.fx-table-cell.has-dot .fx-table-dot{vertical-align:-.05em;background:var(--tbl-accent);width:.7em;height:.7em;opacity:calc(.28 + var(--tbl-dot,0) * .72);transform:scale(calc(.42 + var(--tbl-dot,0) * .58));transform-origin:50%;box-shadow:0 0 8px var(--tbl-accent);border-radius:50%;margin-right:.4em;display:inline-block}@supports (color:color-mix(in lab,red,red)){.fx-table-cell.has-dot .fx-table-dot{box-shadow:0 0 8px color-mix(in srgb,var(--tbl-accent) 35%,transparent)}}.fx-table-cell.has-meter{padding-bottom:calc(var(--tbl-py,9px) + 5px)}.fx-table-meter{background:var(--tbl-fg);border-radius:99px;height:3px;position:absolute;bottom:4px;left:8px;right:8px}@supports (color:color-mix(in lab,red,red)){.fx-table-meter{background:color-mix(in srgb,var(--tbl-fg) 14%,transparent)}}.fx-table-meter{pointer-events:none;z-index:0}.fx-table-meter-knob{background:var(--tbl-accent);width:7px;height:7px;top:50%;left:calc(var(--tbl-meter,0) * 100%);box-shadow:0 0 6px var(--tbl-accent);border-radius:50%;position:absolute;transform:translate(-50%,-50%)}@supports (color:color-mix(in lab,red,red)){.fx-table-meter-knob{box-shadow:0 0 6px color-mix(in srgb,var(--tbl-accent) 50%,transparent)}}.fx-table-cell.is-sort{cursor:pointer}.fx-table-sort{opacity:.35;cursor:pointer;margin-left:.35em;font-size:.85em;font-weight:700;display:inline-block}.fx-table-cell.is-sorted .fx-table-sort{opacity:1;color:var(--tbl-accent)}.fx-table-cell.is-editing{outline:1px dashed var(--tbl-accent);outline-offset:-2px;background:var(--tbl-bg)}@supports (color:color-mix(in lab,red,red)){.fx-table-cell.is-editing{background:color-mix(in srgb,var(--tbl-bg) 70%,#000)}}.fx-table-cell.is-editing{white-space:pre-wrap;overflow:visible}.fx-table-cell .fx-rich{display:inline}.fx-table-cell.is-editing .fx-rich{min-width:2em;display:block}.fx-table.look-glass{-webkit-backdrop-filter:blur(10px)}.fx-table.look-neon{box-shadow:inset 0 0 0 1px var(--tbl-accent),0 0 24px var(--tbl-accent)}@supports (color:color-mix(in lab,red,red)){.fx-table.look-neon{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--tbl-accent) 35%,transparent),0 0 24px color-mix(in srgb,var(--tbl-accent) 18%,transparent)}}.fx-table.look-contrast .fx-table-row.is-header .fx-table-cell{letter-spacing:.04em}.fx-table.is-filling.fill-rows .fx-table-row{animation:tbl-fill-in var(--tbl-dur,.5s) var(--tbl-ease,cubic-bezier(.2,.7,.2,1)) both;animation-delay:calc(var(--tbl-i,0) * var(--tbl-stagger,80ms))}.fx-table.is-filling.fill-columns .fx-table-cell{animation:tbl-fill-col var(--tbl-dur,.5s) var(--tbl-ease,cubic-bezier(.2,.7,.2,1)) both;animation-delay:calc(var(--tbl-c,0) * var(--tbl-stagger,80ms))}.fx-table.is-filling.fill-cells .fx-table-cell{animation:tbl-fill-in var(--tbl-dur,.5s) var(--tbl-ease,cubic-bezier(.2,.7,.2,1)) both;animation-delay:calc(var(--tbl-k,0) * var(--tbl-stagger,80ms))}.fx-table.is-filling.is-looping.fill-rows .fx-table-row,.fx-table.is-filling.is-looping.fill-columns .fx-table-cell,.fx-table.is-filling.is-looping.fill-cells .fx-table-cell{animation-name:tbl-fill-loop;animation-iteration-count:infinite;animation-duration:calc(var(--tbl-dur,.5s) + 1.6s)}@keyframes tbl-fill-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes tbl-fill-col{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}@keyframes tbl-fill-loop{0%{opacity:0;transform:translateY(8px)}18%{opacity:1;transform:none}78%{opacity:1;transform:none}to{opacity:0;transform:translateY(6px)}}.insp-table-format{flex-direction:column;gap:6px;margin-top:8px;display:flex}.insp-table-grid{border-collapse:collapse;table-layout:fixed;width:100%;font-size:11px}.insp-table-grid th,.insp-table-grid td{border:1px solid var(--border);padding:0}.insp-table-grid input,.insp-table-grid .rt-field--cell{width:100%;min-width:0;min-height:28px;max-height:72px;color:var(--text);font:inherit;white-space:pre-wrap;background:0 0;border:0;border-radius:0;outline:none;padding:5px 6px;overflow:auto}.insp-table-grid thead th{background:var(--panel-3);color:var(--text-3);text-align:center;padding:3px 0;font-size:10px}.insp-table-grid tbody th{background:var(--panel-3);color:var(--text-3);text-align:center;width:22px;font-size:10px}.insp-table-grid input:focus,.insp-table-grid .rt-field--cell:focus{background:var(--panel-2)}.insp-table-tools{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.fx-line{display:block;position:relative}.fx-line-svg{display:block}.stage.is-3d .fx-node--shared-ink,.stage.is-3d .fx-node--shared-ink :where(.fx-entrance,.fx-motion,.fx-transform,.fx-shadow,.fx-glow,.fx-content,.fx-path-ink){transform-style:preserve-3d}.react-flow__node.react-flow__node-line,.react-flow__node.react-flow__node-path{pointer-events:none!important}.react-flow__node-line .fx-line-hit,.react-flow__node-path .fx-line-hit{pointer-events:stroke;cursor:move}.react-flow__node-path .fx-line-hit[fill=transparent]{pointer-events:visiblePainted}.react-flow__node-line .fx-handle,.react-flow__node-path .fx-handle{pointer-events:all}.react-flow__node-line .fx-node.hv-never .fx-handle,.react-flow__node-path .fx-node.hv-never .fx-handle{pointer-events:none!important}.react-flow__node-path .react-flow__resize-control{pointer-events:all}.fx-line-end{background:var(--text);border:2px solid var(--accent);width:14px;height:14px;box-shadow:0 0 0 3px var(--accent-soft),0 2px 6px var(--shadow-sm);cursor:crosshair;pointer-events:all;z-index:7;border-radius:50%;margin:-7px 0 0 -7px;transition:transform .12s;position:absolute}.fx-line-end:hover{transform:scale(1.25)}.fx-line-mid{background:var(--accent);border-color:var(--text);cursor:move;border-radius:3px;width:12px;height:12px;margin:-6px 0 0 -6px}.fx-bezier-guide{stroke:var(--accent);stroke-width:1.5px;stroke-dasharray:5 4;opacity:.9;pointer-events:none}.fx-bezier-edit{pointer-events:none}.react-flow__viewport-portal{z-index:1100;pointer-events:none}.fx-bezier-dot{width:36px;height:36px;box-shadow:none;cursor:grab;pointer-events:all;touch-action:none;z-index:8;background:0 0;border:0;border-radius:50%;position:absolute}.fx-bezier-dot:after{content:"";background:var(--panel);border:2px solid var(--accent);width:16px;height:16px;box-shadow:0 0 0 3px var(--accent-soft),0 2px 6px var(--shadow-sm);pointer-events:none;border-radius:50%;margin:-8px 0 0 -8px;position:absolute;top:50%;left:50%}.fx-bezier-dot:hover:after{box-shadow:0 0 0 4px var(--accent-soft),0 2px 8px var(--shadow-sm)}.fx-bezier-dot:active{cursor:grabbing}.fx-edge-end{cursor:grab;pointer-events:all;touch-action:none;z-index:8;border-radius:50%;width:28px;height:28px;position:absolute}.fx-edge-end:after{content:"";background:var(--text);border:2px solid var(--accent);width:10px;height:10px;box-shadow:0 0 0 3px var(--accent-soft),0 2px 6px var(--shadow-sm);pointer-events:none;border-radius:50%;margin:-5px 0 0 -5px;position:absolute;top:50%;left:50%}.fx-edge-end:hover:after{transform:scale(1.2)}.fx-edge-end:active{cursor:grabbing}.fx-reconnect-ghost{pointer-events:none;z-index:7;position:absolute;overflow:visible}.fx-node--line .fx-selection,.fx-node--path .fx-selection{border-radius:10px;top:-2px;right:-2px;bottom:-2px;left:-2px}.fx-line-label{pointer-events:all;cursor:move;white-space:nowrap;z-index:2;border:1px solid #ffffff0f;font-weight:500;line-height:1.2;position:absolute;transform:translate(-50%,-50%)}.flow-wrapper.tool-pen .react-flow__pane{cursor:crosshair}.fx-video{background:var(--panel-3);display:block;position:relative;overflow:hidden}.fx-video video{background:#000;width:100%;height:100%;display:block}.fx-video-empty{height:100%;color:var(--text-3);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:12px;display:flex}.fx-node-toolbar{z-index:8;pointer-events:none;position:absolute;top:100%;left:50%;transform:translate(-50%)}.fx-video-bar{pointer-events:all;transform:scale(var(--fx-video-bar-scale,1));transform-origin:top;background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(16px)saturate(1.1);box-shadow:var(--shadow-sm);color:var(--text);white-space:nowrap;border-radius:10px;align-items:center;gap:2px;margin-top:10px;padding:5px 7px;display:flex}.fx-video-bar-btn{width:26px;height:26px;color:var(--text-2);border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.fx-video-bar-btn:hover{background:var(--panel-3);color:var(--text)}.fx-video-bar-btn.is-primary{background:var(--accent);color:var(--accent-fg)}.fx-video-bar-btn.is-primary:hover{background:var(--accent-2);color:var(--accent-fg)}.fx-video-bar-btn.is-pressed{background:var(--control-selected);color:var(--control-selected-text)}.fx-video-bar-seek{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--text);width:108px;height:6px;margin:0 6px}@supports (color:color-mix(in lab,red,red)){.fx-video-bar-seek{background:color-mix(in srgb,var(--text) 22%,var(--border-2))}}.fx-video-bar-seek{cursor:pointer;border-radius:99px;outline:none;flex:none}.fx-video-bar-seek::-webkit-slider-thumb{-webkit-appearance:none;background:var(--text);border:2px solid var(--panel);cursor:pointer;border-radius:50%;width:12px;height:12px}.fx-video-bar-seek::-moz-range-thumb{background:var(--text);border:2px solid var(--panel);cursor:pointer;border-radius:50%;width:12px;height:12px}.fx-video-bar-seek:disabled{opacity:.4;cursor:default}.fx-video-bar-time{font-variant-numeric:tabular-nums;color:var(--text-2);min-width:7.5em;padding:0 4px 0 2px;font-size:11px}.fx-video-live{cursor:pointer}.fx-video-bigplay{background:var(--glass);border:1px solid var(--glass-border);width:56px;height:56px;color:var(--text);box-shadow:var(--shadow-sm);z-index:2;opacity:0;pointer-events:none;border-radius:50%;justify-content:center;align-items:center;margin:auto;transition:opacity .18s;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.fx-video.is-paused .fx-video-bigplay{opacity:1;pointer-events:all}.fx-video-bigplay:hover{background:var(--panel);color:var(--text)}.fx-video-mini{z-index:1;pointer-events:none;background:#ffffff1f;height:3px;transition:opacity .18s;position:absolute;bottom:0;left:0;right:0}.fx-video-mini>span{background:var(--accent);height:100%;display:block}.fx-video:hover .fx-video-mini,.fx-video.is-paused .fx-video-mini,.fx-video.is-scrubbing .fx-video-mini{opacity:0}.fx-video-chrome{z-index:2;background:var(--glass);border:1px solid var(--glass-border);-webkit-backdrop-filter:blur(12px);box-shadow:var(--shadow-sm);color:var(--text);opacity:0;pointer-events:none;border-radius:8px;align-items:center;gap:4px;padding:5px 6px;transition:opacity .18s,transform .18s;display:flex;position:absolute;bottom:8px;left:8px;right:8px;transform:translateY(4px)}.fx-video:hover .fx-video-chrome,.fx-video.is-paused .fx-video-chrome,.fx-video.is-scrubbing .fx-video-chrome{opacity:1;pointer-events:all;transform:none}.fx-video-chrome button{width:28px;height:28px;color:var(--text-2);border-radius:7px;flex:none;justify-content:center;align-items:center;display:inline-flex}.fx-video-chrome button:hover{background:var(--btn-hover);color:var(--text)}.fx-video-time{font-variant-numeric:tabular-nums;color:var(--text-2);white-space:nowrap;min-width:4.5em;padding:0 4px;font-size:11px}.fx-video-seek{cursor:pointer;min-width:0;height:16px;accent-color:var(--accent);flex:auto;margin:0 4px}.fx-website{background:var(--panel-2);border:1px solid var(--border);box-sizing:border-box;flex-direction:column;display:flex;position:relative;overflow:hidden}.fx-website-chrome{background:var(--panel);border-bottom:1px solid var(--border);height:32px;color:var(--text-2);flex:0 0 32px;align-items:center;gap:2px;min-width:0;padding:0 4px 0 6px;display:flex}.fx-website-btn{width:24px;height:24px;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.fx-website-btn:hover{background:var(--btn-hover);color:var(--text)}.fx-website-btn:disabled{opacity:.35;cursor:default;pointer-events:none}.fx-website-url-form{background:var(--panel-3);border-radius:6px;flex:1;align-items:center;gap:6px;min-width:0;height:22px;margin:0 4px;padding:0 8px;display:flex}.fx-website-globe{opacity:.55;flex:none}.fx-website-url{min-width:0;height:100%;color:var(--text);font:inherit;background:0 0;border:0;outline:none;flex:1;padding:0;font-size:11px}.fx-website-url::placeholder{color:var(--text-3)}.fx-website-frame{background:#fff;flex:1;min-height:0;position:relative}.fx-website-frame iframe{background:#fff;border:0;width:100%;height:100%;display:block}.fx-website-empty{height:100%;color:var(--text-3);text-align:center;background:var(--panel-3);cursor:default;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:12px;display:flex}.fx-website-empty-input{border:1px solid var(--border);background:var(--panel);width:min(100%,280px);height:28px;color:var(--text);font:inherit;border-radius:8px;outline:none;padding:0 10px;font-size:12px}.fx-website-empty-input:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.fx-website-empty-hint{opacity:.75;max-width:280px;font-size:10.5px;line-height:1.35}.fx-chart{box-sizing:border-box;border:1px solid;flex-direction:column;display:flex;position:relative;overflow:hidden}.fx-chart-plot{flex:1;width:100%;min-height:0;position:relative;overflow:hidden}.fx-chart-plot canvas{display:block;width:100%!important;height:100%!important}.fx-chart-empty{color:var(--text-3);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;padding:16px;font-size:12px;display:flex}.chart-series{border-bottom:1px solid var(--border);padding:4px 0 8px}.chart-series:last-of-type{border-bottom:none;padding-bottom:0}.chart-bar-anims{flex-direction:column;gap:6px;margin-top:6px;display:flex}.chart-bar-anim,.chart-bar-anim-legend{grid-template-columns:minmax(52px,1fr) 72px 72px;align-items:center;gap:6px;display:grid}.chart-bar-anim-label{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.chart-bar-anim-legend{color:var(--text-3);letter-spacing:.02em;margin-top:2px;font-size:10px}.react-flow__node.react-flow__node-region{cursor:default}.react-flow__node-region.dragging{cursor:grabbing}.fx-node--region .fx-content{display:block}.fx-region{box-sizing:border-box;transition:box-shadow .2s;display:block;position:relative}.fx-region-pattern{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.fx-region-chrome{pointer-events:none;position:absolute}.fx-region-label{pointer-events:auto;white-space:nowrap;z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid #0000;border-radius:999px;align-items:center;gap:8px;max-width:calc(100% - 24px);padding:5px 12px 5px 8px;line-height:1.15;display:inline-flex;position:absolute}.fx-region-label.ls-pill{box-shadow:0 4px 14px #00000059}.fx-region-label.ls-pill.v-top{top:0;transform:translateY(-50%)}.fx-region-label.ls-pill.v-bottom{bottom:0;transform:translateY(50%)}.fx-region-label.ls-pill.h-left{left:18px}.fx-region-label.ls-pill.h-right{right:18px}.fx-region-label.ls-pill.h-center{left:50%;transform:translate(-50%,-50%)}.fx-region-label.ls-pill.h-center.v-bottom{transform:translate(-50%,50%)}.fx-region-label.ls-inside{-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:10px}.fx-region-label.ls-inside.v-top{top:12px}.fx-region-label.ls-inside.v-bottom{bottom:12px}.fx-region-label.ls-inside.h-left{left:12px}.fx-region-label.ls-inside.h-right{right:12px}.fx-region-label.ls-inside.h-center{left:50%;transform:translate(-50%)}.fx-region-label.ls-bar{-webkit-backdrop-filter:none;backdrop-filter:none;border-width:0;border-radius:0;max-width:none;padding:9px 16px;left:0;right:0}.fx-region-label.ls-bar.v-top{border-bottom-width:1px;top:0}.fx-region-label.ls-bar.v-bottom{border-top-width:1px;bottom:0}.fx-region-label.ls-bar.h-center{justify-content:center}.fx-region-label.ls-bar.h-right{justify-content:flex-end}.fx-region-icon{border-radius:7px;flex:none;justify-content:center;align-items:center;padding:4px;line-height:0;display:inline-flex}.fx-region-icon.badge-none{padding:0}.fx-region-icon img{display:block}.fx-region-texts{flex-direction:column;gap:2px;min-width:0;display:inline-flex}.fx-region-title{text-overflow:ellipsis;overflow:hidden}.fx-region-sub{letter-spacing:0;text-transform:none;text-overflow:ellipsis;font-size:.8em;font-weight:500;overflow:hidden}.fx-node--region.is-selected .fx-region{box-shadow:0 0 0 1px var(--text)}@supports (color:color-mix(in lab,red,red)){.fx-node--region.is-selected .fx-region{box-shadow:0 0 0 1px color-mix(in srgb,var(--text) 28%,transparent)}}.fx-node--region .fx-selection{border-radius:12px;top:-3px;right:-3px;bottom:-3px;left:-3px}.region-preset-swatch{border-style:dashed;border-width:1.5px;border-radius:5px;width:40px;height:22px;display:block;position:relative}.region-preset-swatch:after{content:"";background:var(--rp-accent);opacity:.85;border-radius:3px;width:14px;height:7px;position:absolute;top:-4px;left:5px}.region-icon-preview{background:var(--panel-2);border:1px solid var(--border);border-radius:7px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;display:inline-flex;overflow:hidden}.region-icon-preview img{object-fit:contain;width:20px;height:20px}@keyframes fx-dash{to{stroke-dashoffset:calc(var(--dash-cycle) * -1px)}}@keyframes fx-draw{to{stroke-dashoffset:0}}.fx-path-glow.ga-pulse{animation:fx-edge-pulse var(--fx-speed,2s) var(--fx-easing,ease-in-out) infinite}.fx-path-glow.ga-breathe{animation:fx-edge-breathe var(--fx-speed,2s) var(--fx-easing,ease-in-out) infinite}.fx-path-glow.ga-flicker{animation:fx-edge-flicker var(--fx-speed,2s) var(--fx-easing,linear) infinite}@keyframes fx-edge-pulse{0%,to{stroke-opacity:.25}50%{stroke-opacity:1}}@keyframes fx-edge-breathe{0%,to{filter:blur(var(--fx-blur));stroke-opacity:.6}50%{filter:blur(calc(var(--fx-blur) * 2.2));stroke-opacity:1}}@keyframes fx-edge-flicker{0%,to{stroke-opacity:1}7%{stroke-opacity:.2}9%{stroke-opacity:1}40%{stroke-opacity:1}42%{stroke-opacity:.3}44%{stroke-opacity:1}78%{stroke-opacity:.5}80%{stroke-opacity:1}}.fx-path-highlight{animation:1.6s ease-in-out infinite fx-edge-pulse}.present-ui{pointer-events:none;z-index:100;position:absolute;top:0;right:0;bottom:0;left:0}.present-ui.cursor-none{cursor:none}.present-bar{background:var(--panel);border:1px solid var(--border-2);pointer-events:all;box-shadow:var(--shadow);border-radius:8px;align-items:center;gap:2px;padding:6px;transition:opacity .3s,transform .3s;display:flex;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.present-bar.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%)translateY(14px)}.present-bar button{width:34px;height:34px;color:var(--text-2);border-radius:9px;justify-content:center;align-items:center;display:inline-flex}.present-bar button:hover{background:var(--btn-hover);color:var(--text)}.present-bar button.is-on{background:var(--accent-soft);color:var(--text)}.present-bar button:disabled{opacity:.35;pointer-events:none}.present-step{color:var(--text-2);white-space:nowrap;padding:0 10px;font-size:12px}.present-step b{color:var(--text)}.present-sep{background:var(--border-2);width:1px;height:20px;margin:0 4px}.present-hint{color:var(--text-2);background:var(--panel);white-space:nowrap;border-radius:6px;padding:6px 10px;font-size:11px;transition:opacity .3s;position:absolute;bottom:76px;left:50%;transform:translate(-50%)}.present-hint.is-hidden{opacity:0}.laser{pointer-events:none;z-index:200;border-radius:50%;width:14px;height:14px;position:fixed;transform:translate(-50%,-50%)}.spotlight{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.editor.is-present .stage{cursor:default}.editor.hide-handles .fx-handle{opacity:0!important;pointer-events:none!important}.editor.is-present .fx-node.is-selected .fx-selection,.editor.is-present .fx-node-toolbar{display:none}.editor.is-export,.editor.is-export *{cursor:none!important}.editor.is-export .react-flow__panel,.editor.is-export .react-flow__attribution,.editor.is-export .react-flow__minimap,.editor.is-export .fx-video-chrome,.editor.is-export .fx-video-mini,.editor.is-export .fx-video-bigplay,.editor.is-export .toast{display:none!important}.editor.is-export .stage{pointer-events:none}.home{background:var(--home-wash);height:100%;padding:0 clamp(20px,5vw,72px) 32px;overflow-y:auto}.home-shell{max-width:1280px;margin:0 auto}.home-nav{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:24px;min-height:92px;padding:20px 0;display:flex}.home-account{align-items:center;gap:14px;min-width:0;display:flex}.home-account .home-user{text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.home-account .appearance-toggle{flex-shrink:0}.home-hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:40px 0 32px;display:flex}.home-logo a,.floani-lockup{color:inherit;line-height:0;text-decoration:none;display:inline-flex}.floani-logo{color:var(--text);display:block}.home h1{letter-spacing:-.03em;color:var(--text);margin:0 0 10px;font-size:32px;font-weight:650;line-height:1.15}.home p{color:var(--text-2);max-width:560px;margin:0;font-size:14px;line-height:1.6}.home-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.home-actions .btn--lg{height:40px;font-size:13px}.home-error{background:var(--danger-soft);border:1px solid var(--danger);align-items:center;gap:10px;display:flex}@supports (color:color-mix(in lab,red,red)){.home-error{border:1px solid color-mix(in srgb,var(--danger) 35%,transparent)}}.home-error{color:var(--danger-text);border-radius:8px;margin-bottom:20px;padding:12px 14px}.home-error>svg{flex-shrink:0}.home-error>span{overflow-wrap:anywhere;flex:1;min-width:0}.home-library-bar{justify-content:space-between;align-items:center;gap:20px;padding:0 0 20px;display:flex}.home-library-bar h2{align-items:center;gap:8px;margin:0;font-size:14px;font-weight:600;display:flex}.home-count{background:var(--panel-3);min-width:24px;color:var(--text-2);font-variant-numeric:tabular-nums;border-radius:5px;justify-content:center;align-items:center;padding:2px 6px;font-size:11px;display:inline-flex}.home-search{background:var(--panel);width:280px;height:38px}.home-search input::-webkit-search-cancel-button{display:none}.home-empty{color:var(--text-3);text-align:center;border:1px dashed var(--border-2);border-radius:12px;flex-direction:column;align-items:center;gap:14px;padding:64px 20px;display:flex}.home-empty h3{color:var(--text);margin:2px 0 0;font-size:18px;font-weight:600}.home-empty .btn{margin-top:6px}.home-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:20px;display:grid}.flow-card{background:var(--panel);border:1px solid var(--border);border-radius:12px;min-width:0;transition:border-color .15s;position:relative;overflow:hidden}.flow-card:hover,.flow-card:focus-within{border-color:var(--text-3)}.flow-card-link{color:var(--text);text-decoration:none;display:block}.flow-card-link:focus-visible{outline-offset:-3px;border-radius:11px}.flow-card-bg{background:var(--panel-2);height:136px;color:var(--text-3);border-bottom:1px solid var(--border);justify-content:center;align-items:center;display:flex;position:relative}.flow-card-bg>.floani-logo{color:var(--text-3)}.flow-card-open{opacity:0;transition:opacity .15s;position:absolute;top:14px;right:14px}.flow-card-link:hover .flow-card-open,.flow-card-link:focus-visible .flow-card-open{opacity:1}.flow-card-body{padding:18px 18px 14px}.flow-card-name{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;font-weight:600;line-height:1.5;overflow:hidden}.flow-card-meta{color:var(--text-3);align-items:center;gap:7px;margin-top:5px;font-size:12px;display:flex}.flow-card-shared{background:var(--accent-soft);color:var(--text-2);letter-spacing:.02em;border-radius:999px;align-items:center;padding:1px 6px;font-size:10.5px;font-weight:600;display:inline-flex}.flow-card-footer{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 10px 18px;display:flex}.flow-card-time{color:var(--text-3);align-items:center;gap:5px;font-size:11px;display:inline-flex}.flow-card-actions{gap:2px;display:flex}.flow-card-actions .btn{width:30px;height:30px}.flow-delete:hover{background:var(--danger-soft);color:var(--danger-text)}.home-footer{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:14px;margin-top:40px;padding-top:20px;display:flex}.home-footer .home-ver{margin:0 auto 0 0}.flow-skeleton{border:1px solid var(--border);border-radius:12px;height:257px;overflow:hidden}.flow-skeleton>div{background:var(--panel-2);height:136px}.flow-skeleton>span{background:var(--panel-3);border-radius:4px;width:55%;height:12px;margin:20px 18px 0;display:block}.flow-skeleton>span:last-child{width:35%;margin-top:12px}.bg-video{pointer-events:none;object-position:center;background:0 0;width:100%;height:100%;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.bg-motion{pointer-events:none;contain:strict;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.bg-motion>*{position:absolute;top:0;right:0;bottom:0;left:0}.bg-motion.is-paused,.bg-motion.is-paused *{animation-play-state:paused!important}.bgm-gradient{background:linear-gradient(115deg,var(--m1),var(--m2),var(--m1),var(--m2));background-size:max(220%,calc(300% * var(--ms))) max(220%,calc(300% * var(--ms)));animation:bgm-shift var(--dur) ease-in-out infinite}@keyframes bgm-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.bgm-blob{width:calc(48vmax * var(--ms));height:calc(48vmax * var(--ms));margin:calc(-24vmax * var(--ms)) 0 0 calc(-24vmax * var(--ms));filter:blur(calc(60px * var(--ms)));opacity:.85;will-change:transform;animation:bgm-blob var(--dur) ease-in-out infinite alternate;border-radius:50%;position:absolute}@keyframes bgm-blob{0%{transform:translate(0)scale(1)}33%{transform:translate(18vw,-12vh)scale(1.15)}66%{transform:translate(-14vw,16vh)scale(.9)}to{transform:translate(8vw,6vh)scale(1.05)}}.bgm-orb{filter:blur(2px);will-change:transform,opacity;animation:bgm-rise var(--dur) linear infinite;border-radius:50%;position:absolute;bottom:0}@keyframes bgm-rise{0%{opacity:0;transform:translateY(40vh)scale(.6)}12%{opacity:1}88%{opacity:1}to{opacity:0;transform:translate(6vw,-140vh)scale(1.1)}}.bgm-wave{background-repeat:repeat-x;background-size:calc(1600px * var(--ms)) 100%;filter:blur(1.2px);animation:bgm-wave var(--dur) linear infinite;background-position:0 100%;position:absolute;bottom:0;left:0;right:0}@keyframes bgm-wave{0%{background-position:0 100%}to{background-position:calc(1600px * var(--ms)) 100%}}.bgm-beams{transform:rotate(-22deg)scale(1.7)}.bgm-beam{height:200%;filter:blur(calc(18px * var(--ms)));will-change:transform;animation:bgm-beam var(--dur) linear infinite;position:absolute;top:-50%;left:0}@keyframes bgm-beam{0%{transform:translate(-30vw)}to{transform:translate(130vw)}}.bgm-ring,.bgm-sweep{width:calc(120vmax * var(--ms));height:calc(120vmax * var(--ms));margin:calc(-60vmax * var(--ms)) 0 0 calc(-60vmax * var(--ms));border-radius:50%;position:absolute;top:50%;left:50%}.bgm-ring{border:2px solid var(--m1);box-shadow:0 0 24px var(--m1),inset 0 0 24px var(--m1);will-change:transform,opacity;animation:bgm-ring var(--dur) linear infinite}@keyframes bgm-ring{0%{opacity:.95;transform:scale(0)}to{opacity:0;transform:scale(1)}}.bgm-sweep{background:conic-gradient(from 0deg,transparent 0 76%,var(--m2) 100%);opacity:.45;animation:bgm-spin calc(var(--dur) * 1.5) linear infinite;-webkit-mask:radial-gradient(circle,#000 0 28%,#0000 52%);mask:radial-gradient(circle,#000 0 28%,#0000 52%)}@keyframes bgm-spin{to{transform:rotate(360deg)}}.bgm-hex{-webkit-mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='34.64' height='60' viewBox='0 0 34.64 60'><path d='M17.32 0L34.64 10L34.64 30L17.32 40L0 30L0 10ZM0 30L17.32 40L17.32 60M34.64 30L17.32 40' fill='none' stroke='%23fff' stroke-width='1.5'/></svg>");mask-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='34.64' height='60' viewBox='0 0 34.64 60'><path d='M17.32 0L34.64 10L34.64 30L17.32 40L0 30L0 10ZM0 30L17.32 40L17.32 60M34.64 30L17.32 40' fill='none' stroke='%23fff' stroke-width='1.5'/></svg>");-webkit-mask-size:calc(34.64px * var(--ms)) calc(60px * var(--ms));mask-size:calc(34.64px * var(--ms)) calc(60px * var(--ms));-webkit-mask-repeat:repeat;mask-repeat:repeat}.bgm-hex-base{background:var(--m1);opacity:.22;position:absolute;top:0;right:0;bottom:0;left:0}.bgm-hex-glow{background:radial-gradient(circle at 50% 50%,var(--m2) 0%,transparent 22%),radial-gradient(circle at 28% 70%,var(--m1) 0%,transparent 18%),radial-gradient(circle at 74% 30%,var(--m1) 0%,transparent 16%);will-change:transform;animation:bgm-glow var(--dur) ease-in-out infinite alternate;position:absolute;top:-40%;right:-40%;bottom:-40%;left:-40%}@keyframes bgm-glow{0%{transform:translate(-12%,-8%)}50%{transform:translate(10%,6%)}to{transform:translate(-6%,12%)}}.bgm-scan-lines{background:repeating-linear-gradient(180deg,var(--m1) 0 1px,transparent 1px calc(4px * var(--ms)));opacity:.35;position:absolute;top:0;right:0;bottom:0;left:0}.bgm-scan-bar{background:linear-gradient(180deg,transparent,var(--m2),transparent);opacity:.4;filter:blur(2px);will-change:transform;height:22%;animation:bgm-scan var(--dur) linear infinite;position:absolute;left:0;right:0}@keyframes bgm-scan{0%{transform:translateY(-120%)}to{transform:translateY(560%)}}.bgm-drift{background-image:repeating-linear-gradient(135deg,var(--m1) 0 2px,transparent 2px calc(28px * var(--ms)));background-size:calc(39.6px * var(--ms)) calc(39.6px * var(--ms));opacity:.5;animation:bgm-drift var(--dur) linear infinite}@keyframes bgm-drift{to{background-position:calc(39.6px * var(--ms)) calc(39.6px * var(--ms))}}.bgm-custom>svg{width:100%;height:100%;display:block}.media{border-radius:8px;flex-direction:column;gap:6px;width:100%;display:flex;position:relative}.media-row{align-items:center;gap:6px;display:flex}.media-row .input{flex:1;min-width:0}.media-progress{background:var(--panel-2);border:1px solid var(--border);border-radius:6px;height:18px;position:relative;overflow:hidden}.media-progress>span{background:var(--text);transition:width .15s;position:absolute;inset:0 auto 0 0}.media-progress>em{color:var(--text);text-shadow:0 1px 2px #0009;justify-content:center;align-items:center;font-size:10.5px;font-style:normal;display:flex;position:absolute;top:0;right:0;bottom:0;left:0}.media-meta{color:var(--text-2);align-items:center;gap:6px;min-width:0;font-size:11px;display:flex}.media-meta-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text);flex:1;overflow:hidden}.media-meta-info{color:var(--text-3);font-variant-numeric:tabular-nums;flex:none}.media-recent{flex-wrap:wrap;gap:4px;display:flex}.media-chip{background:var(--panel-2);border:1px solid var(--border);border-radius:999px;align-items:center;max-width:100%;display:inline-flex;overflow:hidden}.media-chip>button:first-child{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;max-width:150px;padding:3px 8px;font-size:11px;overflow:hidden}.media-chip:hover{border-color:var(--text)}.media-chip:hover>button:first-child{color:var(--text)}.media-chip.is-active{border-color:var(--text);background:var(--accent-soft)}.media-chip.is-active>button:first-child{color:var(--text)}.media-chip-x{color:var(--text-3);opacity:0;align-items:center;padding:3px 6px 3px 2px;transition:opacity .12s;display:inline-flex}.media-chip:hover .media-chip-x{opacity:1}.media-chip-x:hover{color:var(--danger-text)}.media-drop{border:1.5px dashed var(--accent);background:var(--accent-soft);color:var(--accent-soft-text);pointer-events:none;z-index:2;border-radius:10px;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:none;position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px}.media.is-over .media-drop{display:flex}.react-flow__nodesselection{display:none}.sel-overlay{pointer-events:none;z-index:7;position:absolute;top:0;right:0;bottom:0;left:0}.sel-box{border:1px solid var(--accent);box-sizing:border-box;box-shadow:0 0 0 1px var(--bg);border-radius:3px;position:absolute}@supports (color:color-mix(in lab,red,red)){.sel-box{box-shadow:0 0 0 1px color-mix(in srgb,var(--bg) 70%,transparent)}}.sel-box{pointer-events:none}.sel-overlay.is-resizing .sel-box{border-style:dashed}.sel-grip{background:var(--text);border:2px solid var(--bg);box-sizing:border-box;pointer-events:all;touch-action:none;border-radius:3px;width:9px;height:9px;margin:-4.5px 0 0 -4.5px;position:absolute;box-shadow:0 1px 3px #00000059}.sel-grip:hover{transform:scale(1.25)}.sel-bar{z-index:8;background:var(--panel-2);border:1px solid var(--border-2);box-shadow:var(--shadow-sm);color:var(--text);white-space:nowrap;-webkit-user-select:none;user-select:none;border-radius:10px;align-items:center;gap:2px;padding:4px;font-size:12px;display:inline-flex;position:absolute}.sel-item{display:inline-flex;position:relative}.sel-div{background:var(--border-2);flex:none;width:1px;height:18px;margin:0 3px}.sel-btn{min-width:28px;height:28px;color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:2px;padding:0 5px;font-weight:600;transition:background .12s,color .12s;display:inline-flex}.sel-btn:hover{background:var(--panel-3);color:var(--text)}.sel-btn.is-on{background:var(--control-selected);color:var(--control-selected-text)}.sel-btn.has-chev{padding-right:3px}.sel-btn--text{font-variant-numeric:tabular-nums;padding:0 6px}.sel-chev{opacity:.6;flex:none}.sel-num{text-align:center;min-width:18px;font-size:12px}.sel-word{font-size:11.5px}.sel-word--sym{font-size:14px;line-height:1}.sel-dot{border:1px solid var(--border-2);border-radius:50%;width:14px;height:14px;box-shadow:inset 0 0 0 1px #0000001f}.sel-dot.is-none,.sel-swatch--none,.sel-ring.is-none{background:linear-gradient(135deg,transparent calc(50% - 1px),var(--danger) calc(50% - 1px),var(--danger) calc(50% + 1px),transparent calc(50% + 1px)),#fff}.sel-ring{border:3px solid var(--text-2);box-sizing:border-box;border-radius:50%;width:14px;height:14px}.sel-ring.is-none{border:1px solid var(--border-2)}.sel-input{box-sizing:border-box;border:1px solid var(--border-2);background:var(--panel-3);width:100%;height:28px;color:var(--text);font:inherit;border-radius:7px;outline:none;margin-top:6px;padding:0 8px;font-size:12.5px;display:block}.sel-input:focus{border-color:var(--accent)}.sel-input::placeholder{color:var(--text-3)}.sel-a{flex-direction:column;align-items:center;padding-bottom:4px;font-size:14px;font-weight:700;line-height:1;display:inline-flex;position:relative}.sel-a i{border-radius:2px;height:3px;position:absolute;bottom:0;left:-2px;right:-2px}.sel-pop{z-index:3;background:var(--panel-2);border:1px solid var(--border-2);min-width:160px;box-shadow:var(--shadow);border-radius:10px;padding:6px;position:absolute;top:calc(100% + 6px);left:0}.sel-pop--wide{min-width:208px}.sel-pop-title{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:2px 4px 6px;font-size:10.5px;font-weight:600}.sel-row{gap:2px;display:flex}.sel-swatches{grid-template-columns:repeat(7,22px);align-items:center;gap:5px;padding:2px;display:grid}.sel-swatch{border:1px solid var(--glass-border);cursor:pointer;border-radius:50%;width:20px;height:20px;padding:0;box-shadow:inset 0 0 0 1px #0000001f}.sel-swatch.is-on{box-shadow:0 0 0 2px var(--panel-2),0 0 0 3.5px var(--text)}.sel-swatch-custom{align-items:center;display:flex}.sel-swatch-custom .color{gap:0;width:auto}.sel-swatch-custom .color-text{display:none}.sel-swatch-custom .color-swatch{border-radius:50%;width:20px;height:20px}.sel-stepper{justify-content:space-between;align-items:center;gap:6px;padding:2px 2px 6px;display:flex}.sel-step{border:1px solid var(--border-2);background:var(--panel-3);width:26px;height:26px;color:var(--text);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.sel-step:hover{background:var(--btn-hover)}.sel-sizes{grid-template-columns:repeat(4,1fr);gap:3px;max-height:190px;display:grid;overflow:auto}.sel-size{height:26px;color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:12px}.sel-size:hover{background:var(--panel-3);color:var(--text)}.sel-size.is-on{background:var(--control-selected);color:var(--control-selected-text)}.sel-menu-item{text-align:left;width:100%;color:var(--text);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;padding:7px 8px;font-size:12.5px;display:flex}.sel-menu-item:hover{background:var(--panel-3)}.sel-menu-item.is-on{background:var(--accent-soft);color:var(--accent-soft-text)}.sel-menu-icon{width:16px;color:var(--text-2);flex:none;display:flex}.sel-menu-label{flex:1;min-width:0}.sel-menu-kbd{color:var(--text-3);letter-spacing:.04em;margin-left:auto;font-size:10.5px}.editor.is-present .sel-overlay,.editor.is-present .sel-bar{display:none}.fx-guides{pointer-events:none;z-index:1002;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.fx-guide line{stroke:var(--text);stroke-width:1px;shape-rendering:crispedges}.fx-guide.is-center .fx-guide-line{stroke-dasharray:5 3}.fx-connection-path{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:6 4}.fx-connection.is-snapped .fx-connection-path{stroke:var(--accent-2);stroke-dasharray:none}.fx-connection-dot{fill:var(--accent);stroke:var(--handle-ring);stroke-width:1.5px}.fx-connection.is-snapped .fx-connection-dot{fill:var(--accent-2)}.flow-wrapper.is-connecting .react-flow__node{cursor:crosshair}.fx-drop-ring{animation:1.1s ease-in-out infinite fx-ring-pulse}.ci-layer{z-index:1003;pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.ci-ghost{pointer-events:none;width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible}.ci-plus-disk{fill:var(--panel);stroke:var(--accent);stroke-width:1.75px}.ci-plus-arms{stroke:var(--accent);stroke-width:1.5px;stroke-linecap:round;fill:none}.ci-menu{pointer-events:auto;background:var(--panel);border:1px solid var(--border-2);box-shadow:var(--shadow);transform-origin:0 0;border-radius:12px;flex-direction:column;min-height:0;max-height:min(440px,100% - 16px);animation:.16s ease-out both ci-in;display:flex;position:absolute;overflow:hidden}@keyframes ci-in{0%{opacity:0;transform:translateY(8px)scale(.96)}to{opacity:1;transform:none}}.ci-search{margin:10px 10px 8px}.ci-tabs{background:var(--panel-3);border-radius:8px;gap:4px;margin:0 10px 8px;padding:3px;display:flex}.ci-tabs button{height:26px;color:var(--text-2);font:inherit;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;background:0 0;border:0;border-radius:6px;flex:1;font-size:11px;font-weight:600}.ci-tabs button.is-on{background:var(--panel);color:var(--text);box-shadow:var(--shadow-sm)}.ci-body{flex:1;min-height:0;padding:0 10px 10px;overflow-y:auto}.ci-sec{margin-top:4px}.ci-sec h3{letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);margin:8px 2px 6px;font-size:10px;font-weight:600}.ci-shapes{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.ci-shape{background:var(--panel-2);border:1px solid var(--border);cursor:pointer;font:inherit;color:var(--text-2);text-align:center;border-radius:9px;flex-direction:column;align-items:center;gap:5px;padding:8px 4px 7px;font-size:11px;display:flex}.ci-shape:hover,.ci-shape.is-active{border-color:var(--text);color:var(--text);background:var(--accent-soft)}.ci-glyph{color:var(--text)}.ci-cards{grid-template-columns:1fr 1fr;gap:8px;display:grid}.ci-logos{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.ci-logo{border:1px solid var(--border);background:var(--panel-2);min-width:0;color:var(--text-2);font:inherit;cursor:pointer;border-radius:9px;flex-direction:column;align-items:center;gap:5px;padding:7px 4px 6px;font-size:10px;transition:border-color .12s,color .12s;display:flex}.ci-logo:hover,.ci-logo.is-active{border-color:var(--text);color:var(--text)}.ci-logo img{object-fit:contain;pointer-events:none;background:#fff;border-radius:7px;width:34px;height:34px;padding:3px;display:block;box-shadow:inset 0 0 0 1px #0000000f}.ci-logo span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.2;overflow:hidden}.ci-more{padding:8px 2px 0}.ci-card{text-align:left;background:var(--panel-2);border:1px solid var(--border);cursor:pointer;font:inherit;color:inherit;border-radius:9px;flex-direction:column;padding:0;display:flex;overflow:hidden}.ci-card:hover,.ci-card.is-active{border-color:var(--text)}.ci-card-name{color:var(--text-2);border-top:1px solid var(--border);text-overflow:ellipsis;white-space:nowrap;padding:6px 8px;font-size:11px;display:block;overflow:hidden}.ci-blank{height:78px;color:var(--text-3);background:repeating-linear-gradient(-45deg,transparent,transparent 5px,var(--border) 5px,var(--border) 6px);justify-content:center;align-items:center;display:flex}.ci-empty{text-align:center;color:var(--text-3);padding:18px 8px;font-size:12px}.ci-foot{border-top:1px solid var(--border);padding:8px 12px 10px}.flow-wrapper.is-connect-insert .react-flow__pane{cursor:default}.fx-node>.react-flow__resize-control.handle{z-index:7}.fx-node>.react-flow__resize-control.line{z-index:5}.code-modal-bg{padding:20px}.code-modal{background:var(--panel);border:1px solid var(--border-2);width:100%;height:100%;box-shadow:var(--shadow-sm);border-radius:8px;flex-direction:column;animation:.18s cubic-bezier(.2,.7,.2,1) both ce-in;display:flex;overflow:hidden}@keyframes ce-in{0%{opacity:0;transform:scale(.985)translateY(6px)}to{opacity:1;transform:none}}.ce{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.ce-drop{z-index:20;border:2px dashed var(--accent);background:var(--panel);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;top:6px;right:6px;bottom:6px;left:6px}@supports (color:color-mix(in lab,red,red)){.ce-drop{background:color-mix(in srgb,var(--panel) 72%,transparent)}}.ce-drop{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);color:var(--accent-soft-text);pointer-events:none;font-size:14px;font-weight:600;animation:.12s ease-out both ce-in}.ce-loading{color:var(--text-2);flex:1;justify-content:center;align-items:center;gap:10px;font-size:13px;display:flex}.ce-loading-spinner{border:2px solid var(--border-2);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.ce-head{border-bottom:1px solid var(--border);background:var(--panel-2);flex:none;align-items:center;gap:12px;padding:9px 12px 9px 14px;display:flex}.ce-title{align-items:center;gap:10px;min-width:0;display:flex}.ce-title-icon{background:var(--panel-3);width:30px;height:30px;color:var(--text);border:1px solid var(--border);border-radius:6px;flex:none;justify-content:center;align-items:center;display:inline-flex}.ce-title-main{font-size:13px;font-weight:700;line-height:1.2}.ce-title-sub{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;max-width:320px;margin-top:2px;font-size:11.5px;line-height:1.2;overflow:hidden}.ce-name{border:0;border-bottom:1px dashed var(--border-2);width:240px;max-width:320px;color:var(--text);font:inherit;background:0 0;outline:none;margin-top:2px;padding:0 0 1px;font-size:12px;line-height:1.2;transition:border-color .12s;display:block}.ce-name::placeholder{color:var(--text-3)}.ce-name:hover{border-bottom-color:var(--text-3)}.ce-name:focus{border-bottom-style:solid;border-bottom-color:var(--focus-border);box-shadow:none}.ce-actions{align-items:center;gap:6px;margin-left:auto;display:flex}.ce-sep{background:var(--border-2);width:1px;height:20px;margin:0 4px}.ce-spacer{flex:1}.ce-body{flex:1;min-height:0;display:flex}.ce-left{flex-direction:column;flex:1;min-width:0;display:flex}.ce-editors{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.pnotice{border:1px solid var(--border-2);border-left:3px solid var(--text);background:var(--panel-2);color:var(--text-2);border-radius:6px;flex:none;margin:8px 10px 0;font-size:11.5px;animation:.18s ease-out both ce-in}.pnotice--warn{border-left-color:var(--warning)}.pnotice--error{border-left-color:var(--danger-text)}.pnotice--compact{margin:8px 0 0;font-size:11px}.pnotice-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text);align-items:center;gap:6px;padding:4px 4px 2px 10px;font-size:10.5px;font-weight:700;display:flex}.pnotice-head>svg{color:var(--text)}.pnotice-spacer{flex:1}.pnotice-list{flex-direction:column;gap:3px;margin:0;padding:0 10px 8px;list-style:none;display:flex}.pnotice-list li{align-items:flex-start;gap:6px;line-height:1.45;display:flex}.pnotice-list li>svg{flex:none;margin-top:3px}.pnotice-list li.is-info>svg{color:var(--info)}.pnotice-list li.is-warn>svg{color:var(--warning)}.pnotice-list li.is-error>svg{color:var(--danger-text)}.ce-pane{flex-direction:column;min-height:0;display:flex}.ce-pane.is-collapsed{flex:none}.ce-pane.is-collapsed .ce-pane-body{display:none}.ce-pane-head{border-bottom:1px solid var(--border);background:var(--panel);-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:8px;height:34px;padding:0 8px 0 12px;display:flex}.ce-pane.is-active .ce-pane-head{box-shadow:inset 2px 0 0 var(--text)}.ce-lang{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.ce-lang--html{color:var(--text)}.ce-lang--css{color:var(--text-2)}.ce-lang--preview{color:var(--text);text-transform:none;letter-spacing:0;font-size:12px}.ce-pane-meta{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;font-size:11px}.ce-pane-body{background:var(--code-bg);flex:1;min-height:0;position:relative}.mona{position:absolute;top:0;right:0;bottom:0;left:0}.ce-vdivider{cursor:row-resize;background:var(--border);flex:none;height:5px;transition:background .12s}.ce-hdivider{cursor:col-resize;background:var(--border);flex:none;width:5px;transition:background .12s}.ce-vdivider:hover,.ce-hdivider:hover,body.is-row-resize .ce-vdivider,body.is-col-resize .ce-hdivider{background:var(--text)}body.is-col-resize,body.is-col-resize *{cursor:col-resize!important;-webkit-user-select:none!important;user-select:none!important}body.is-row-resize,body.is-row-resize *{cursor:row-resize!important;-webkit-user-select:none!important;user-select:none!important}.ce-preview{background:var(--panel);flex-direction:column;flex:none;min-width:300px;max-width:70%;display:flex}.ce-seg{background:var(--panel-2);border:1px solid var(--border);border-radius:7px;gap:1px;padding:2px;display:inline-flex}.ce-seg-btn{color:var(--text-3);border-radius:5px;justify-content:center;align-items:center;padding:3px 8px;font-size:11px;font-weight:600;transition:background .12s,color .12s;display:inline-flex}.ce-seg-btn--icon{padding:3px 6px}.ce-seg-btn:hover{color:var(--text)}.ce-seg-btn.is-active{background:var(--panel-3);color:var(--text);box-shadow:0 1px 2px #0006}.cstage{flex:1;min-height:0;position:relative;overflow:hidden}.cstage-scroll{padding:24px;display:flex;position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto}.cstage-box{flex:none;margin:auto;position:relative}.cstage-host{transform-origin:0 0;position:absolute;top:0;left:0}.cstage--canvas{background-color:var(--stage-bg,var(--bg));background-image:radial-gradient(var(--stage-dots) 1.2px,transparent 1.4px);background-size:24px 24px}.cstage--dark{background:#0b0d12}.cstage--light{background-color:#eef0f5;background-image:radial-gradient(#cfd4e0 1.2px,#0000 1.4px);background-size:24px 24px}.cstage--checker{background:conic-gradient(var(--checker-a) 25%,var(--checker-b) 0 50%,var(--checker-a) 0 75%,var(--checker-b) 0) 0 0 / 20px 20px}.cstage-badge{color:var(--text-2);background:var(--glass);border:1px solid var(--border-2);pointer-events:none;border-radius:999px;padding:2px 7px;font-size:10.5px;font-weight:600;position:absolute;bottom:10px;right:10px}.ce-fields{border-top:1px solid var(--border);flex-direction:column;flex:none;gap:6px;max-height:34%;padding:10px 12px 12px;display:flex;overflow-y:auto}.ce-fields--images{max-height:46%}.ce-fields-head{letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);justify-content:space-between;align-items:center;margin-bottom:2px;font-size:11px;font-weight:700;display:flex}.ce-fields-head .ce-seg-btn{text-transform:none;letter-spacing:0;gap:5px}.ce-seg-count{background:var(--accent-soft);min-width:16px;color:var(--text);text-align:center;border-radius:999px;padding:0 4px;font-size:10px;line-height:16px}.cimg{flex-direction:column;gap:8px;min-height:0;display:flex;position:relative}.cimg-head{align-items:center;gap:8px;display:flex}.cimg-grid{grid-template-columns:repeat(auto-fill,minmax(104px,1fr));gap:8px;display:grid}.cimg-item{flex-direction:column;gap:4px;min-width:0;margin:0;display:flex;position:relative}.cimg-thumb{aspect-ratio:4/3;border:1px solid var(--border);background:conic-gradient(var(--checker-a) 25%,var(--checker-b) 0 50%,var(--checker-a) 0 75%,var(--checker-b) 0) 0 0 / 14px 14px;cursor:pointer;border-radius:8px;width:100%;transition:border-color .12s,transform .12s,box-shadow .12s;display:block;position:relative;overflow:hidden}.cimg-thumb img{object-fit:contain;width:100%;height:100%;display:block}.cimg-thumb:hover{border-color:var(--text);transform:translateY(-1px);box-shadow:0 6px 18px #00000040}.cimg-item.is-used .cimg-thumb{border-color:var(--text)}.cimg-badge{background:var(--accent);width:16px;height:16px;color:var(--accent-fg);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:5px;left:5px;box-shadow:0 1px 3px #00000080}.cimg-cap{flex-direction:column;min-width:0;line-height:1.25;display:flex}.cimg-name{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.cimg-info{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.cimg-actions{background:var(--glass);border:1px solid var(--border-2);opacity:0;border-radius:6px;gap:2px;padding:2px;transition:opacity .12s;display:flex;position:absolute;top:5px;right:5px}.cimg-item:hover .cimg-actions,.cimg-item:focus-within .cimg-actions{opacity:1}.cimg-actions>button{width:20px;height:20px;color:var(--text-2);border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.cimg-actions>button:hover{background:var(--panel-3);color:var(--text)}.cimg-actions>button.is-danger:hover{color:var(--danger-text)}.cimg-empty{border:1px dashed var(--border-2);color:var(--text-3);text-align:center;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:18px 12px;font-size:12px;display:flex}.cimg-hint{font-size:11px}.cimg.is-over .media-drop{display:flex}.ce-field{grid-template-columns:96px 1fr;align-items:center;gap:8px;display:grid}.ce-field-key{font-family:var(--mono);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.ce-status{border-top:1px solid var(--border);background:var(--panel-2);height:28px;color:var(--text-2);flex:none;align-items:center;gap:2px;padding:0 8px;font-size:11px;display:flex}.ce-status-item,.ce-status-btn{font-variant-numeric:tabular-nums;white-space:nowrap;border-radius:5px;align-items:center;gap:5px;height:22px;padding:0 8px;display:inline-flex}.ce-status-btn{color:var(--text-2)}.ce-status-btn:hover{background:var(--panel-3);color:var(--text)}.ce-status-btn.is-on{color:var(--accent-soft-text)}.ce-status-btn.is-ok{color:var(--ok)}.ce-status-btn.is-warn{color:var(--warning)}.ce-status-btn.is-error{color:var(--danger-text)}.ce-live i,.ce-dirty i,.ce-saved i{background:var(--ok);border-radius:50%;width:6px;height:6px;display:inline-block}.ce-live i{animation:2s ease-out infinite ce-pulse}.ce-dirty{color:var(--warning)}.ce-dirty i{background:var(--warning)}@keyframes ce-pulse{0%{box-shadow:0 0 #22c55e8c}70%{box-shadow:0 0 0 5px #22c55e00}to{box-shadow:0 0 #22c55e00}}.ce-status-keys{color:var(--text-3);align-items:center;gap:4px;margin-left:6px;display:inline-flex}.ce-status-keys kbd{margin-left:6px;padding:0 5px;font-size:10px}.ce-status-keys kbd:first-child{margin-left:0}.home-user{color:var(--text-2);align-self:center;font-size:13px}.home-ver,.login-ver{color:var(--text-3);font-variant-numeric:tabular-nums;margin-top:36px;font-size:12px}.login{background:var(--home-wash);flex-direction:column;justify-content:flex-start;align-items:center;height:100%;min-height:100%;padding:32px 16px;display:flex;overflow-y:auto}.login-card{background:var(--panel);border:1px solid var(--border);width:min(420px,100%);box-shadow:var(--shadow);border-radius:8px;margin-block:auto;padding:28px 26px 22px}.login-top{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.login-card h1{letter-spacing:-.02em;margin:8px 0 6px;font-size:26px}.login-lead{color:var(--text-2);margin:0 0 18px;font-size:14px}.login-form{flex-direction:column;gap:12px;display:flex}.login-form label{color:var(--text-2);flex-direction:column;gap:6px;font-size:12px;font-weight:600;display:flex}.login-form .input{height:38px;padding:0 10px;font-size:14px}.login-or{text-align:center;color:var(--text-3);margin:14px 0;font-size:12px}.login-links{flex-wrap:wrap;gap:14px;margin-top:16px;display:flex}.login-links button{color:var(--text);cursor:pointer;background:0 0;border:0;padding:0;font-size:13px}.login-links button:hover{text-decoration:underline}.floani-lockup{color:var(--text);line-height:0;text-decoration:none;display:inline-flex}.floani-logo{display:block;overflow:visible}html[data-scroll=page],html[data-scroll=page] body,html[data-scroll=page] #root{height:auto;min-height:100%;overflow:visible}html[data-scroll=page] body{overflow:hidden auto}.lp{background:var(--bg);min-height:100vh;color:var(--text);position:relative;overflow:visible}.lp-grid{pointer-events:none;background-image:linear-gradient(var(--border) 1px,transparent 1px),linear-gradient(90deg,var(--border) 1px,transparent 1px);opacity:.7;background-size:48px 48px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:radial-gradient(at 50% 0,#000 20%,#0000 72%);mask-image:radial-gradient(at 50% 0,#000 20%,#0000 72%)}.lp-nav{z-index:10;background:var(--bg);align-items:center;gap:24px;padding:16px clamp(20px,6vw,80px);display:flex;position:sticky;top:0}@supports (color:color-mix(in lab,red,red)){.lp-nav{background:color-mix(in srgb,var(--bg) 86%,transparent)}}.lp-nav{border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.lp-nav-links{flex:1;align-items:center;gap:20px;display:flex}.lp-nav-links a{color:var(--text-2);font-size:13px;font-weight:500;text-decoration:none}.lp-nav-links a:hover{color:var(--text)}.lp-nav-end{align-items:center;gap:8px;margin-left:auto;display:flex}.lp-main{flex-direction:column;gap:72px;max-width:1180px;margin:0 auto;padding:48px clamp(20px,6vw,80px) 80px;display:flex;position:relative}.lp-hero{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:48px;min-height:min(62vh,560px);display:grid}.lp-hero-copy{flex-direction:column;align-items:flex-start;gap:18px;max-width:560px;display:flex}.lp-hero-copy h1{letter-spacing:-.04em;margin:0;font-size:clamp(40px,6vw,72px);font-weight:600;line-height:1.02}.lp-hero-copy p{color:var(--text-2);max-width:440px;margin:0;font-size:17px;line-height:1.55}.lp-hero-actions{flex-wrap:wrap;gap:10px;margin-top:6px;display:flex}.lp-hero-mark{min-height:220px;color:var(--text);justify-content:center;align-items:center;display:flex;position:relative}.lp-hero-mark .floani-logo--mark{width:min(100%,280px);height:auto}.lp-hero-path{width:100%;height:auto;color:var(--text-3);position:absolute;top:12%;right:0;bottom:12%;left:0}.lp-section{flex-direction:column;gap:28px;scroll-margin-top:72px;display:flex}.lp-section-head{flex-direction:column;gap:10px;max-width:540px;display:flex}.lp-section-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(24px,3vw,36px);font-weight:600}.lp-section-head p{color:var(--text-2);margin:0;font-size:15px;line-height:1.5}.lp-kicker{letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin:0;font-size:11px;font-weight:600}.lp-feature-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.lp-feature-icon{border:1px solid var(--border);width:32px;height:32px;color:var(--text);border-radius:6px;justify-content:center;align-items:center;margin-bottom:4px;display:inline-flex}.lp-feature-icon svg{width:16px;height:16px}.lp-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.lp-step{border-top:1px solid var(--border);flex-direction:column;gap:8px;padding:8px 0;display:flex}.lp-step-n{font-family:var(--mono);color:var(--text-3);font-size:12px}.lp-step h3{letter-spacing:-.02em;margin:0;font-size:18px;font-weight:600}.lp-step p{color:var(--text-2);margin:0;font-size:14px;line-height:1.5}.lp-foot{border-top:1px solid var(--border);color:var(--text-2);flex-wrap:wrap;align-items:center;gap:16px;padding:22px clamp(20px,6vw,80px) 28px;font-size:13px;display:flex}.lp-foot p{margin:0}.lp-ver{font-variant-numeric:tabular-nums;color:var(--text-3);margin-left:auto}@media(max-width:860px){.lp-hero,.lp-feature-grid,.lp-steps{grid-template-columns:1fr}.lp-nav-links{display:none}.lp-hero-mark{min-height:160px}}.logo-browser,.logo-browser .search{position:relative}.search-clear{width:18px;height:18px;color:var(--text-3);cursor:pointer;background:0 0;border:0;border-radius:6px;justify-content:center;align-items:center;display:inline-flex}.search-clear:hover{background:var(--panel-3);color:var(--text)}.logo-chips{flex-wrap:wrap;gap:4px;padding:0 12px 8px;display:flex}.logo-chip{border:1px solid var(--border);background:var(--panel-2);color:var(--text-2);font:inherit;cursor:pointer;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;line-height:1.4;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.logo-chip:hover{border-color:var(--text);color:var(--text)}.logo-chip.is-active{background:var(--accent-soft);color:var(--text);border-color:#0000}.logo-chip em{background:var(--panel-3);color:var(--text-3);border-radius:999px;padding:0 5px;font-size:10px;font-style:normal}.logo-caption{color:var(--text-3);align-items:center;gap:4px;padding:4px 12px 6px;font-size:11px;display:flex}.logo-caption b{color:var(--text-2);font-weight:600}.logo-grid{grid-template-columns:repeat(auto-fill,minmax(66px,1fr));gap:6px;padding:0 12px 10px;display:grid}.logo-cell{border:1px solid var(--border);background:var(--panel-2);cursor:grab;border-radius:9px;min-width:0;transition:border-color .12s,transform .12s;position:relative}.logo-cell:hover{border-color:var(--text);transform:translateY(-1px)}.logo-cell:active{cursor:grabbing}.logo-cell-hit{width:100%;color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:5px;min-width:0;padding:7px 4px 6px;display:flex}.logo-cell-hit:hover{color:var(--text)}.logo-cell-hit img{object-fit:contain;pointer-events:none;background:#fff;border-radius:8px;width:40px;height:40px;padding:4px;display:block;box-shadow:inset 0 0 0 1px #0000000f}.logo-cell-name{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;line-height:1.2;overflow:hidden}.logo-cell-ext{letter-spacing:.04em;text-transform:uppercase;color:var(--text-3);pointer-events:none;font-size:8px;font-weight:700;position:absolute;top:4px;left:5px}.logo-cell-x{background:var(--panel);width:18px;height:18px;color:var(--text-3);cursor:pointer;border:0;border-radius:6px;justify-content:center;align-items:center;display:none;position:absolute;top:3px;right:3px}.logo-cell:hover .logo-cell-x{display:inline-flex}.logo-cell-x:hover{color:var(--danger,#ff3b5c)}.logo-browser.is-over .media-drop{display:flex}.modal--logos{width:min(860px,94vw)}.modal--logos .modal-head strong{font-size:13px}.modal-body--logos{padding:4px 0 8px}.modal--logos .logo-grid{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))}.modal--logos .logo-cell-hit img{width:52px;height:52px}.modal--logos .logo-cell-name{font-size:11px}.rt-link{align-items:center;gap:6px;width:min(320px,100vw - 16px);padding:6px;display:flex}.rt-link-input{flex:1;height:28px;font-size:12.5px}.rt-link-input.is-invalid,.rt-link-input.is-invalid:focus{border-color:var(--danger)}.rt-link .btn--primary:disabled{opacity:.5}.easing-editor{min-width:0;margin-block:8px 12px}.easing-editor .bez{margin-top:8px}.easing-points{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px;margin-top:8px;display:grid}.easing-points .row{grid-template-columns:22px minmax(0,1fr);margin:0}.easing-points>button{grid-column:1/-1;justify-self:start}.bez-handle:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.tvd-point{grid-template-columns:22px minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:6px;margin-block:6px;display:grid}.tvd-point-actions{display:flex}.motion-clip-summary{color:var(--text-2);justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;font-size:11px;display:flex}.motion-track{border-block:1px solid var(--border);margin-bottom:10px}.motion-track-head{align-items:center;gap:6px;padding-block:6px;display:flex}.motion-track-trigger{text-align:left;flex:1;align-items:center;gap:5px;min-width:0;padding-block:6px;display:flex}.motion-track-meta{color:var(--text-2);white-space:nowrap;margin-left:auto;font-size:11px}.motion-track-body{padding-bottom:10px}.motion-keyframe{background:var(--panel-2);border-radius:var(--radius);margin-block:8px 12px;padding:8px}.motion-keyframe-head{justify-content:space-between;align-items:center;gap:6px;margin-bottom:8px;font-size:11px;display:flex}.motion-keyframe-head>span{color:var(--text-2);font-variant-numeric:tabular-nums;margin-left:auto}.motion-curve-details{margin-top:10px}.motion-curve-details>summary{cursor:pointer;color:var(--text-2);padding-block:6px;font-size:11px}.motion-modifier{border-top:1px solid var(--border);padding-block:10px}.motion-animation-editor :is(summary,.motion-track-trigger):focus-visible{outline:2px solid var(--focus);outline-offset:2px}.flow-wrapper.is-ai-preview .react-flow__handle{display:none}.flow-wrapper.is-ai-preview .react-flow__node{cursor:grab}.flow-wrapper.is-ai-preview--edit .react-flow__node:not(.is-changed){opacity:.55}.flow-wrapper.is-ai-preview--edit .react-flow__edge:not(.is-changed){opacity:.45}.flow-wrapper.is-ai-preview .react-flow__node.is-changed>*{outline:2px dashed var(--accent,#2f8f9d);outline-offset:4px;border-radius:6px}.flow-wrapper.is-ai-preview .react-flow__edge.is-changed path{stroke:var(--accent,#2f8f9d)}.toggle.is-mixed .toggle-thumb{border-radius:2px;height:3px;transform:translate(6px)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}.present-preparation{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:100;max-width:min(620px,calc(100% - 32px));display:flex;gap:12px;align-items:center;padding:10px 14px;border-radius:10px;color:#fff;background:#20232deb;box-shadow:0 4px 20px #0003;font-size:13px;pointer-events:auto}.present-preparation.is-error{background:#652a2a}.present-preparation button{padding:5px 9px;border:1px solid #ffffff70;border-radius:6px;color:inherit;white-space:nowrap}.editor.is-present.scene-morph-smooth .react-flow__node,.editor.is-present.scene-morph-smooth .fx-node,.editor.is-present.scene-morph-smooth .fx-transform,.editor.is-present.scene-morph-smooth .fx-motion,.editor.is-present.scene-morph-smooth .fx-shadow,.editor.is-present.scene-morph-smooth .fx-glow,.editor.is-present.scene-morph-smooth .fx-border,.editor.is-present.scene-morph-smooth .fx-highlight,.editor.is-present.scene-morph-smooth .fx-content,.editor.is-present.scene-morph-smooth .fx-text,.editor.is-present.scene-morph-smooth .fx-shape-svg,.editor.is-present.scene-morph-smooth .fx-shape-svg rect,.editor.is-present.scene-morph-smooth .fx-shape-svg ellipse,.editor.is-present.scene-morph-smooth .fx-shape-svg circle,.editor.is-present.scene-morph-smooth .fx-shape-svg path,.editor.is-present.scene-morph-smooth .fx-shape-svg polygon,.editor.is-present.scene-morph-smooth .fx-shape-label,.editor.is-present.scene-morph-smooth .fx-icon-box,.editor.is-present.scene-morph-smooth .fx-icon-box svg,.editor.is-present.scene-morph-smooth .fx-icon-label,.editor.is-present.scene-morph-smooth .fx-image-caption,.editor.is-present.scene-morph-smooth .fx-image,.editor.is-present.scene-morph-smooth .fx-image img,.editor.is-present.scene-morph-smooth .fx-video,.editor.is-present.scene-morph-smooth .fx-video video,.editor.is-present.scene-morph-smooth .fx-website,.editor.is-present.scene-morph-smooth .fx-website-chrome,.editor.is-present.scene-morph-smooth .fx-chart,.editor.is-present.scene-morph-smooth .fx-table,.editor.is-present.scene-morph-smooth .fx-table-cell,.editor.is-present.scene-morph-smooth .fx-table-caption,.editor.is-present.scene-morph-smooth .fx-table-bar,.editor.is-present.scene-morph-smooth .fx-table-dot,.editor.is-present.scene-morph-smooth .fx-table-meter,.editor.is-present.scene-morph-smooth .fx-table-meter-knob,.editor.is-present.scene-morph-smooth .fx-region,.editor.is-present.scene-morph-smooth .fx-region-pattern,.editor.is-present.scene-morph-smooth .fx-region-label,.editor.is-present.scene-morph-smooth .fx-region-icon,.editor.is-present.scene-morph-smooth .fx-region-sub,.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-main,.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-glow,.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-highlight,.editor.is-present.scene-morph-smooth .fx-edge-label{transition-duration:var(--scene-dur, 1.2s);transition-timing-function:var(--scene-ease, ease-in-out);transition-delay:0s}.editor.is-present.scene-morph-smooth .react-flow__node{transition-property:transform}.editor.is-present.scene-morph-smooth .fx-node{transition-property:opacity,transform}.editor.is-present.scene-morph-smooth .fx-node:has(>.fx-entrance[class*=rv-]){transition-property:none}.editor.is-present.scene-morph-smooth .fx-transform{transition-property:transform,filter,opacity}.editor.is-present.scene-morph-smooth .fx-motion{transition-property:transform}.editor.is-present.scene-morph-smooth .fx-shadow,.editor.is-present.scene-morph-smooth .fx-glow{transition-property:filter}.editor.is-present.scene-morph-smooth .fx-border{transition-property:border-color,border-width,border-radius,box-shadow,background,opacity,inset}.editor.is-present.scene-morph-smooth .fx-highlight{transition-property:opacity,filter,border-radius}.editor.is-present.scene-morph-smooth .fx-content{transition-property:opacity}.editor.is-present.scene-morph-smooth .fx-text{transition-property:color,background-color,font-size,letter-spacing,line-height,text-shadow,padding,border-radius,opacity}.editor.is-present.scene-morph-smooth .fx-shape-svg{transition-property:width,height}.editor.is-present.scene-morph-smooth .fx-shape-svg rect,.editor.is-present.scene-morph-smooth .fx-shape-svg ellipse,.editor.is-present.scene-morph-smooth .fx-shape-svg circle,.editor.is-present.scene-morph-smooth .fx-shape-svg path,.editor.is-present.scene-morph-smooth .fx-shape-svg polygon{transition-property:fill,stroke,stroke-width,stroke-dasharray,opacity,fill-opacity,stroke-opacity,d,rx,ry,x,y,cx,cy,r,width,height}.editor.is-present.scene-morph-smooth .fx-shape-label{transition-property:color,font-size,letter-spacing,opacity}.editor.is-present.scene-morph-smooth .fx-icon-box{transition-property:background-color,border-color,border-width,padding,border-radius,box-shadow}.editor.is-present.scene-morph-smooth .fx-icon-box svg{transition-property:stroke,fill,width,height,stroke-width}.editor.is-present.scene-morph-smooth .fx-icon-label,.editor.is-present.scene-morph-smooth .fx-image-caption{transition-property:color,font-size}.editor.is-present.scene-morph-smooth .fx-image{transition-property:border-radius,width,height}.editor.is-present.scene-morph-smooth .fx-image img{transition-property:border-radius}.editor.is-present.scene-morph-smooth .fx-video{transition-property:border-radius,width,height}.editor.is-present.scene-morph-smooth .fx-video video{transition-property:border-radius}.editor.is-present.scene-morph-smooth .fx-website{transition-property:border-radius,width,height,border-color}.editor.is-present.scene-morph-smooth .fx-website-chrome{transition-property:background,border-color,color}.editor.is-present.scene-morph-smooth .fx-chart{transition-property:border-radius,width,height,background,background-color,border-color,color}.editor.is-present.scene-morph-smooth .fx-table{transition-property:background,background-color,border-color,border-radius,color,font-size,width,height,box-shadow}.editor.is-present.scene-morph-smooth .fx-table-cell{transition-property:background,color,padding,border-color}.editor.is-present.scene-morph-smooth .fx-table-caption{transition-property:color,padding}.editor.is-present.scene-morph-smooth .fx-table-bar{transition-property:width,background,opacity}.editor.is-present.scene-morph-smooth .fx-table-dot{transition-property:transform,opacity,background}.editor.is-present.scene-morph-smooth .fx-table-meter{transition-property:background,opacity}.editor.is-present.scene-morph-smooth .fx-table-meter-knob{transition-property:left,background}.editor.is-present.scene-morph-smooth .fx-region{transition-property:background,background-color,border-color,border-width,border-radius,box-shadow,width,height}.editor.is-present.scene-morph-smooth .fx-region-pattern{transition-property:opacity,border-radius}.editor.is-present.scene-morph-smooth .fx-region-label{transition-property:color,background,background-color,border-color,font-size,letter-spacing,box-shadow}.editor.is-present.scene-morph-smooth .fx-region-icon{transition-property:background,color}.editor.is-present.scene-morph-smooth .fx-region-sub{transition-property:color}.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-main,.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-glow,.editor.is-present.scene-morph-smooth .react-flow__edge path.fx-path-highlight{transition-property:stroke,stroke-width,opacity,stroke-opacity,d}.editor.is-present.scene-morph-smooth .fx-edge-label{transition-property:transform,color,background,background-color,font-size,padding,border-radius,box-shadow,text-shadow,opacity}.editor.is-present.scene-morph-cut .react-flow__node{transition-property:none}.editor-stage:has(>.present-ui.cursor-none) .stage,.editor-stage:has(>.present-ui.cursor-none) .stage *,.editor-stage:has(>.present-ui.cursor-laser) .stage,.editor-stage:has(>.present-ui.cursor-laser) .stage *{cursor:none!important}.present-bar{z-index:3}.present-bar button.present-step{width:auto;height:34px;padding:0 9px 0 11px;border-radius:9px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;color:var(--text-2);max-width:min(46vw,420px)}.present-bar button.present-step:hover,.present-bar button.present-step.is-on{color:var(--text)}.present-step b{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.present-step-count{font-variant-numeric:tabular-nums}.present-step-sub{color:var(--text-3)}.present-step-sub b{color:var(--text)}.present-step-name{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text)}.present-step-dot{width:7px;height:7px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 8px currentColor}.present-step-caret{flex:0 0 auto;opacity:.5;transition:transform .2s,opacity .2s}.present-step.is-on .present-step-caret{transform:rotate(180deg);opacity:1}.present-hint{z-index:3}.present-bar button.present-auto{position:relative}.present-bar button.present-auto.is-idle{color:var(--text-3)}.present-bar button.present-auto.is-on{background:var(--accent-soft);color:var(--text)}.present-bar button.present-auto.is-on:hover{background:var(--btn-hover)}.present-auto-ring{position:absolute;top:2px;right:2px;bottom:2px;left:2px;width:calc(100% - 4px);height:calc(100% - 4px);transform:rotate(-90deg);pointer-events:none}.present-auto-ring circle{fill:none;stroke-width:2}.present-auto-track{stroke:var(--border-2)}.present-auto-fill{stroke:var(--text);stroke-linecap:round;stroke-dashoffset:0;animation:present-auto-drain 3s linear forwards}.present-auto.is-on .present-auto-fill{stroke:var(--text)}@keyframes present-auto-drain{to{stroke-dashoffset:88}}.present-paused{position:absolute;top:18px;left:50%;transform:translate(-50%);z-index:3;display:inline-flex;align-items:center;gap:7px;padding:6px 12px 6px 10px;border-radius:6px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);color:var(--text);font-size:12px;font-weight:500;white-space:nowrap;box-shadow:var(--shadow-sm);pointer-events:none;animation:present-pop-x .18s cubic-bezier(.2,.7,.2,1)}.present-paused kbd{font-size:10px;padding:0 5px;line-height:16px;border-radius:4px;background:var(--panel-3);border:1px solid var(--border);color:var(--text);font-family:inherit}.present-paused-sub{color:var(--text-2)}.present-jump{position:absolute;left:50%;bottom:max(84px,calc(70px + env(safe-area-inset-bottom)));transform:translate(-50%);z-index:4;min-width:250px;max-width:min(400px,90vw);max-height:min(50vh,460px);overflow:auto;background:var(--glass);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:8px;padding:6px;box-shadow:var(--shadow);pointer-events:all;animation:present-pop-x .16s cubic-bezier(.2,.7,.2,1)}.present-jump-head{font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);padding:6px 10px 5px}.present-jump button.present-jump-item{width:100%;height:32px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 10px;border-radius:8px;color:var(--text);font-size:12.5px;text-align:left}.present-jump button.present-jump-item:hover{background:var(--btn-hover);color:var(--text)}.present-jump button.present-jump-item.is-current{background:var(--accent-soft);color:var(--text)}.present-jump-num{width:16px;text-align:right;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--text-3);flex:0 0 auto}.present-jump-item.is-current .present-jump-num{color:var(--text)}.present-jump-dot{width:8px;height:8px;border-radius:50%;flex:0 0 auto;box-shadow:0 0 8px var(--dot, transparent)}.present-jump-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.present-jump-meta{font-size:10.5px;color:var(--text-3);white-space:nowrap;flex:0 0 auto}.present-jump-key{flex:0 0 auto;font-size:10px;padding:0 5px;line-height:16px;background:var(--panel-3);border-color:var(--border);color:var(--text-3)}.present-notes{position:absolute;left:22px;bottom:22px;width:clamp(200px,calc(50vw - 390px),380px);max-height:42vh;display:flex;flex-direction:column;overflow:hidden;z-index:2;background:var(--glass);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--glass-border);border-radius:8px;box-shadow:var(--shadow);pointer-events:all;animation:present-pop .18s cubic-bezier(.2,.7,.2,1)}.present-notes-head{display:flex;align-items:center;gap:7px;padding:8px 8px 8px 12px;border-bottom:1px solid var(--border);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);flex:0 0 auto}.present-notes-head svg{color:var(--text)}.present-notes-scene{flex:1;min-width:0;text-transform:none;letter-spacing:0;font-weight:500;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.present-notes-head button{width:24px;height:24px;border-radius:6px;color:var(--text-3);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}.present-notes-head button:hover{background:var(--btn-hover);color:var(--text)}.present-notes-body{padding:12px 14px 14px;font-size:14px;line-height:1.55;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;overflow:auto;min-height:0}.present-notes-empty{color:var(--text-3);font-style:italic;font-size:12.5px}.present-progress{position:absolute;left:0;right:0;bottom:0;height:16px;display:flex;align-items:flex-end;gap:3px;padding:0 3px 3px;pointer-events:all;z-index:2}.present-progress-seg{position:relative;flex:1 1 0;min-width:4px;height:3px;border-radius:3px;overflow:hidden;background:var(--accent-soft);transition:height .18s,background .18s;cursor:pointer}.present-progress:hover .present-progress-seg{height:8px}.present-progress-seg.is-current{background:var(--border-2)}.present-progress-fill{position:absolute;left:0;top:0;bottom:0;background:var(--seg-color, var(--accent));box-shadow:0 0 10px var(--seg-color, var(--accent));transition:width .35s cubic-bezier(.2,.7,.2,1)}.present-progress-seg.is-done .present-progress-fill{opacity:.75;box-shadow:none}.present-progress-tick{position:absolute;top:0;bottom:0;width:1px;background:#00000080;pointer-events:none}@keyframes present-pop{0%{opacity:0;transform:translateY(8px)}}@keyframes present-pop-x{0%{opacity:0;transform:translate(-50%) translateY(8px)}}.editor.is-present .stage-plane{transition:none!important}.fx-edge{transition:opacity .6s ease}.editor.is-present.scene-morph-smooth .fx-edge{transition:opacity var(--scene-dur, 1.2s) var(--scene-ease, ease-in-out)}.editor.is-present.scene-morph-cut .fx-edge,.editor.is-present.scene-morph-cut .fx-edge-label,.editor.is-present .fx-edge[class*=rv-]{transition:none}.present-hint.is-focus{color:var(--text-2)}.present-joy{position:absolute;right:22px;bottom:30px;z-index:3;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:0;transform:translateY(6px) scale(.96);transform-origin:100% 100%;transition:opacity .22s ease,transform .22s cubic-bezier(.2,.7,.2,1);pointer-events:none;cursor:default}.present-joy.is-open{opacity:1;transform:none;pointer-events:all}.present-joy-modes{display:flex;align-items:center;gap:2px;padding:3px;background:var(--glass);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:6px;box-shadow:var(--shadow-sm)}.present-joy-modes button{display:inline-flex;align-items:center;justify-content:center;width:26px;height:24px;border-radius:6px;color:var(--text-2)}.present-joy-modes button:hover{background:var(--btn-hover);color:var(--text)}.present-joy-modes button.is-on{background:var(--accent-soft);color:var(--text)}.present-joy-sep{width:1px;height:14px;background:var(--accent-soft);margin:0 2px}.present-joy-pad{position:relative;width:84px;height:84px;border-radius:50%;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle at 50% 50%,#ffffff12 0,#0e111ae0 60%,#0e111ab8);border:1px solid rgba(255,255,255,.14);box-shadow:0 12px 30px #00000080,inset 0 0 0 1px #00000059,inset 0 1px #ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:border-color .2s,box-shadow .2s}.present-joy-pad:before{content:"";position:absolute;top:14px;right:14px;bottom:14px;left:14px;border-radius:50%;border:1px dashed rgba(255,255,255,.16);pointer-events:none}.present-joy-pad:hover{border-color:#ffffff3d}.present-joy.is-dragging .present-joy-pad{cursor:grabbing;border-color:#ffffff73;box-shadow:0 12px 30px #00000080,0 0 0 4px #ffffff14}.present-joy-axis{position:absolute;background:#ffffff1a;pointer-events:none}.present-joy-axis.is-h{left:9px;right:9px;top:50%;height:1px}.present-joy-axis.is-v{top:9px;bottom:9px;left:50%;width:1px}.present-joy-knob{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#f4f4f5 0,#d4d4d8 45%,#a1a1aa);border:1px solid rgba(255,255,255,.35);box-shadow:0 3px 10px #0000008c,inset 0 1px #ffffff59;display:flex;align-items:center;justify-content:center;pointer-events:none;transition:transform .3s cubic-bezier(.2,1.25,.3,1)}.present-joy.is-dragging .present-joy-knob{transition:none;box-shadow:0 5px 14px #0009,inset 0 1px #fff6}.present-joy-knob i{width:6px;height:6px;border-radius:50%;background:#fff;box-shadow:0 0 6px #fff}.present-joy-read{display:flex;align-items:center;gap:6px;font-size:10.5px;font-variant-numeric:tabular-nums;letter-spacing:.04em;color:var(--text-2);white-space:nowrap;background:var(--panel);padding:4px 6px;border-radius:4px}.present-joy-mode{font-weight:600;text-transform:uppercase;font-size:9.5px;letter-spacing:.1em;color:var(--text-2)}.present-joy.is-dragging .present-joy-read{color:var(--text)}.present-veil{position:fixed;top:0;right:0;bottom:0;left:0;background:#05070b;opacity:0;pointer-events:none;transition:opacity .42s ease}.present-veil.is-on{opacity:1;pointer-events:auto}.media-marker-waveform{position:relative;margin:12px 10px}.media-marker-cue{position:absolute;top:0;bottom:0;transform:translate(-50%);min-width:22px;padding:0 3px;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:4px;cursor:pointer;font:inherit}.media-marker-cue:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.media-marker-cue:disabled{opacity:.5;cursor:default}.media-marker-fields{margin:12px 0}.fdraw{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;cursor:crosshair;touch-action:none;user-select:none;-webkit-user-select:none}.fdraw.is-passthrough{pointer-events:none;cursor:grab}.fdraw-rect{position:absolute;box-sizing:border-box;border:1.5px dashed var(--accent);background:color-mix(in srgb,var(--text) 6%,transparent);box-shadow:0 0 0 100vmax #0c0c0c80,0 0 0 1px color-mix(in srgb,var(--text) 28%,transparent);pointer-events:none}.fdraw-rect:before,.fdraw-rect:after{content:"";position:absolute;width:10px;height:10px;border:2px solid var(--accent)}.fdraw-rect:before{left:-2px;top:-2px;border-right:0;border-bottom:0}.fdraw-rect:after{right:-2px;bottom:-2px;border-left:0;border-top:0}.fdraw-size{position:absolute;right:-1px;top:calc(100% + 8px);padding:3px 7px;border-radius:6px;background:var(--accent);color:var(--accent-fg);font-family:var(--font);font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:0 2px 8px #0006}.fdraw-size.is-inside{top:auto;bottom:6px;right:6px}.fdraw-hint{position:absolute;top:14px;left:var(--inset-left, 0px);right:var(--inset-right, 0px);margin-inline:auto;width:max-content;max-width:calc(100% - 32px);display:inline-flex;align-items:center;gap:10px;padding:7px 12px;border-radius:999px;background:var(--glass);border:1px solid var(--glass-border);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);color:var(--text-2);font-size:12px;white-space:nowrap;pointer-events:none;box-shadow:0 10px 30px #00000059;animation:fx-in-slide-up .2s ease-out both}.fdraw-hint>svg{color:var(--text);flex:0 0 auto}.fdraw-hint b{color:var(--text);font-weight:600}.fdraw-hint span{display:inline-flex;align-items:center;gap:5px}.fdraw-hint kbd{font-size:10.5px;padding:1px 5px}.sf-layer{position:absolute;left:0;top:0;width:0;height:0;overflow:visible;pointer-events:none;font-family:var(--font)}.sf{position:absolute;pointer-events:none}.sf-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;display:block;pointer-events:none;z-index:-1}.sf-rect{fill:var(--c);fill-opacity:.035;stroke:var(--c);stroke-opacity:.72;stroke-linecap:round;transition:stroke-opacity .12s,fill-opacity .12s}.sf:hover .sf-rect,.sf.is-active .sf-rect{stroke-opacity:1}.sf.is-active .sf-rect{fill-opacity:.06}.sf.is-dragging .sf-rect{fill-opacity:.09}.sf-tick{fill:none;stroke:var(--c);stroke-opacity:.5;stroke-linecap:round}.sf-glow{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:-1;box-shadow:0 0 calc(22px / var(--z)) calc(1px / var(--z)) var(--c-soft),inset 0 0 calc(28px / var(--z)) var(--c-faint)}.sf-chip{position:absolute;left:0;top:0;transform-origin:0 0;z-index:5;pointer-events:all;display:inline-flex;align-items:center;gap:5px;height:20px;max-width:260px;padding:0 8px 0 5px;border-radius:6px;background:var(--c);color:#fff;font-size:11px;font-weight:600;line-height:1;white-space:nowrap;cursor:grab;box-shadow:0 2px 8px #0006,inset 0 1px #ffffff2e;transition:filter .12s}.sf-chip:hover{filter:brightness(1.12)}.sf-chip:active,.sf.is-dragging .sf-chip{cursor:grabbing}.sf-chip-n{display:inline-flex;align-items:center;justify-content:center;min-width:14px;height:14px;padding:0 3px;border-radius:4px;background:#00000047;font-size:10px;font-variant-numeric:tabular-nums}.sf-chip-name{overflow:hidden;text-overflow:ellipsis}.sf-edge{position:absolute;pointer-events:all;cursor:move;z-index:3}.sf-edge--n{left:0;right:0;top:calc(-4px / var(--z));height:calc(8px / var(--z))}.sf-edge--s{left:0;right:0;bottom:calc(-4px / var(--z));height:calc(8px / var(--z))}.sf-edge--w{top:0;bottom:0;left:calc(-4px / var(--z));width:calc(8px / var(--z))}.sf-edge--e{top:0;bottom:0;right:calc(-4px / var(--z));width:calc(8px / var(--z))}.sf-grip{position:absolute;pointer-events:all;z-index:4;box-sizing:border-box;width:calc(10px / var(--z));height:calc(10px / var(--z));border:calc(1.5px / var(--z)) solid var(--c);border-radius:calc(2px / var(--z));background:var(--panel);opacity:0;transition:opacity .12s}.sf.is-active .sf-grip,.sf:hover .sf-grip{opacity:1}.sf-grip:hover{background:var(--c)}.sf-grip--nw{left:calc(-5px / var(--z));top:calc(-5px / var(--z));cursor:nwse-resize}.sf-grip--ne{right:calc(-5px / var(--z));top:calc(-5px / var(--z));cursor:nesw-resize}.sf-grip--sw{left:calc(-5px / var(--z));bottom:calc(-5px / var(--z));cursor:nesw-resize}.sf-grip--se{right:calc(-5px / var(--z));bottom:calc(-5px / var(--z));cursor:nwse-resize}.sf-size{position:absolute;left:100%;top:100%;transform-origin:0 0;z-index:4;pointer-events:none;padding:3px 7px;border-radius:6px;background:var(--c);color:#fff;font-size:11px;font-weight:600;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums;box-shadow:0 2px 8px #0006}.pdraw{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;cursor:crosshair;touch-action:none;user-select:none;-webkit-user-select:none}.pdraw.is-passthrough{pointer-events:none;cursor:grab}.pdraw-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pdraw-svg path{filter:drop-shadow(0 0 6px rgba(34,211,238,.35))}.pdraw-hint>svg{color:#67e8f9}.rv-pending{opacity:0}.rv-fade{animation:rv-in-fade var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-scale{animation:rv-in-scale var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.9,.3,1.3)) var(--rv-delay, 0s) both}.rv-slide-up{animation:rv-in-slide-up var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-slide-down{animation:rv-in-slide-down var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-slide-left{animation:rv-in-slide-left var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-slide-right{animation:rv-in-slide-right var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-blur{animation:rv-in-blur var(--rv-dur, .6s) var(--rv-ease, ease-out) var(--rv-delay, 0s) both}.rv-flip{animation:rv-in-flip var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.2,.7,.2,1)) var(--rv-delay, 0s) both}.rv-instant{animation:rv-in-pop 1ms linear var(--rv-delay, 0s) both}.rv-dom{animation:rv-in-fade var(--rv-dur, .35s) var(--rv-ease, ease-out) var(--rv-delay, 0s) both}.rv-out-fade{animation:rv-out-fade var(--rv-dur, .6s) var(--rv-ease, ease-in) var(--rv-delay, 0s) forwards}.rv-out-scale{animation:rv-out-scale var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-slide-up{animation:rv-out-slide-up var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-slide-down{animation:rv-out-slide-down var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-slide-left{animation:rv-out-slide-left var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-slide-right{animation:rv-out-slide-right var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-blur{animation:rv-out-blur var(--rv-dur, .6s) var(--rv-ease, ease-in) var(--rv-delay, 0s) forwards}.rv-out-flip{animation:rv-out-flip var(--rv-dur, .6s) var(--rv-ease, cubic-bezier(.4,0,.7,.2)) var(--rv-delay, 0s) forwards}.rv-out-instant{animation:rv-out-pop 1ms linear var(--rv-delay, 0s) forwards}@keyframes rv-in-fade{0%{opacity:0}to{opacity:1}}@keyframes rv-in-scale{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes rv-in-slide-up{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes rv-in-slide-down{0%{opacity:0;transform:translateY(-40px)}to{opacity:1;transform:translateY(0)}}@keyframes rv-in-slide-left{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes rv-in-slide-right{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes rv-in-blur{0%{opacity:0;filter:blur(14px)}to{opacity:1;filter:blur(0)}}@keyframes rv-in-flip{0%{opacity:0;transform:perspective(700px) rotateY(80deg)}to{opacity:1;transform:perspective(700px) rotateY(0)}}@keyframes rv-in-pop{0%{opacity:0}to{opacity:1}}@keyframes rv-out-fade{0%{opacity:1}to{opacity:0}}@keyframes rv-out-scale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@keyframes rv-out-slide-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-40px)}}@keyframes rv-out-slide-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(40px)}}@keyframes rv-out-slide-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-50px)}}@keyframes rv-out-slide-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(50px)}}@keyframes rv-out-blur{0%{opacity:1;filter:blur(0)}to{opacity:0;filter:blur(14px)}}@keyframes rv-out-flip{0%{opacity:1;transform:perspective(700px) rotateY(0)}to{opacity:0;transform:perspective(700px) rotateY(-80deg)}}@keyframes rv-out-pop{0%{opacity:1}to{opacity:0}}.rv-run,.rv-ch,.rv-word,.rv-line{position:static!important;float:none!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;outline:none!important;background:none!important;box-shadow:none!important;filter:none!important;clip-path:none!important;overflow:visible!important;font:inherit!important;color:inherit!important;letter-spacing:inherit!important;word-spacing:inherit!important;text-transform:inherit!important;text-shadow:inherit!important;text-decoration:none!important;line-height:inherit!important;white-space:inherit!important;vertical-align:baseline!important;visibility:inherit!important;pointer-events:inherit!important}.rv-run{display:inline!important}.rv-ch{display:inline!important;animation:rv-ch-in .04s var(--rv-ease, linear) both}.rv-word{display:inline-block!important;animation:rv-word-in .3s var(--rv-ease, cubic-bezier(.2,.7,.2,1)) both}.rv-line{display:inline-block!important;animation:rv-line-in .45s var(--rv-ease, cubic-bezier(.2,.7,.2,1)) both}.rv-caret{display:inline-block!important;position:static!important;float:none!important;width:2px!important;height:1em!important;min-width:0!important;max-width:none!important;margin:0 0 0 1px!important;padding:0!important;border:0!important;border-radius:1px!important;vertical-align:-.12em!important;background:currentColor!important;box-shadow:none!important;pointer-events:none!important;animation:rv-caret-blink 1s steps(2,start) infinite}@keyframes rv-ch-in{0%{opacity:0}to{opacity:1}}@keyframes rv-word-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes rv-line-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes rv-tbl-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes rv-tbl-col{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:none}}@keyframes rv-caret-blink{to{opacity:0}}.rv-trow,.rv-tcol,.rv-tcell{animation-fill-mode:both;animation-timing-function:var(--rv-ease, cubic-bezier(.2,.7,.2,1))}.rv-trow{animation-name:rv-tbl-in;animation-duration:.45s}.rv-tcol{animation-name:rv-tbl-col;animation-duration:.4s}.rv-tcell{animation-name:rv-tbl-in;animation-duration:.38s}.fx-highlight.rv-highlight{animation:rv-ring-in .25s var(--rv-ease, ease-out) both,rv-ring-pulse 1.2s var(--rv-ease, ease-in-out) .25s infinite}.fx-highlight.rv-highlight.is-ending{animation:rv-ring-out .35s var(--rv-ease, ease-in) forwards}.fx-edge.rv-highlight .fx-path-highlight{animation:rv-ring-in .25s var(--rv-ease, ease-out) both,rv-ring-pulse 1.2s var(--rv-ease, ease-in-out) .25s infinite}.fx-edge.rv-highlight.is-ending .fx-path-highlight{animation:rv-ring-out .35s var(--rv-ease, ease-in) forwards}@keyframes rv-ring-in{0%{opacity:0}to{opacity:1}}@keyframes rv-ring-pulse{0%,to{opacity:1}50%{opacity:.45}}@keyframes rv-ring-out{to{opacity:0}}.fx-edge .rv-edge-anim{transform-box:fill-box;transform-origin:center}.fx-edge-label .rv-label-anim{display:inline}.anims-paused :is(.rv-fade,.rv-scale,.rv-slide-up,.rv-slide-down,.rv-slide-left,.rv-slide-right,.rv-blur,.rv-flip,.rv-instant,.rv-dom,.rv-out-fade,.rv-out-scale,.rv-out-slide-up,.rv-out-slide-down,.rv-out-slide-left,.rv-out-slide-right,.rv-out-blur,.rv-out-flip,.rv-out-instant,.rv-ch,.rv-word,.rv-line,.rv-caret,.rv-highlight,.rv-trow,.rv-tcol,.rv-tcell),.anims-paused .fx-edge.rv-highlight .fx-path-highlight,.is-paused :is(.rv-ch,.rv-word,.rv-line,.rv-caret){animation-play-state:paused!important}@media(prefers-reduced-motion:reduce){.rv-word,.rv-line{animation-name:rv-ch-in}}.fx-edge[data-rv-sampled] .fx-path-highlight{animation:none!important;opacity:var(--rv-sampled-opacity, 0)}.scn-bar{--sc: var(--accent)}.scn-bar-title{font-size:13px;font-weight:600;color:var(--text)}.scn-bar-name{flex:1;min-width:0;height:24px;padding:0 6px;margin-left:-6px;text-align:left;font-size:13px;font-weight:600;color:var(--text);border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:background .12s}.scn-bar-name:hover{background:var(--panel-3)}.scn-bar-edit{flex:1;min-width:0;height:28px;margin:0}.scn-bar-edit .scn-card-input{height:26px;font-size:13px;font-weight:600}.scn-bar-color{flex:none}.scn-bar-color .color{width:28px}.scn-bar-color .color-swatch{width:28px;height:28px}.scn-bar-color .color-text{display:none}.scn-pick-hint{display:flex;align-items:flex-start;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border);font-size:12px;line-height:1.45;color:var(--text-3)}.scn-pick-hint svg{flex:none;margin-top:2px;color:var(--text-3)}.adv-presets{display:flex;flex-wrap:wrap;gap:4px;margin-top:-2px}.adv-preset{font-size:10.5px;padding:2px 7px;border-radius:6px;color:var(--text-3);background:var(--panel-2);border:1px solid var(--border);cursor:pointer;font-variant-numeric:tabular-nums}.adv-preset:hover{color:var(--text);background:var(--btn-hover)}.adv-preset.is-active{color:var(--text);background:var(--accent-soft);border-color:var(--border-2)}.scn-count{font-size:12px;color:var(--text-3)}.scn-count.is-on{color:var(--accent-2)}.scn-editor{--sc: var(--accent)}.sec-note{font-size:11px;color:var(--text-3);font-weight:500;font-variant-numeric:tabular-nums}.sec-note.is-on{color:var(--accent-2)}.sec-note.is-warn{color:var(--warning)}.scn-camera{display:flex;flex-direction:column;gap:8px}.scn-camera-row{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}.scn-camera-size{font-size:13px;font-weight:500;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.scn-camera-size.is-warn{color:var(--warning)}.scn-camera-note{font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scn-camera-acts{display:flex;flex-wrap:wrap;gap:6px}.scn-adv{margin:4px -12px -12px;border-bottom:0;border-top:1px solid var(--border)}.scn-adv .sec-trigger{padding:8px 0}.scn-adv .sec-title{font-size:12px;font-weight:500}.scn-adv .sec-body{padding-top:0}.scn-grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px}.scn-field{display:flex;align-items:center;gap:6px;min-width:0}.scn-field>span{font-size:11px;font-weight:600;color:var(--text-3);width:12px;flex:0 0 auto}.scn-field .num{flex:1;min-width:0}.tr-presets{display:flex;flex-wrap:wrap;gap:5px}.tr-chip.is-active{border-color:var(--text);color:var(--text);background:var(--accent-soft);box-shadow:none}.bez{display:flex;gap:10px;align-items:stretch}.bez-svg{flex:0 0 auto;width:140px;height:90px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;touch-action:none;overflow:visible}.bez-plot{fill:color-mix(in srgb,var(--text) 6%,transparent);stroke:var(--border-2);stroke-dasharray:2 2}.bez-axis{stroke:var(--border-2);stroke-width:1}.bez-curve{fill:none;stroke:var(--text);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.bez-hline{stroke:var(--accent);stroke-width:1;opacity:.85}.bez-handle{fill:var(--panel);stroke:var(--accent);stroke-width:2;cursor:grab}.bez-handle:hover{stroke:var(--accent-2)}.bez-handle:active{cursor:grabbing}.bez-time{stroke:var(--border-2);stroke-width:1}.bez-dot{fill:var(--panel);stroke:var(--accent-2);stroke-width:2}.bez-side{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:6px}.bez-readout{font-family:var(--mono);font-size:10.5px;color:var(--text-2);line-height:1.4;word-break:break-word}.bez-scale{display:flex;justify-content:space-between;font-size:10px;color:var(--text-3);font-variant-numeric:tabular-nums}.bez-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.bez-field{display:flex;flex-direction:column;gap:3px;min-width:0}.bez-field>span{font-size:10px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.bez-field .num-box{padding:0 4px}.bld-list{display:flex;flex-direction:column;gap:6px}.bld{background:var(--panel-2);border:1px solid var(--border);border-radius:9px;overflow:hidden;transition:border-color .12s}.bld.is-open{border-color:var(--border-2)}.bld-head{display:flex;align-items:center;gap:6px;padding:6px 6px 6px 8px;cursor:pointer;-webkit-user-select:none;user-select:none}.bld-head:hover{background:var(--panel-3)}.bld-num{width:20px;height:20px;border-radius:6px;flex:0 0 auto;background:var(--accent-soft);color:var(--accent-2);font-size:11px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.bld-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.bld-name{font-weight:600;font-size:12.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bld-name.is-auto{color:var(--text-2);font-weight:500}.bld-sum{font-size:10.5px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bld-acts{display:flex;align-items:center;flex:0 0 auto;opacity:.6;transition:opacity .12s}.bld-acts .btn--icon.btn--sm,.ovr .btn--icon.btn--sm{width:22px;height:22px}.bld:hover .bld-acts,.bld.is-open .bld-acts{opacity:1}.bld-caret{display:inline-flex;color:var(--text-3);flex:0 0 auto}.bld-body{display:flex;flex-direction:column;gap:8px;padding:6px 8px 10px;border-top:1px solid var(--border)}.bld-sub{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);margin-top:4px}.bld-targets{display:flex;flex-wrap:wrap;gap:4px}.bld-tag{display:inline-flex;align-items:center;gap:3px;max-width:100%;padding:2px 3px 2px 7px;border-radius:999px;background:var(--panel-3);border:1px solid var(--border-2);font-size:11px;color:var(--text-2)}.bld-tag>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.bld-tag button{display:inline-flex;color:var(--text-3);border-radius:50%;padding:2px;transition:color .12s,background .12s}.bld-tag button:hover{color:var(--danger-text);background:var(--danger-soft)}.bld-tag--missing{opacity:.5}.bld-tag--missing>span{text-decoration:line-through}.bld-empty{font-size:11.5px;color:var(--text-3);font-style:italic;line-height:1.45}.ovr-list{display:flex;flex-direction:column;gap:4px}.ovr{display:flex;align-items:center;gap:6px;padding:3px 3px 3px 8px;background:var(--panel-2);border:1px solid var(--border);border-radius:7px;font-size:12px;min-width:0}.ovr-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.ovr-kind{font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;flex:0 0 auto}.ovr-count{font-size:10.5px;color:var(--accent-2);font-variant-numeric:tabular-nums;flex:0 0 auto;white-space:nowrap}.ovr-empty{font-size:11.5px;color:var(--text-3);font-style:italic}.scn-banner{--sc: var(--accent);margin:0 10px 8px;padding:8px 10px;border-radius:9px;border:1px solid color-mix(in srgb,var(--sc) 55%,transparent);background:linear-gradient(135deg,color-mix(in srgb,var(--sc) 22%,var(--panel-2)),var(--panel-2));box-shadow:inset 3px 0 0 var(--sc);display:flex;flex-direction:column;gap:6px}.scn-banner-text{display:flex;flex-direction:column;gap:2px;font-size:11.5px;color:var(--text-2);line-height:1.35}.scn-banner-text strong{color:var(--text);font-size:12px}.scn-banner-acts{display:flex;gap:2px;flex-wrap:wrap}.insp-sub.is-scene{color:var(--sc, var(--accent-2));font-weight:600}.pick{display:flex;flex-direction:column;gap:4px}.pick-list{max-height:190px;overflow-y:auto;border:1px solid var(--border);border-radius:7px;background:var(--panel-2)}.pick-item{display:flex;align-items:center;gap:7px;padding:4px 8px;font-size:12px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.pick-item:hover{background:var(--panel-3)}.pick-item.is-on{color:var(--text)}.pick-item input{margin:0;accent-color:var(--accent);flex:0 0 auto}.pick-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pick-kind{font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.05em;flex:0 0 auto}.pick-foot{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--text-3);padding:0 2px}.pick-foot button{color:var(--accent-2);font-size:11px;font-weight:600}.pick-foot button:hover{text-decoration:underline}.pick-foot span{margin-left:auto}.scn-banner-acts--scene{border-top:1px solid color-mix(in srgb,var(--sc) 30%,transparent);padding-top:6px;align-items:center}.scn-banner-label{font-size:11px;color:var(--text-3);padding-right:2px}.link-btn{color:var(--accent-2);font-size:inherit;text-decoration:underline;text-underline-offset:2px}.link-btn:hover{color:var(--text)}.bld-add-scene{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:center}.num--slider .num-box:has(.num-unit){width:76px}.tv-layer{position:absolute;left:0;top:0;width:0;height:0;overflow:visible;pointer-events:none;font-family:var(--font)}.tv{position:absolute;left:0;top:0;opacity:0;will-change:transform,opacity;pointer-events:none}.tv--ghost{will-change:auto}.tv-trail{filter:saturate(1.2)}.tv-body{width:max-content;transform:translate(-50%,-50%)}.tv-icon{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:0}.tv-icon svg{display:block}.tv-token{display:block;overflow:visible}.tv-label{display:inline-block;box-sizing:border-box;font-weight:600;letter-spacing:.04em;line-height:1.2;white-space:nowrap;font-family:var(--font)}.tv-image{display:block;object-fit:cover}.tv-ghost{position:relative;width:max-content}.tv-ghost>.fx-entrance{animation:none!important}.tv-trace{position:absolute;overflow:visible;pointer-events:none}.tv-trace path{fill:none;stroke-linecap:round;stroke-linejoin:round;transition:opacity .25s ease}.tv-tail{position:absolute;overflow:visible;pointer-events:none}.tv-tail path{fill:none;stroke-linecap:round;stroke-linejoin:round}.tvd-presets{display:flex;flex-wrap:wrap;gap:5px}.tvd-kind{display:flex;align-items:center;gap:8px}.tvd-icon-btn{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 10px 0 6px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border);color:var(--text);font-size:12px;transition:border-color .12s,background .12s}.tvd-icon-btn:hover{border-color:var(--accent);background:var(--panel-3)}.tvd-icon-btn>span:first-child{display:inline-flex;line-height:0}.tvd-icon-btn>span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:130px}.tvd-stops{display:flex;flex-direction:column;gap:5px}.tvd-stop{display:flex;flex-direction:column;gap:5px;padding:6px 7px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}.tvd-stop-head{display:flex;align-items:center;gap:6px;min-width:0}.tvd-stop-head .select{flex:1;min-width:0}.tvd-stop-tag{flex:0 0 auto;min-width:34px;padding:2px 6px;border-radius:5px;text-align:center;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text);background:var(--accent-soft)}.tvd-stop-tag.is-from{color:var(--text);background:var(--accent-soft)}.tvd-stop-tag.is-to{color:#86efac;background:#22c55e24}.tvd-stop-fixed{flex:1;font-size:12px;color:var(--text-2);padding:0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tvd-stop-body{display:grid;grid-template-columns:1fr 1fr;gap:5px}.tvd-stop-body .select{min-width:0}.tvd-field{display:flex;align-items:center;gap:5px;min-width:0}.tvd-field>span{font-size:10.5px;font-weight:600;color:var(--text-3);flex:0 0 auto}.tvd-field .num{flex:1;min-width:0}.tvd-field .num-box{width:100%}.tvd-stop-head .btn--icon.btn--sm{width:22px;height:22px}.tvd-grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px}.tvd-grid2 .tvd-field>span{width:44px}.tvd-estimate{font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums}.tvd-estimate b{color:var(--accent-2);font-weight:600}.tvd-bezier{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.tvd-bezier .tvd-field{flex-direction:column;align-items:stretch;gap:2px}.tvd-bezier .tvd-field>span{text-transform:uppercase;letter-spacing:.06em;font-size:10px}.dw-layer{position:absolute;left:0;top:0;width:0;height:0;overflow:visible;pointer-events:none}.dw-ink{position:absolute;overflow:visible;pointer-events:none}.dw-pen{position:absolute;left:0;top:0;opacity:0;will-change:transform,opacity;pointer-events:none}.dw-head{position:relative;pointer-events:none}.dw-halo,.dw-core{position:absolute;left:50%;top:50%;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none}.dw-halo{mix-blend-mode:plus-lighter;filter:blur(18px);opacity:.55}.dw-halo--near{filter:blur(8px);opacity:.9}.dw-halo--mid{filter:blur(22px);opacity:.45}.dw-halo--far{filter:blur(42px);opacity:.22}.dw-core{mix-blend-mode:plus-lighter;z-index:1}@supports not (mix-blend-mode: plus-lighter){.dw-halo,.dw-core{mix-blend-mode:screen}}.dwe-cues{display:flex;flex-direction:column;gap:8px}.dwe-cue{padding:8px;border:1px solid var(--border, #262c3a);border-radius:8px;background:#ffffff08;display:flex;flex-direction:column;gap:6px}.dwe-cue-head{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:11px;color:var(--muted, #9aa3b5)}.fx-node.has-lift{will-change:transform,opacity,filter}.fx-node.is-lifted{isolation:isolate}.lfd-presets{display:flex;flex-wrap:wrap;gap:5px}.lfd-grid2{display:grid;grid-template-columns:1fr 1fr;gap:6px}.lfd-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.lfd-field{display:flex;align-items:center;gap:5px;min-width:0}.lfd-field>span{font-size:10.5px;font-weight:600;color:var(--text-3);flex:0 0 auto;width:44px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lfd-grid3 .lfd-field{flex-direction:column;align-items:stretch;gap:2px}.lfd-grid3 .lfd-field>span{width:auto;text-transform:uppercase;letter-spacing:.06em;font-size:10px}.lfd-field .num{flex:1;min-width:0}.lfd-field .num-box{width:100%}.lfd-estimate{font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums}.lfd-estimate b{color:var(--accent-2);font-weight:600}.lfd-note{font-size:11px;color:var(--text-3);line-height:1.4}.lfd-note.is-on{color:var(--accent-2)}.fx-card-host{display:block;width:max-content;position:relative}.fx-tf-layer{display:block}.fx-tf-layer.is-in{position:relative}.fx-tf-layer.is-out{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow:hidden;pointer-events:none}.fx-tf.is-run>.fx-tf-layer.is-out{animation:fx-tf-out-fade var(--fx-tf-dur, .7s) var(--fx-tf-ease, ease) both}.fx-tf.is-run>.fx-tf-layer.is-in{animation:fx-tf-in-fade var(--fx-tf-dur, .7s) var(--fx-tf-ease, ease) both}.fx-tf--morph.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-fade}.fx-tf--morph.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-fade}.fx-tf--crossfade.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-fade}.fx-tf--crossfade.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-fade}.fx-tf--fade.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-fade}.fx-tf--fade.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-fade-late}.fx-tf--scale.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-scale}.fx-tf--scale.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-scale}.fx-tf--flip.is-run{perspective:900px}.fx-tf--flip.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-flip;transform-origin:center;backface-visibility:hidden}.fx-tf--flip.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-flip;transform-origin:center;backface-visibility:hidden}.fx-tf--blur.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-blur}.fx-tf--blur.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-blur}.fx-tf--slide-up.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-up}.fx-tf--slide-up.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-up}.fx-tf--slide-down.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-down}.fx-tf--slide-down.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-down}.fx-tf--slide-left.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-left}.fx-tf--slide-left.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-left}.fx-tf--slide-right.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-right}.fx-tf--slide-right.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-right}.fx-tf--wipe.is-run>.fx-tf-layer.is-out{animation-name:fx-tf-out-fade}.fx-tf--wipe.is-run>.fx-tf-layer.is-in{animation-name:fx-tf-in-wipe}@keyframes fx-tf-out-fade{0%{opacity:1}to{opacity:0}}@keyframes fx-tf-in-fade{0%{opacity:0}to{opacity:1}}@keyframes fx-tf-in-fade-late{0%{opacity:0}45%{opacity:0}to{opacity:1}}@keyframes fx-tf-out-scale{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.86)}}@keyframes fx-tf-in-scale{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:scale(1)}}@keyframes fx-tf-out-flip{0%{opacity:1;transform:rotateY(0)}to{opacity:0;transform:rotateY(-90deg)}}@keyframes fx-tf-in-flip{0%{opacity:0;transform:rotateY(90deg)}to{opacity:1;transform:rotateY(0)}}@keyframes fx-tf-out-blur{0%{opacity:1;filter:blur(0)}to{opacity:0;filter:blur(12px)}}@keyframes fx-tf-in-blur{0%{opacity:0;filter:blur(12px)}to{opacity:1;filter:blur(0)}}@keyframes fx-tf-out-up{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-18px)}}@keyframes fx-tf-in-up{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes fx-tf-out-down{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(18px)}}@keyframes fx-tf-in-down{0%{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:translateY(0)}}@keyframes fx-tf-out-left{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-22px)}}@keyframes fx-tf-in-left{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@keyframes fx-tf-out-right{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(22px)}}@keyframes fx-tf-in-right{0%{opacity:0;transform:translate(-28px)}to{opacity:1;transform:translate(0)}}@keyframes fx-tf-in-wipe{0%{clip-path:inset(0 100% 0 0);opacity:1}to{clip-path:inset(0 0 0 0);opacity:1}}@media(prefers-reduced-motion:reduce){.fx-tf.is-run>.fx-tf-layer{animation-duration:.2s!important;animation-timing-function:ease!important}}.bld-action-seg .seg{flex-wrap:wrap}.bld-action-seg .seg-btn{flex:1 1 28%;min-width:4.4em}.tf-states{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.tf-chip-mark{font-size:8px;margin-left:4px;color:var(--accent, #22d3ee)}.ce-tf{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 14px;border-bottom:1px solid var(--border);background:var(--panel-2);flex:none;flex-wrap:wrap}.ce-tf-label{font-size:10.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);flex:none}.ce-tf .chip{cursor:pointer}.mm-modal{max-width:1800px}.mm-head-name{display:flex;align-items:center;gap:8px}.mm-type-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:999px;font-size:10.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--accent-soft);color:var(--text);border:1px solid var(--border);white-space:nowrap}.mm-type-chip.is-error{background:var(--danger-soft);color:var(--danger-text);border-color:var(--danger)}.mm-select{height:28px;padding:0 26px 0 10px;border-radius:7px;border:1px solid var(--border-2);background:var(--panel-2);color:var(--text);font:inherit;font-size:12px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-3) 50%),linear-gradient(135deg,var(--text-3) 50%,transparent 50%);background-position:calc(100% - 13px) 12px,calc(100% - 8px) 12px;background-size:5px 5px;background-repeat:no-repeat;cursor:pointer}.mm-select:hover{border-color:var(--accent)}.mm-side{display:flex;flex-direction:column;min-width:320px;max-width:70%;flex:none;background:var(--panel)}.mm-side-body{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.mm-preview{position:absolute;top:0;right:0;bottom:0;left:0;overflow:auto;padding:18px;background-color:var(--code-bg);background-image:radial-gradient(var(--stage-dots) 1.1px,transparent 1.3px);background-size:22px 22px}.mm-preview.is-busy:after{content:"";position:absolute;top:10px;right:10px;width:12px;height:12px;border-radius:50%;border:2px solid var(--border-2);border-top-color:var(--accent);animation:spin .8s linear infinite}.mm-preview-svg{min-width:100%}.mm-preview-svg svg{display:block;height:auto}.mm-preview-empty{color:var(--text-3);font-size:12.5px;padding:30px;text-align:center}.mm-opts{border-top:1px solid var(--border);padding:10px 12px 12px;display:flex;flex-direction:column;gap:8px;flex:none;max-height:42%;overflow-y:auto}.mm-opts-head{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.mm-opts-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.mm-opt{display:grid;grid-template-columns:82px 1fr;align-items:center;gap:8px;font-size:12px;color:var(--text-2)}.mm-opt>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-opt input[type=number]{width:100%;height:26px;border-radius:6px;border:1px solid var(--border-2);background:var(--panel-2);color:var(--text);padding:0 8px;font:inherit;font-size:12px}.mm-opt-check{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none}.mm-opt-check input{accent-color:var(--accent)}.mm-warnings{border-top:1px solid var(--border);padding:8px 12px;font-size:11.5px;color:var(--warning);display:flex;flex-direction:column;gap:3px;max-height:120px;overflow-y:auto;flex:none}.mm-warnings li{list-style:none}.mm-cheat{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;padding:12px 14px 20px;display:flex;flex-direction:column;gap:14px}.mm-cheat-intro{font-size:12px;color:var(--text-2);line-height:1.5}.mm-cheat-intro code{font-family:var(--mono);font-size:11px;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;padding:1px 5px;color:var(--accent-soft-text)}.mm-cheat h4{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-2)}.mm-cheat-list{display:flex;flex-direction:column;gap:2px}.mm-key{display:grid;grid-template-columns:128px 1fr;gap:10px;align-items:baseline;padding:5px 8px;border-radius:7px;text-align:left;cursor:pointer;transition:background .12s}.mm-key:hover{background:var(--panel-2)}.mm-key-name{font-family:var(--mono);font-size:11.5px;color:var(--text)}.mm-key-name small{display:block;color:var(--text-3);font-size:10px;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-key-doc{font-size:11.5px;color:var(--text-2);line-height:1.4}.mm-key-doc code{font-family:var(--mono);font-size:10.5px;color:var(--ok)}.mm-search{display:flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid var(--border-2);border-radius:8px;background:var(--panel-2);color:var(--text-3)}.mm-search input{flex:1;background:transparent;border:0;outline:none;color:var(--text);font:inherit;font-size:12.5px}.mm-live{display:inline-flex;align-items:center;gap:6px}.mm-live i{width:6px;height:6px;border-radius:50%;background:var(--text-3);display:inline-block}.mm-live.is-on i{background:var(--ok);animation:ce-pulse 2s ease-out infinite}.mm-banner{margin:0 12px 10px;padding:9px 10px 10px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);display:flex;flex-direction:column;gap:8px}.mm-banner-head{display:flex;align-items:center;gap:7px;min-width:0;color:var(--text-2)}.mm-banner-title{font-weight:700;font-size:12.5px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.mm-banner-type{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);white-space:nowrap}.mm-banner-actions{display:flex;gap:4px}.mm-row{display:flex;align-items:center;gap:4px;padding:4px 0;border-top:1px solid var(--border)}.mm-row:first-of-type{border-top:0}.mm-row-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:2px;text-align:left;padding:4px 6px;border-radius:7px}.mm-row-main:hover{background:var(--panel-2)}.mm-row-name{font-size:12.5px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.mm-row-meta{font-size:11px;color:var(--text-3)}.prim--mermaid .prim-icon{color:var(--text)}.tf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:110;background:#0009;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.tf-studio{position:fixed;top:3vh;right:2vw;bottom:3vh;left:2vw;z-index:111;display:flex;flex-direction:column;overflow:hidden;background:var(--panel);color:var(--text);border:1px solid var(--border-2);border-radius:14px;font-size:12px;outline:none}.tf-studio button,.tf-studio input,.tf-studio select{font:inherit;color:inherit}.tf-studio button{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:transparent;border:1px solid var(--border);border-radius:6px;min-height:30px;padding:5px 9px;cursor:pointer}.tf-studio button:hover:not(:disabled){background:var(--panel-3);border-color:var(--border-2)}.tf-studio button:disabled{opacity:.45;cursor:not-allowed}.tf-studio :is(button,a,input,select):focus-visible{outline:2px solid var(--text);outline-offset:2px}.tf-studio input:not([type=checkbox]),.tf-studio select{min-width:0;background:var(--panel-2);border:1px solid var(--border);border-radius:5px;padding:5px 7px;height:30px}.tf-studio input::placeholder{color:var(--text-3)}.tf-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--border)}.tf-title{display:flex;align-items:center;gap:12px}.tf-title>svg{color:var(--text-2)}.tf-title h2{margin:0;font-size:18px;font-weight:600;letter-spacing:-.025em}.tf-title h2 span,.tf-list-head strong>span{display:inline-block;vertical-align:middle;font-size:10px;padding:2px 6px;border:1px solid var(--border-2);border-radius:4px;color:var(--text-2);margin-left:5px;letter-spacing:0}.tf-title p{margin:4px 0 0;color:var(--text-2);font-size:12px}.tf-studio .tf-icon{padding:5px;border-color:transparent;min-width:28px;flex-shrink:0}.tf-access{display:flex;align-items:center;gap:9px;padding:10px 22px;border-bottom:1px solid var(--border);color:var(--text-2);background:var(--panel-2)}.tf-access span{flex:1}.tf-access a{display:flex;align-items:center;color:var(--text);font-weight:600;white-space:nowrap}.tf-toolbar{display:flex;align-items:center;gap:9px;padding:10px 16px;border-bottom:1px solid var(--border);flex-wrap:wrap}.tf-toolbar label{display:flex;align-items:center;gap:7px;color:var(--text-2)}.tf-name{margin-right:auto}.tf-name input{width:150px}.tf-example select{max-width:220px}.tf-workspace{display:grid;grid-template-columns:170px minmax(260px,.72fr) minmax(430px,1.28fr);flex:1;min-height:0}.tf-files{display:flex;flex-direction:column;overflow:hidden;border-right:1px solid var(--border);background:var(--panel)}.tf-section-head{display:flex;align-items:center;justify-content:space-between;min-height:38px;gap:8px}.tf-files>.tf-section-head{padding:4px 9px}.tf-section-head strong{font-weight:600}.tf-section-head strong span{color:var(--text-3);font-weight:400;margin-left:5px}.tf-file-list{overflow:auto;flex:1;padding:0 5px}.tf-file-list>div{display:flex;align-items:center;border-radius:4px;min-height:34px}.tf-file-list>div.is-active{background:var(--panel-3)}.tf-file-list>div>button:first-child{justify-content:flex-start;flex:1;min-width:0;border:0;padding:7px 5px}.tf-file-list svg{flex-shrink:0;color:var(--text-2)}.tf-file-list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px}.tf-studio .tf-file-remove{border:0;padding:3px;min-height:22px}.tf-source-note{display:flex;gap:8px;align-items:flex-start;padding:14px 11px;color:var(--text-2);border-top:1px solid var(--border)}.tf-source-note>svg{flex-shrink:0;margin-top:1px}.tf-source-note p{margin:0;font-size:11px;line-height:1.5}.tf-source-note span{color:var(--text-3)}.tf-download{margin:0 8px 10px;font-size:11px!important}.tf-code{display:flex;flex-direction:column;min-width:0;min-height:0;border-right:1px solid var(--border);background:var(--code-bg)}.tf-code .mona{position:relative;inset:auto;flex:1;min-height:0;overflow:hidden}.tf-code-tabs{display:flex;overflow-x:auto;flex-shrink:0;background:var(--panel);border-bottom:1px solid var(--border)}.tf-code-tabs>button{border:0;border-radius:0;white-space:nowrap;min-height:38px;color:var(--text-2)}.tf-code-tabs>button[aria-selected=true]{background:var(--code-bg);color:var(--text);box-shadow:inset 0 -2px var(--text-2)}.tf-code-note{margin:0;padding:9px 12px;border-top:1px solid var(--border);font-size:11px;color:var(--text-2);line-height:1.5}.tf-visual{display:flex;flex-direction:column;min-width:0;min-height:0}.tf-view-bar{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:6px 9px;min-height:40px;border-bottom:1px solid var(--border)}.tf-view-bar>div{display:flex;margin-right:auto;gap:2px}.tf-view-bar [role=tab]{border-color:transparent;font-size:11px;padding:5px 7px}.tf-view-bar [aria-selected=true]{background:var(--panel-3);font-weight:600}.tf-view-bar label{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-2)}.tf-view-bar select{font-size:11px}.tf-preview{position:relative;flex:1;min-height:180px;background:var(--bg);isolation:isolate}.tf-preview-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;text-align:center;color:var(--text-2);gap:14px}.tf-preview-empty strong{font-size:15px;font-weight:500}.tf-preview-empty p{max-width:310px;line-height:1.6;margin:0;color:var(--text-3)}.tf-preview-resource{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:100%;height:100%;padding:12px 14px;background:var(--panel);border:1px solid var(--border-2);border-radius:12px;color:var(--text);text-align:center}.tf-preview-resource.is-plain{border-color:transparent;background:transparent}.tf-preview-resource.is-plain img{width:48px;height:48px}.tf-preview-resource>figure{margin:0 0 3px;display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex-shrink:0;color:var(--text-2)}.tf-preview-resource img{width:38px;height:38px;object-fit:contain}.tf-preview-resource strong,.tf-preview-resource small,.tf-preview-resource span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tf-preview-resource strong{font-size:13px;font-weight:600;line-height:18px}.tf-preview-resource small,.tf-preview-resource span{font-size:10.5px;line-height:14px;color:var(--text-2)}.tf-preview-group{box-sizing:border-box;width:100%;height:100%;border:1px dashed var(--border-2);border-radius:12px;background:color-mix(in srgb,var(--panel-2) 24%,transparent);padding:10px 14px;display:flex;gap:8px;align-items:flex-start}.tf-preview-group img{width:20px;height:20px;object-fit:contain}.tf-preview-group strong{font-size:12px;font-weight:500;color:var(--text-2)}.tf-preview .react-flow__handle{opacity:0;pointer-events:none}.tf-preview .react-flow__node.selected>.tf-preview-resource,.tf-preview .react-flow__node.selected>.tf-preview-group{outline:2px solid var(--text-2);outline-offset:3px}.tf-preview .react-flow__controls-button{background:var(--panel);fill:var(--text);border-color:var(--border)}.tf-parsing{position:absolute;top:10px;right:10px;display:flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--border);padding:5px 7px;border-radius:6px;color:var(--text-2);font-size:11px}.tf-parsing>svg{animation:tf-spin 1.2s linear infinite}.tf-parsing>button{font-size:10px;min-height:22px;padding:2px 5px}.tf-legend{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:7px 12px;border-block:1px solid var(--border);font-size:10px;color:var(--text-2)}.tf-legend label{display:flex;gap:4px;align-items:center;margin-left:auto}.tf-analysis{display:grid;grid-template-columns:190px minmax(0,1fr);height:208px;max-height:36%;min-height:110px;flex-shrink:0}.tf-resource-list{display:flex;flex-direction:column;border-right:1px solid var(--border);overflow:hidden}.tf-search{display:flex;align-items:center;padding:6px 9px;gap:5px;border-bottom:1px solid var(--border);color:var(--text-2)}.tf-studio .tf-search input{background:transparent;border:0;width:100%;height:25px;padding:0;font-size:11px}.tf-resources{overflow:auto}.tf-resources>button{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:2px;width:100%;text-align:left;border:0;border-radius:0;padding:7px 10px}.tf-resources>button.is-selected{background:var(--panel-3)}.tf-resources span{font-weight:500;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}.tf-resources small{width:100%;font-size:10px;color:var(--text-2);overflow:hidden;text-overflow:ellipsis}.tf-resources em{font-size:9px;font-style:normal;color:var(--text-2)}.tf-details{padding:9px 14px;overflow:auto;min-width:0;font-size:11px}.tf-details>.tf-section-head{min-height:24px}.tf-details>strong{display:block;margin-top:8px;font-size:12px}.tf-details code{font-size:11px;overflow-wrap:anywhere;font-family:var(--mono)}.tf-details p{color:var(--text-2);line-height:1.6;margin:8px 0;max-width:65ch}.tf-details dl{margin:10px 0;display:grid;gap:7px}.tf-details dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:12px}.tf-details dt{color:var(--text-2);overflow-wrap:anywhere}.tf-details dd{margin:0;overflow-wrap:anywhere}.tf-dependency-controls{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.tf-dependency-controls select,.tf-dependency-controls button{font-size:10px;min-height:26px;height:26px}.tf-dependency-controls label{display:flex;gap:3px;align-items:center;color:var(--text-2)}.tf-details table{width:100%;border-collapse:collapse;font-size:10px;table-layout:fixed}.tf-details td,.tf-details th{border-bottom:1px solid var(--border);padding:6px 4px;text-align:left;overflow-wrap:anywhere;font-weight:400}.tf-details th{color:var(--text-2)}.tf-diagnostics{border-top:1px solid var(--border);max-height:84px;overflow:auto;padding:6px 14px;font-size:11px;color:var(--warning)}.tf-diagnostics p{display:flex;align-items:center;gap:7px;margin:3px 0}.tf-diagnostics button{justify-content:flex-start;text-align:left;border:0;padding:3px 0;min-height:22px;display:flex;width:100%}.tf-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid var(--border);min-height:51px}.tf-footer>div{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.tf-footer label{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-2)}.tf-status{display:flex;align-items:center;gap:5px;font-size:11px}.tf-status-ready{color:var(--ok)}.tf-status-error{color:var(--warning)}.tf-diff{font-size:11px;color:var(--text-2)}.tf-studio .tf-apply{background:var(--text);color:var(--panel);font-weight:600;border-color:transparent;padding:8px 14px}.tf-studio .tf-apply:hover:not(:disabled){background:var(--text-2);color:var(--panel)}.tf-loading{padding:36px;color:var(--text-2);display:flex;align-items:center;justify-content:center;flex:1}.tf-mobile-tabs{display:none}.tf-list{padding:12px}.tf-list-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.tf-list-head strong{display:flex;align-items:center;gap:6px;font-size:12px}.tf-list button,.tf-inspector-banner button{display:inline-flex;align-items:center;gap:5px;padding:6px 8px;border:1px solid var(--border);border-radius:5px;font-size:11px;background:var(--panel);color:var(--text);cursor:pointer}.tf-list p{color:var(--text-2);font-size:12px;line-height:1.6}.tf-list-row{display:flex;margin-top:9px;gap:5px}.tf-list-row>button:first-child{flex:1;justify-content:flex-start;min-width:0}.tf-list-row span{text-align:left;overflow:hidden;text-overflow:ellipsis}.tf-list-row small{display:block;color:var(--text-2);font-size:10px;margin-top:3px}.tf-inspector-banner{display:flex;align-items:center;gap:8px;margin:0 12px 10px;padding:10px;border:1px solid var(--border);border-radius:7px;font-size:11px}.tf-inspector-banner span{flex:1;min-width:0}.tf-inspector-banner small{display:block;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;margin-top:4px}.tf-inspector-banner button{flex-shrink:0}@keyframes tf-spin{to{transform:rotate(360deg)}}@media(max-width:1250px){.tf-workspace{grid-template-columns:135px minmax(220px,.7fr) minmax(360px,1.3fr)}.tf-analysis{grid-template-columns:145px minmax(0,1fr)}.tf-view-bar{gap:4px}.tf-view-bar>div{width:100%}.tf-details dl>div{grid-template-columns:95px minmax(0,1fr)}}@media(max-width:850px){.tf-studio{top:0;right:0;bottom:0;left:0;border-radius:0}.tf-header{padding:13px 14px}.tf-title p{font-size:11px}.tf-toolbar{padding:8px 12px}.tf-name{width:100%;margin:0}.tf-name input,.tf-example{flex:1}.tf-example select{width:100%;max-width:none}.tf-mobile-tabs{display:flex;gap:5px;padding:5px 12px;border-bottom:1px solid var(--border)}.tf-mobile-tabs button{flex:1;border-color:transparent}.tf-mobile-tabs [aria-pressed=true]{background:var(--panel-3)}.tf-workspace{display:flex;position:relative}.tf-workspace[data-mobile=preview] .tf-files,.tf-workspace[data-mobile=preview] .tf-code,.tf-workspace[data-mobile=code] .tf-visual{display:none}.tf-files{width:125px;flex-shrink:0}.tf-code,.tf-visual{flex:1}.tf-analysis{height:180px;grid-template-columns:125px minmax(0,1fr)}.tf-view-bar>div{width:auto}.tf-legend{gap:6px}.tf-footer{padding:8px 12px;align-items:flex-end}.tf-footer>div{gap:6px}.tf-footer>div:first-child{flex-direction:column;align-items:flex-start}.tf-footer>div:last-child{justify-content:flex-end}.tf-diff{font-size:10px}.tf-access{padding:8px 12px;font-size:11px}.tf-source-note{padding:10px 6px}.tf-source-note svg{display:none}}@media(prefers-reduced-motion:reduce){.tf-parsing>svg{animation:none}.tf-preview .animated{animation:none!important}}.tf-inspector-hint{margin:-4px 12px 10px;font-size:11px;line-height:1.45;color:var(--text-3)}.panel-scrim{position:absolute;top:0;right:0;bottom:0;left:0;z-index:19;border:0;padding:0;background:var(--overlay);cursor:pointer}@container insp (max-width: 280px){.row{grid-template-columns:1fr;align-items:start}.row-label{white-space:normal}}.editor.is-compact .tool-col{left:calc(8px - var(--tool-col-pad))}.editor.is-compact .flyout[data-variant=picker]{left:calc(16px + var(--tool-rail-w))}.editor.is-compact .flyout[data-variant=panel]{left:calc(16px + var(--tool-rail-w));top:8px;bottom:8px;width:min(var(--flyout-w),calc(100% - var(--tool-rail-w) - 28px))}.editor.is-compact .insp.is-overlay{position:absolute;top:0;right:0;bottom:0;width:min(320px,calc(100% - 24px));z-index:21;box-shadow:var(--shadow-float)}@media(max-width:1023px){button,.btn,.prim,.lib-item,.layer-row,.tab,.ci-shape,.ci-card,.scn-card,.scn-chip,.ins-row,.menu-item{touch-action:manipulation}.tabs{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{flex:none;white-space:nowrap}.home{padding:0 clamp(16px,4vw,48px) 32px}.home-hero{gap:24px;padding:32px 0;align-items:flex-start}.home-actions{width:100%}.home-user{overflow:hidden;text-overflow:ellipsis;max-width:100%}.login{padding:16px 12px calc(16px + env(safe-area-inset-bottom))}.login-card{padding:20px 16px 16px;margin-block:auto}.lp-nav{gap:12px;padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right))}.lp-nav-end{min-width:0;flex-wrap:wrap;justify-content:flex-end}.lp-main{padding:36px clamp(16px,4vw,48px) 64px;gap:48px}.lp-hero{min-height:0;gap:32px}.lp-foot{padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));padding-bottom:max(28px,env(safe-area-inset-bottom))}@media(min-width:721px){.lp-feature-grid{grid-template-columns:1fr 1fr}}.present-bar{left:max(8px,env(safe-area-inset-left));right:max(8px,env(safe-area-inset-right));bottom:max(14px,env(safe-area-inset-bottom));transform:none;width:auto;max-width:none;justify-content:flex-start;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.present-bar button{flex:none}.present-bar::-webkit-scrollbar{display:none}.present-bar.is-hidden{transform:translateY(18px)}.present-bar button.present-step{max-width:min(52vw,280px)}.present-hint{display:none}.present-notes{left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));width:auto;max-width:none;bottom:78px}.present-paused{max-width:calc(100vw - 24px);white-space:normal}.present-joy{right:max(12px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom))}.code-modal-bg{padding:8px}.ce-head,.ce-actions{flex-wrap:wrap}.ce-actions{gap:4px}.ce-title-sub,.ce-name{max-width:min(240px,55vw)}.ce-status{overflow-x:auto;scrollbar-width:none}.ce-status-keys{display:none}.mm-opts-grid{grid-template-columns:1fr}.mm-key{grid-template-columns:1fr;gap:2px 8px}.color-pop{max-width:calc(100vw - 16px)}input.input,input.tb-name-input,input.ce-name,textarea.input,select.select,.search input,.num-input,.color-text,.login-form .input{font-size:16px}}@media(max-width:719px){.editor.is-compact .insp.is-overlay{inset:auto 0 0 0;width:auto;height:min(74dvh,620px);border-left:0;border-top:1px solid var(--border);border-radius:12px 12px 0 0}.lp-hero-copy h1{font-size:clamp(34px,12vw,48px)}.lp-hero-copy p{font-size:15px}.lp-nav{padding-top:max(12px,env(safe-area-inset-top))}.lp-nav .floani-logo--wordmark{width:88px;height:28px}.prim-grid{grid-template-columns:repeat(4,1fr)}.lib-grid{grid-template-columns:repeat(3,1fr)}.shape-grid{grid-template-columns:repeat(5,1fr)}.preset-grid{grid-template-columns:repeat(3,1fr)}.home-grid{grid-template-columns:1fr}.home h1{font-size:26px}.home-nav{min-height:80px;gap:12px}.home-account{gap:6px;flex-wrap:wrap;justify-content:flex-end}.home-account .home-user{order:3;flex-basis:100%;max-width:170px;font-size:11px;text-align:right}.home-actions{display:grid;grid-template-columns:1fr 1fr}.home-actions .btn--lg{min-width:0;padding-inline:10px;font-size:12px;height:44px}.home-actions .btn--primary{grid-column:1 / -1;grid-row:1;font-size:14px}.home-library-bar{flex-wrap:wrap;gap:16px}.home-search{width:100%;height:44px}.home-error{flex-wrap:wrap}.home-empty{padding:40px 16px}.flow-card-bg{height:120px}.flow-card-actions .btn{width:40px;height:40px}.home-footer{margin-top:28px}.lp-hero-actions{width:100%}.lp-hero-actions>a{flex:1 1 100%;min-height:44px}.login{padding:16px 12px calc(16px + env(safe-area-inset-bottom))}.login-card{padding:20px 16px 16px}.login-card h1{font-size:22px}.modal{width:calc(100vw - 16px);max-height:90dvh}.modal-bg{padding:8px;align-items:flex-end}.code-modal-bg{padding:0;align-items:stretch}.code-modal{width:100%;height:100%;max-height:100%;border-radius:0;border-left:0;border-right:0}.ce-body{flex-direction:column}.ce-preview,.mm-side{width:100%!important;max-width:none;min-width:0;height:36%;flex:none}.ce-hdivider{display:none}.ce-actions .btn>span{display:none}.ce-actions .btn{width:30px;padding:0}.ce-pane-meta{display:none}.ce-field{grid-template-columns:1fr;gap:4px}.ce-status-item:nth-child(n+3){display:none}.present-step-name,.present-step-sub,.present-sep{display:none}.present-joy{bottom:88px}.share-brand span{display:none}.share-brand{padding:6px}.kbd-row{flex-wrap:wrap}.kbd-row kbd{min-width:0}.fdraw-hint{font-size:11px;padding:6px 10px;gap:6px}}@media(pointer:coarse),(max-width:719px){.editor{--tool-rail-w: 48px}.editor .tool-btn{width:40px;height:40px}.editor .undo-pill{height:88px}.editor .canvas-controls{height:44px}.editor .cc-btn,.editor .cc-zoom{height:40px}.editor .cc-btn{width:40px}.editor .editor-stage .react-flow__panel.mmap{bottom:calc(var(--panel-gap) + 52px)}.flyout .picker-tile{width:40px;height:40px}.flyout .ins-row,.menu-content .menu-item{min-height:40px}.tb .tb-btn,.tb .tb-menu-trigger,.tb .tb-project{height:40px}.tb .tb-btn--icon{width:40px}.scn-strip .scn-tr-btn,.scn-strip .scn-frames-btn{width:40px;height:40px}.scn-strip .scn-chip{height:40px}.ftabs{--ftab-h: 40px}.ftabs .ftab{min-width:108px}.ftabs .ftabs-add,.ftabs .ftabs-list{width:36px;height:36px}.ftabs .ftab-more{width:24px;height:24px}.appearance-toggle .btn{min-width:40px;height:40px}.sec-trigger,.tab,.seg-btn,.toggle{min-height:40px}.present-bar button{min-width:40px;height:40px}.present-bar button.present-step{height:40px}.present-jump button.present-jump-item{height:44px}.login-links button{min-height:44px}}@media(prefers-reduced-motion:reduce){.btn,.flow-card,.flow-card-open,.toggle-track,.toggle-thumb,.seg-btn{transition:none}}@media(hover:none){.ftab-more,.flow-card-actions,.layer-btn,.media-chip-x,.cimg-actions,.lib-actions,.bg-preset-del,.scn-card-more{opacity:1}}.admin{min-height:100%;background:var(--home-wash)}.admin-shell{max-width:1280px;margin:0 auto;padding:0 clamp(20px,5vw,72px) 48px}.admin-brand{display:flex;align-items:center;gap:14px;min-width:0}.admin-kicker{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);border:1px solid var(--border);border-radius:999px;padding:4px 10px}.admin-back{font-size:13px;color:var(--text);text-decoration:none;font-weight:600}.admin-back:hover{text-decoration:underline}.admin-nav{display:flex;gap:4px;flex-wrap:wrap;padding:16px 0 8px;border-bottom:1px solid var(--border)}.admin-nav a{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:8px;color:var(--text-2);text-decoration:none;font-size:13px;font-weight:600}.admin-nav a:hover{background:var(--panel-3);color:var(--text)}.admin-nav a.is-active{background:var(--panel);color:var(--text)}.admin-main{padding:28px 0 0}.admin-page h1{font-size:28px;font-weight:650;letter-spacing:-.03em;margin:0 0 8px}.admin-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:24px}.admin-hero p{color:var(--text-2);font-size:14px;line-height:1.6;margin:0;max-width:640px}.admin-hero-badges{display:flex;gap:8px;flex-wrap:wrap}.admin-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px;margin-bottom:32px}.admin-stat{font-size:36px;font-weight:650;letter-spacing:-.04em;margin:0 0 8px}.admin-muted{color:var(--text-3);font-size:13px}.admin-ok{color:var(--ok);font-size:13px;margin:0 0 16px}.admin-daily-cap{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:13px;font-weight:600;color:var(--text-2)}.admin-daily-cap .input{width:120px}.admin-h2{font-size:16px;margin:28px 0 12px}.admin-section{margin:8px 0 28px}.admin-table-wrap{position:relative;overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:13px}.admin-table th,.admin-table td{text-align:left;padding:10px;border-bottom:1px solid var(--border);vertical-align:middle}.admin-table th{color:var(--text-2);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.admin-table a{color:var(--text)}.admin-matrix td .input{min-width:88px}.admin-filters{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:20px}.admin-search{flex:1;min-width:200px;max-width:360px;height:38px}.admin-filters .input{width:auto;height:38px}.admin-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:10px 0}.admin-label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--text-2);flex:1;min-width:180px}.admin-check{display:inline-flex;align-items:center;gap:8px;font-size:13px}.admin-notes{min-height:88px;padding:8px;font-family:inherit}.admin-dl{display:grid;grid-template-columns:160px 1fr;gap:8px 16px;font-size:13px}.admin-dl dt{color:var(--text-2)}.admin-dl dd{margin:0}.admin-usage{margin:0;padding-left:18px;color:var(--text-2);font-size:13px;line-height:1.8}.admin-flag{border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:12px;background:var(--panel)}.admin-flag h2{margin:0 0 12px;font-size:14px}.admin-inline-badge{margin-left:8px;vertical-align:middle}.home-admin-link{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:650;color:var(--text);text-decoration:none}.home-admin-link:hover{text-decoration:underline}.integrations h1{display:flex;align-items:center;gap:10px}.integrations-card{border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--panel);margin-bottom:20px}.integrations-card h2,.integrations-secret h2{margin:0 0 8px;font-size:15px}.integrations-hint{color:var(--text-2);font-size:13px;margin:0 0 12px}.integrations-copy-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.integrations-code{flex:1;min-width:0;font-family:var(--mono);font-size:12px;padding:8px 10px;background:var(--panel-2);border:1px solid var(--border);border-radius:8px;overflow:auto}.integrations-pre{margin:12px 0 0;padding:10px 12px;background:var(--panel-2);border-radius:8px;font-size:12px;overflow:auto}.integrations-secret{border:1px solid color-mix(in srgb,var(--ok) 40%,transparent);background:color-mix(in srgb,var(--ok) 8%,var(--panel));border-radius:12px;padding:20px;margin-bottom:20px}.integrations-scopes{display:flex;flex-direction:column;gap:8px;margin:14px 0}.integrations-scope-hint{color:var(--text-3);font-weight:400}.login-blocked{text-align:left}.login-blocked h1{margin-top:12px}.login-blocked .admin-back{display:inline-block;margin-top:8px}.admin .btn a{color:inherit;text-decoration:none}@media(max-width:720px){.admin-dl{grid-template-columns:1fr}.admin-dl dt{margin-top:8px}}.admin,.billing-page{--admin-green: #68aaa2;--admin-warning: #d7aa69}html[data-theme=light] :is(.admin,.billing-page){--admin-green: #1b6d63;--admin-warning: #8a571d}.admin{--admin-green-soft: color-mix(in srgb, var(--admin-green) 11%, var(--panel));display:flex;min-height:100dvh;color:var(--text)}.admin button,.admin a,.billing-page button,.billing-page a{-webkit-tap-highlight-color:transparent}.admin :is(button,a,input,select,textarea):focus-visible,.billing-page :is(button,a):focus-visible{outline:2px solid var(--admin-green, #238578);outline-offset:4px}.admin-sidebar{width:224px;flex:0 0 224px;background:var(--panel);border-right:1px solid var(--border);position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:30px 18px 18px;z-index:30}.admin-brand{padding:0 12px;margin-bottom:38px;justify-content:space-between}.admin-workspace{display:flex;align-items:center;gap:10px;padding:10px;margin-bottom:24px;border:1px solid var(--border);border-radius:10px}.admin-workspace-mark{width:30px;height:32px;background:var(--panel-3);border-radius:7px;display:grid;place-items:center;font-size:14px;font-weight:650}.admin-workspace>div{display:flex;flex-direction:column;gap:3px}.admin-workspace strong{font-size:12px;font-weight:600}.admin-workspace span:not(.admin-workspace-mark){color:var(--text-2);font-size:11px}.admin-nav{display:flex;flex-direction:column;padding:0;border:0;gap:5px}.admin-nav a{font-size:13px;font-weight:500;padding:12px;gap:11px}.admin-nav a svg{opacity:.8}.admin-nav a.is-active{background:var(--panel-3);color:var(--text);font-weight:650}.admin-sidebar-bottom{margin-top:auto;padding-top:28px}.admin-app-link{display:flex;align-items:center;justify-content:space-between;padding:12px;font-size:12px;color:var(--text-2);text-decoration:none}.admin-app-link:hover{color:var(--text)}.admin-sidebar-account{display:flex;align-items:center;gap:9px;border-top:1px solid var(--border);margin-top:14px;padding:18px 2px 0}.admin-sidebar-account>div{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.admin-sidebar-account strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600}.admin-sidebar-account>div>span{color:var(--text-2);font-size:10px}.admin-avatar{flex-shrink:0;width:30px;height:30px;display:grid;place-items:center;background:var(--panel-3);color:var(--text-2);border-radius:50%;font-size:12px;font-weight:600}.admin-shell{max-width:none;width:calc(100% - 224px);min-width:0;margin:0 0 0 224px;padding:0}.admin-topbar{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 40px;border-bottom:1px solid var(--border);background:var(--panel)}.admin-topbar>div{display:flex;align-items:center;gap:16px;min-width:0;font-size:12px;color:var(--text-2)}.admin-topbar strong{font-weight:500;color:var(--text)}.admin-breadcrumb-divider{color:var(--text-3)}.admin-environment{display:inline-flex;align-items:center;gap:7px;padding:5px 9px;border:1px solid var(--border);border-radius:6px;font-size:11px}.admin-environment i,.admin-status i{width:5px;height:5px;border-radius:50%;background:currentColor}.admin-environment.is-production{color:var(--admin-green)}.admin-main{padding:38px 40px;max-width:1560px;margin:0 auto}.admin-page h1{font-size:27px;letter-spacing:-.035em;font-weight:600;margin-bottom:7px}.admin-hero{margin-bottom:30px;align-items:center;gap:18px}.admin-hero p{font-size:13px;color:var(--text-2)}.admin-toolbar{display:flex;align-items:center;gap:10px}.admin-range{display:flex;border:1px solid var(--border);border-radius:8px;padding:3px;background:var(--panel)}.admin-range button{font:inherit;font-size:12px;border:0;background:transparent;color:var(--text-2);padding:7px 13px;border-radius:5px;cursor:pointer}.admin-range button[aria-pressed=true]{background:var(--panel-3);color:var(--text);font-weight:600}.admin-icon-button{display:inline-grid;place-items:center;width:34px;height:34px;flex-shrink:0;padding:0;border:1px solid var(--border);border-radius:8px;background:var(--panel);color:var(--text-2);cursor:pointer}.admin-icon-button:hover{color:var(--text);background:var(--panel-3)}.admin-icon-button:disabled{opacity:.5;cursor:wait}.admin-metrics{display:grid;grid-template-columns:repeat(4,1fr);margin-bottom:30px;padding:25px 0;border-block:1px solid var(--border)}.admin-metrics>div{display:flex;flex-direction:column;gap:12px;padding:0 25px;min-width:0;border-right:1px solid var(--border)}.admin-metrics>div:first-child{padding-left:0}.admin-metrics>div:last-child{border:0;padding-right:0}.admin-metrics>div>span{color:var(--text-2);font-size:12px;font-weight:500}.admin-metrics strong{font-size:clamp(26px,2.6vw,38px);font-weight:600;letter-spacing:-.035em;font-variant-numeric:tabular-nums}.admin-metrics small{color:var(--text-2);font-size:11px;line-height:1.6}.metric-divider{padding:0 8px;color:var(--text-3)}.admin-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:22px}.admin-panel{background:var(--panel);border:1px solid var(--border);border-radius:14px;min-width:0;padding:24px}.admin-panel-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:24px}.admin-panel-head h2{font-size:14px;font-weight:600;letter-spacing:-.015em;margin:0}.admin-panel-head p{color:var(--text-2);font-size:11px;margin:6px 0 0;line-height:1.5}.admin-panel-head>a{color:var(--text-2)}.admin-panel-amount{font-weight:600;font-size:25px;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.admin-chart{position:relative}.admin-chart>svg{width:100%;display:block;overflow:visible}.chart-grid{stroke:var(--border);stroke-width:1;stroke-dasharray:3 4}.chart-label{fill:var(--text-2);font:10px var(--font)}.chart-line{fill:none;stroke:var(--admin-green);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-fill{fill:var(--admin-green-soft)}.admin-chart-empty{position:absolute;top:16px;right:0;bottom:34px;left:35px;display:flex;justify-content:center;align-items:center;flex-direction:column;gap:9px;color:var(--text-2);background:color-mix(in srgb,var(--panel) 85%,transparent)}.admin-chart-empty strong{color:var(--text);font-size:13px;font-weight:500}.admin-chart-empty span{font-size:11px;text-align:center;padding:0 15px;line-height:1.6}.admin-plan-bars{display:flex;flex-direction:column;gap:23px;margin-bottom:26px}.admin-plan-bars>div>div:first-child{display:flex;gap:8px;align-items:center;font-size:12px;margin-bottom:9px}.admin-plan-bars strong{margin-left:auto;font-variant-numeric:tabular-nums}.plan-dot{width:7px;height:7px;border-radius:2px;display:inline-block;flex-shrink:0}.plan-dot.free,.admin-bar.free{background:#8d939a}.plan-dot.pro,.admin-bar.pro{background:#68aaa2}.plan-dot.max,.admin-bar.max{background:#238578}.admin-bar-track{height:5px;border-radius:4px;background:var(--panel-3);overflow:hidden}.admin-bar{height:100%;border-radius:inherit}.admin-attention{display:flex;justify-content:space-between;gap:12px;font-size:11px;padding-top:15px}.admin-attention span{display:flex;gap:8px;align-items:center;color:var(--text-2)}.admin-subscriptions,.admin-recent-users{grid-column:1 / -1}.admin-subscriptions{padding-bottom:12px}.admin-subscriptions .admin-table-wrap{margin:0 -24px}.admin-subscriptions .admin-table :is(th,td):first-child{padding-left:24px}.admin-subscriptions .admin-table :is(th,td):last-child{padding-right:24px}.admin-table th{text-transform:none;letter-spacing:0;font-size:11px;background:var(--panel-2);padding-block:12px}.admin-table td{padding-block:15px}.admin-table tbody tr:last-child td{border-bottom:0}.admin-table tbody tr:hover{background:var(--panel-2)}.admin-table td small{font-size:11px;color:var(--text-2)}.admin-table a{text-decoration:none}.admin-table a:hover{text-decoration:underline}.numeric{font-variant-numeric:tabular-nums}.admin-plan-label{text-transform:capitalize;font-size:11px;padding:4px 7px;background:var(--panel-3);border-radius:5px}.admin-plan-label.max{background:var(--admin-green-soft);color:var(--admin-green)}.admin-status{display:inline-flex;gap:6px;align-items:center;font-size:10px;color:var(--text-2);white-space:nowrap;text-transform:capitalize}.admin-status.is-good{color:var(--admin-green)}.admin-status.is-warning{color:var(--admin-warning)}.admin-empty{display:flex;align-items:center;gap:18px;justify-content:center;padding:22px 16px 35px;color:var(--text-2)}.admin-empty h3{font-size:13px;color:var(--text);font-weight:500;margin:0 0 7px}.admin-empty p{font-size:12px;margin:0 0 13px;line-height:1.5}.admin-text-link{display:inline-flex;gap:6px;align-items:center;color:var(--text);font-size:11px;font-weight:500;text-decoration:none}.admin-text-link:hover{text-decoration:underline}.admin-empty-copy{color:var(--text-2);font-size:12px;line-height:1.8;min-height:70px;display:flex;gap:9px;align-items:center;margin:4px 0 18px}.admin-count{font-size:12px;background:var(--panel-3);border-radius:6px;padding:4px 8px}.admin-issues{list-style:none;margin:0 0 22px;padding:0}.admin-issues li{display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border);padding:12px 0;font-size:11px}.admin-issues li>svg{flex-shrink:0;color:var(--admin-warning)}.admin-issues a{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}.admin-issues li>span{margin-left:auto}.admin-activity-values{display:flex;gap:45px}.admin-activity-values>div{display:flex;flex-direction:column;gap:5px}.admin-activity-values strong{font-size:26px;font-weight:550;font-variant-numeric:tabular-nums}.admin-activity-values span{color:var(--text-2);font-size:11px}.admin-activity-chart{height:65px;display:flex;align-items:flex-end;gap:4px;margin:22px 0}.admin-activity-chart>div{background:var(--admin-green);flex:1;border-radius:2px 2px 0 0;min-width:0}.admin-user-list{list-style:none;margin:0;padding:0}.admin-user-list li{display:flex;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--border)}.admin-user-list li:last-child{border-bottom:0;padding-bottom:0}.admin-user-list a{min-width:0;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:12px;text-decoration:none}.admin-user-list time{margin-left:auto;color:var(--text-2);font-size:11px;white-space:nowrap}.admin-user-list .admin-status{margin-left:12px}.admin-dashboard-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;color:var(--text-2);font-size:10px}.admin-dashboard-footer>span{display:inline-flex;gap:10px;align-items:center}.admin-shell-footer{margin:0 40px 22px;display:flex;gap:8px;font-size:10px;color:var(--text-3)}.admin-loading{min-height:350px;display:flex;justify-content:center;align-items:center;gap:12px;color:var(--text-2);font-size:13px}.admin-error{padding:16px;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;gap:12px;font-size:13px;margin-bottom:20px;background:var(--panel)}.admin-error button{margin-left:auto;background:none;border:0;color:var(--text);text-decoration:underline;cursor:pointer}.admin-notice{color:var(--text-2);font-size:12px;margin-bottom:20px}.admin-skip{position:fixed;top:-100px;left:16px;z-index:100;padding:12px;background:var(--panel);color:var(--text)}.admin-skip:focus{top:12px}.admin-mobile-toggle,.admin-mobile-close,.admin-scrim{display:none}.is-spinning{animation:admin-spin 1.2s linear infinite}@keyframes admin-spin{to{transform:rotate(360deg)}}.telemetry-error{max-width:600px;margin:15vh auto;padding:30px}.telemetry-error p{color:var(--text-2);margin:16px 0}@media(min-width:1500px){.admin-main{padding:44px 56px}.admin-topbar{padding-inline:56px}}@media(max-width:1150px){.admin-sidebar{width:200px;flex-basis:200px;padding-inline:12px}.admin-shell{width:calc(100% - 200px);margin-left:200px}.admin-main{padding:28px 24px}.admin-topbar{padding-inline:24px}.admin-metrics>div{padding-inline:14px}.admin-metrics>div>span{min-height:28px}.admin-dashboard-grid{gap:16px}.admin-panel{padding:20px}.admin-subscriptions .admin-table-wrap{margin-inline:-20px}.admin-metrics small{font-size:10px}}@media(max-width:850px){.admin-dashboard-grid{grid-template-columns:1fr}.admin-subscriptions,.admin-recent-users{grid-column:auto}.admin-metrics{grid-template-columns:repeat(2,1fr);gap:24px 0}.admin-metrics>div:nth-child(2){border-right:0}.admin-metrics>div:nth-child(3){padding-left:0}.admin-metrics>div>span{min-height:0}.admin-chart-empty{inset-block:22px 44px}}@media(max-width:640px){.admin-sidebar{visibility:hidden;transform:translate(-100%);width:240px;transition:transform .18s ease-out}.admin-shell{width:100%;margin-left:0}.admin-menu-open .admin-sidebar{visibility:visible;transform:translate(0)}.admin-mobile-toggle,.admin-mobile-close{display:inline-grid}.admin-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;border:0;background:#0007}.admin-main{padding:26px 18px}.admin-topbar{height:64px;padding-inline:18px}.admin-topbar>div{gap:10px}.admin-topbar>div:first-child>span{display:none}.admin-environment{font-size:10px}.admin-page h1{font-size:25px}.admin-hero{gap:20px}.admin-toolbar{width:100%;justify-content:space-between}.admin-panel{padding:18px}.admin-subscriptions .admin-table-wrap{margin-inline:-18px}.admin-chart-empty strong{font-size:12px}.admin-chart-empty span{font-size:10px}.admin-chart-empty{gap:5px;inset-block:6px 30px}.admin-chart-empty svg{display:none}.admin-user-list .admin-status{display:none}.admin-dashboard-footer{align-items:flex-start;flex-direction:column}.admin-shell-footer{margin-inline:18px}.admin-empty{padding-inline:0}.admin-panel-amount{font-size:22px}.admin-metrics small{font-size:10px}}@media(prefers-reduced-motion:reduce){.is-spinning{animation:none}.admin-sidebar{transition:none}}.billing-page .app-page-head{align-items:center;gap:18px;flex-wrap:wrap}.billing-page h1{letter-spacing:-.035em}.billing-test,.billing-notice{display:flex;align-items:center;gap:10px;font-size:12px;line-height:1.7;padding:13px 17px;background:var(--panel-2);border-radius:8px;margin-bottom:22px}.billing-notice{color:var(--admin-green)}.billing-test svg,.billing-notice svg{flex-shrink:0}.billing-current{display:flex;align-items:center;gap:30px;padding:24px 0;border-block:1px solid var(--border);margin:28px 0}.billing-current>div:first-child{display:flex;flex-direction:column;gap:8px}.billing-current span{font-size:12px;color:var(--text-2)}.billing-current strong{font-size:23px;font-weight:550}.billing-current p{color:var(--text-2);font-size:12px;margin:7px 0 0;line-height:1.6}.billing-current>button{margin-left:auto}.billing-interval{display:flex;gap:15px;align-items:center;margin:34px 0 24px;flex-wrap:wrap}.billing-interval>span{font-size:11px;color:var(--text-2)}.billing-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.billing-plan{border:1px solid var(--border);border-radius:14px;padding:28px 24px;background:var(--panel);display:flex;flex-direction:column}.billing-plan.is-featured{border-color:#238578}.billing-plan-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.billing-plan-title h2{font-size:18px;font-weight:600;margin:0}.billing-plan-title span{font-size:10px;color:var(--text-2);padding:4px 7px;border-radius:4px;background:var(--panel-3)}.billing-plan>p{font-size:12px;color:var(--text-2);line-height:1.7;margin:10px 0 22px}.billing-price{display:flex;align-items:baseline;gap:4px}.billing-price strong{font-size:38px;font-weight:550;letter-spacing:-.035em}.billing-price span{font-size:12px;color:var(--text-2)}.billing-plan p.billing-price-note{font-size:10px;margin-top:6px}.billing-plan ul{list-style:none;padding:0;margin:4px 0 28px;display:flex;flex-direction:column;gap:14px;flex:1}.billing-plan li{display:flex;align-items:center;gap:9px;font-size:12px;line-height:1.6}.billing-plan li svg{color:var(--admin-green);flex-shrink:0}.billing-primary,.billing-secondary{display:inline-flex;justify-content:center;align-items:center;gap:9px;padding:11px 16px;border:1px solid var(--border);border-radius:7px;background:var(--panel);color:var(--text);font:500 12px var(--font);text-decoration:none;cursor:pointer}.billing-primary{background:#1b6d63;color:#fff;border-color:#1b6d63}.billing-primary:hover{background:#155b53}.billing-secondary:hover{background:var(--panel-3)}.billing-primary:disabled,.billing-secondary:disabled{cursor:not-allowed;opacity:.5}.billing-footer{display:flex;justify-content:center;align-items:center;gap:10px;color:var(--text-2);font-size:11px;line-height:1.7;margin-top:26px}.billing-footer svg{flex-shrink:0}@media(max-width:900px){.billing-plans{grid-template-columns:1fr}.billing-plan{padding:24px}.billing-plan ul{display:grid;grid-template-columns:1fr 1fr}.billing-current{gap:18px}}@media(max-width:480px){.billing-plan ul{grid-template-columns:1fr}.billing-current{align-items:flex-start;flex-wrap:wrap}.billing-current>div:nth-child(2){max-width:180px}.billing-footer{align-items:flex-start}}@media(max-width:640px){.admin-chart .chart-label{font-size:22px}}.admin-ai-config{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px 20px;margin-top:8px}.admin-ai-config label{display:grid;gap:6px;font-size:12px;font-weight:500}.admin-ai-config input,.admin-ai-config select{font:inherit;padding:6px 8px;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:inherit}.admin-ai-config .admin-ai-triple{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.admin-ai-config .admin-ai-check{grid-column:1 / -1;grid-template-columns:auto 1fr;align-items:center;font-weight:400}.admin-ai-runs tr.is-open td{border-bottom:none}.admin-ai-steps>td{padding:0 0 12px}.admin-table-nested{font-size:12px}.admin-table-nested th,.admin-table-nested td{padding:4px 8px}.app-shell{display:flex;height:100%;min-height:0;background:var(--bg);--tb-h: 44px;--rail-w: 48px;--rail-w-open: 240px;--agent-w: 360px}.app-col{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.app-main{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column;overflow:hidden}.app-top{display:none;align-items:center;gap:10px;height:40px;padding:0 10px;border-bottom:1px solid var(--border);background:var(--panel);font-size:13px;font-weight:600}.app-top-menu{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-2);border-radius:6px}.app-top-menu:hover{background:var(--panel-3);color:var(--text)}.app-shell.is-compact .app-top{display:flex}.app-page{--page-max: 1120px;flex:1;min-height:0;overflow-y:auto;padding:28px 32px 48px}.app-page>*{max-width:var(--page-max);margin-inline:auto}.app-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.app-page h1{font-size:22px;font-weight:650;margin:0 0 6px;letter-spacing:-.02em}.app-page p{margin:0;color:var(--text-2);font-size:13px;max-width:560px}.app-page h2{font-size:13px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.home--embedded{padding:24px 32px 48px}.home--embedded .home-shell{max-width:none}.home--embedded>div{max-width:1120px;margin-inline:auto}.home--embedded .home-hero{padding:8px 0 20px}.home--embedded .home-hero h1{font-size:22px}.chat-home,.chat-pane{flex:1;min-height:0;display:flex;flex-direction:column}.chat-scroll{flex:1;min-height:0;overflow-y:auto;padding:24px 20px 12px}.chat-home-empty{max-width:720px;margin:0 auto 24px}.chat-home-empty h1{font-size:28px;font-weight:650;letter-spacing:-.03em;margin:12px 0 8px}.chat-home-empty>p{color:var(--text-2);font-size:14px;margin:0 0 24px}.chat-recents h2,.chat-examples{margin:0 0 10px}.chat-recents h2{font-size:12px;font-weight:600;color:var(--text-3);text-transform:uppercase;letter-spacing:.06em}.chat-recent-grid,.chat-examples{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-bottom:20px}.chat-recent-card,.chat-example{display:flex;flex-direction:column;gap:6px;text-align:left;padding:12px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);text-decoration:none}.chat-recent-card:hover,.chat-example:hover{border-color:var(--border-2);background:var(--panel-3)}.chat-recent-card strong,.chat-example strong{font-size:13px}.chat-recent-card span,.chat-example span{color:var(--text-3);font-size:12px;display:flex;align-items:center;gap:4px;line-height:1.4}.chat-bubble{max-width:720px;margin:0 auto 16px}.chat-bubble.is-user{margin-left:auto;margin-right:max(0px,calc(50% - 360px))}.chat-role{font-size:11px;font-weight:600;color:var(--text-3);margin-bottom:4px}.chat-text{font-size:14px;line-height:1.55;white-space:pre-wrap}.chat-progress{font-size:13px;color:var(--text-2)}.chat-reasoning{max-width:720px;margin:0 0 10px}.chat-reasoning-trigger{display:inline-flex;align-items:center;gap:6px;margin:0;padding:0;border:0;background:transparent;color:var(--text-3);font:inherit;font-size:12px;font-weight:600;cursor:pointer}.chat-reasoning-trigger:hover{color:var(--text-2)}.chat-reasoning-chevron{transition:transform .15s ease}.chat-reasoning-trigger[data-state=open] .chat-reasoning-chevron{transform:rotate(90deg)}.chat-reasoning-content{margin-top:8px;padding:8px 10px;border-radius:8px;background:var(--panel-3);color:var(--text-3);font-size:12px;line-height:1.45}.chat-reasoning-step{margin-top:8px}.chat-reasoning-step:first-child{margin-top:0}.chat-reasoning-step strong{display:block;font-size:11px;font-weight:600;color:var(--text-2);margin-bottom:4px}.chat-reasoning-step pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:var(--mono, ui-monospace, SFMono-Regular, Menlo, monospace);font-size:11px;color:var(--text-3)}.chat-error{max-width:720px;margin:0 auto 12px;padding:10px 12px;border-radius:8px;background:var(--danger-soft);color:var(--danger-text);font-size:13px}.chat-retry{margin-top:8px;font-size:12px;font-weight:600;color:inherit;text-decoration:underline}.chat-proposal{max-width:720px;margin:0 auto 12px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.chat-proposal strong{display:block;font-size:13px;margin-bottom:4px}.chat-proposal p{margin:0;font-size:13px;color:var(--text-2);line-height:1.45}.chat-proposal-actions{display:flex;gap:8px;margin-top:10px}.chat-mode{display:flex;gap:4px;padding:2px 8px 8px}.chat-mode button{height:26px;padding:0 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--text-3)}.chat-mode button:hover{background:var(--panel-3);color:var(--text-2)}.chat-mode button.is-on{background:var(--panel-3);color:var(--text)}.chat-mode button:disabled{opacity:.4}.chat-composer{max-width:760px;width:calc(100% - 32px);margin:0 auto 16px;padding:8px;border:1px solid var(--border);border-radius:12px;background:var(--panel-2)}.chat-disabled{margin:0 8px 8px;font-size:12px;color:var(--text-3)}.chat-credits{margin:6px 8px 0;font-size:11px;color:var(--text-3)}.chat-credits a{color:var(--text-2)}.chat-credits a:hover{color:var(--text)}.chat-chips{display:flex;flex-wrap:wrap;gap:6px;padding:4px 8px 8px}.chat-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border-radius:999px;background:var(--panel-3);font-size:11px}.chat-composer-row{display:flex;align-items:flex-end;gap:6px}.chat-composer textarea{flex:1;min-height:40px;max-height:160px;resize:none;border:0;box-shadow:none;background:transparent;padding:10px 8px}.chat-icon-btn,.chat-send{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--text-2);flex:none}.chat-icon-btn:hover{background:var(--panel-3);color:var(--text)}.chat-send{background:var(--accent);color:var(--accent-fg)}.chat-send:disabled{opacity:.35}.chat-send.is-stop{background:var(--panel-3);color:var(--text)}.editor-split{flex:1;min-height:0;display:flex;min-width:0}.editor-split-group{flex:1;min-height:0;min-width:0;overflow:hidden}.editor-split-group [data-panel]{flex-direction:column!important;min-height:0;overflow:hidden}.editor-split-canvas,.editor-split-agent{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;height:100%}.editor-split-agent{flex:none;width:var(--agent-w);border-right:1px solid var(--border);background:var(--panel)}.editor-split-group .editor-split-agent{flex:1 1 0%;width:100%}.editor-split-canvas.is-hidden{display:none}.editor-split-handle{position:relative;flex:none;width:8px;margin:0 -3px 0 -5px;z-index:2;background:transparent;outline:none;cursor:col-resize}.editor-split-handle:after{content:"";position:absolute;inset:0 auto 0 50%;width:1px;transform:translate(-50%);background:var(--border);transition:background .12s,width .12s}.editor-split-handle:hover:after,.editor-split-handle:active:after{width:2px;background:var(--text-3)}.editor-split-handle:focus-visible:after{width:2px;background:var(--focus)}.editor-split-handle.is-hidden{display:none}.editor--shell{flex:1;min-height:0;min-width:0;height:100%}.editor-stage.is-parked{visibility:hidden;pointer-events:none}.ws-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:18;background:var(--bg);display:flex;flex-direction:column;min-height:0}.ws-panel-scroll,.ws-code{flex:1;min-height:0;overflow:auto;padding:12px}.ws-code{padding:28px 32px 48px}.ws-code-inner{max-width:1120px;margin:0 auto}.ws-code-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:22px}.ws-code-title h1{margin:0 0 4px;font-size:22px;font-weight:650;letter-spacing:-.02em}.ws-code-title p{margin:0;color:var(--text-2);font-size:13px}.ws-code-body{margin-top:0}.ws-sec{margin-bottom:28px}.ws-sec-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}.ws-sec-text{min-width:0}.ws-sec h2{margin:0 0 4px;font-size:14px;font-weight:600}.ws-sec p{margin:0;color:var(--text-2);font-size:12.5px;line-height:1.5;max-width:640px}.ws-sec-actions{display:flex;align-items:center;gap:6px;flex:none}.ws-stats{display:flex;flex-wrap:wrap;gap:6px 16px;margin-bottom:10px;font-size:12px;color:var(--text-3);font-variant-numeric:tabular-nums}.ws-stats span:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--text-3);margin-right:7px;vertical-align:2px;opacity:.6}.ws-list-card{border:1px solid var(--border);border-radius:10px;background:var(--panel-2);overflow:hidden}.ws-list-card .sec{border-bottom:0}.ws-list-card .tf-list{padding:12px 14px}.ws-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:36px 20px;border:1px dashed var(--border-2);border-radius:10px;color:var(--text-3);text-align:center}.ws-empty p{max-width:380px}.ws-card-grid{display:grid;grid-template-columns:repeat(auto-fill,216px);gap:12px}.ws-card{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:8px;border-radius:10px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;min-width:0;transition:border-color .12s,background .12s}.ws-card:hover{border-color:var(--border-2);background:var(--panel-3)}.ws-card:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.ws-card .card-preview{border-radius:6px}.ws-card-name{font-size:12.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-card-meta{font-size:11px;color:var(--text-3);margin-top:-4px}.ws-muted{color:var(--text-3);font-size:13px}.agent-pane{height:100%;display:flex;flex-direction:column;min-height:0}.agent-pane-head{display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;border-bottom:1px solid var(--border);font-size:12px;font-weight:600}.agent-pane-head span{flex:1}.agent-pane-close{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-2);transition:background .12s,color .12s}.agent-pane-close:hover{background:var(--panel-3);color:var(--text)}.agent-pane-close:active{background:var(--btn-hover)}.agent-pane-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.agent-empty{max-width:360px;margin:24px auto;color:var(--text-2);font-size:13px;line-height:1.5}.agent-empty p{margin:0 0 10px}.agent-scope{padding:8px 12px;border-bottom:1px solid var(--border);font-size:12px;color:var(--text-2);line-height:1.45}.agent-scope p{margin:0 0 6px}.agent-scope p:last-child{margin-bottom:0}.agent-include{display:inline-flex;align-items:center;gap:6px;margin-top:4px;color:var(--text);font-weight:500}.mobile-swap{display:flex;gap:6px;padding:6px 10px calc(6px + env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--panel)}.mobile-swap button{flex:1;height:36px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;color:var(--text-2);font-size:13px;font-weight:500}.mobile-swap button.is-on{background:var(--accent-soft);color:var(--text)}.lib-page-grid{margin-bottom:28px}.lib-page-cards{display:flex;flex-wrap:wrap;gap:12px}.lib-page-card{position:relative;width:176px;display:flex;flex-direction:column;gap:6px;padding:8px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);font-size:12px;text-align:left}.lib-page-card:hover{border-color:var(--border-2)}.lib-page-card-main{display:flex;flex-direction:column;gap:8px;padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;min-width:0}.lib-page-card.is-static .lib-page-card-main{cursor:default}.lib-page-card-main>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-page-actions{display:flex;align-items:center;gap:2px;min-height:26px;opacity:0;transition:opacity .12s}.lib-page-card:hover .lib-page-actions,.lib-page-card:focus-within .lib-page-actions{opacity:1}.lib-page-actions .btn.is-danger{margin-left:auto;color:var(--danger-text)}.lib-page-actions .btn.is-danger:hover{background:var(--danger-soft)}.lib-page-empty{margin-bottom:4px}.lib-page-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:18px}.lib-page-tools .search{flex:1 1 260px;max-width:420px}.lib-page-tags{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.lib-page-tags .chip{cursor:pointer}.lib-page-tags .chip em{font-style:normal;color:var(--text-3);margin-left:3px}.lib-page-body{display:flex;gap:20px;align-items:flex-start}.lib-page-main{flex:1;min-width:0}.lib-page-pane{flex:0 0 300px;position:sticky;top:16px;display:flex;flex-direction:column;gap:12px;padding:14px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.lib-page-pane-head{display:flex;align-items:center;gap:8px}.lib-page-pane-head h3{flex:1;min-width:0;margin:0;font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lib-page-pane-preview{display:flex;align-items:center;justify-content:center;min-height:96px;padding:10px;border-radius:8px;background:var(--panel-3);overflow:hidden}.lib-page-pane-preview img{max-width:100%;max-height:140px;object-fit:contain}.lib-page-pane-preview .lib-icon-glyph{color:var(--text)}.lib-page-pane-meta{font-size:11.5px;color:var(--text-3)}.lib-page-card.is-selected{border-color:var(--accent, #7c9cff);box-shadow:0 0 0 1px var(--accent, #7c9cff)}.lib-page-card .tag-dot{position:absolute;top:6px;right:6px;z-index:1}.lib-page-card-main .lib-page-thumb{width:160px;height:100px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:var(--panel-3);overflow:hidden;color:var(--text-2)}.lib-page-card-main .lib-page-thumb img{max-width:100%;max-height:100%;object-fit:contain}.lib-page-card-main .lib-page-thumb.is-checker{background:conic-gradient(var(--checker-a) 25%,var(--checker-b) 0 50%,var(--checker-a) 0 75%,var(--checker-b) 0) 0 0 / 14px 14px}.lib-page-sub{display:block;font-size:11px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:900px){.lib-page-body{flex-direction:column}.lib-page-pane{position:static;flex-basis:auto;width:100%}}.lib-page-note{margin:-6px 0 12px}.usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:12px}.usage-stat{padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--panel-2)}.usage-stat span{display:block;font-size:12px;color:var(--text-3);margin-bottom:6px}.usage-stat strong{font-size:22px;font-weight:650;letter-spacing:-.02em}.usage-plan{display:flex;align-items:center;gap:8px;margin:0 0 24px;font-size:13px;color:var(--text-2)}.usage-table{width:100%;max-width:720px;border-collapse:collapse;font-size:13px}.usage-table th,.usage-table td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--border)}.usage-table th{color:var(--text-3);font-weight:600;font-size:12px}.usage-table td.is-debit{color:var(--danger-text, #c44)}.usage-table td.is-credit{color:var(--text)}@media(max-width:1023px){.editor-split-agent{width:100%;border-right:0}.chat-home-empty h1{font-size:22px}}.ai-memory{margin-top:28px}.ai-memory-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ai-memory-head h2{display:inline-flex;align-items:center;gap:8px;margin:0}.ai-memory-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:6px}.ai-memory-list li{display:grid;grid-template-columns:110px 1fr auto auto;align-items:center;gap:12px;padding:8px 10px;border:1px solid var(--border);border-radius:8px;background:var(--panel)}.ai-memory-kind{font-size:11px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-3)}.ai-memory-text{font-size:13px}.ai-memory-list time{font-size:11px;color:var(--text-3);white-space:nowrap}.ai-memory-error{color:var(--danger, #d14343);font-size:13px}@media(max-width:640px){.ai-memory-list li{grid-template-columns:1fr auto}.ai-memory-kind,.ai-memory-list time{display:none}}.chat-q{margin-top:10px}.chat-q-list{list-style:none;margin:0;padding:0;display:grid;gap:12px}.chat-q-title{font-size:13px;font-weight:600;margin-bottom:6px}.chat-q-num{display:inline-block;min-width:22px;margin-right:4px;font-size:11px;font-weight:700;color:var(--text-3);letter-spacing:.02em}.chat-q-chips{display:flex;flex-wrap:wrap;gap:6px}.chat-q-chip{height:26px;padding:0 10px;border-radius:999px;border:1px solid var(--border);background:var(--panel);font-size:12px;font-weight:600;color:var(--text-2);cursor:pointer}.chat-q-chip small{font-weight:500;color:var(--text-3)}.chat-q-chip:hover:not(:disabled){background:var(--panel-3);color:var(--text)}.chat-q-chip.is-on{background:var(--panel-3);border-color:var(--accent, var(--text-3));color:var(--text)}.chat-q-chip:disabled{cursor:default;opacity:.7}.chat-q-chip:focus-visible{outline:2px solid var(--focus);outline-offset:1px}.chat-q-other{margin-top:6px;width:100%;max-width:420px;font:inherit;font-size:13px;padding:6px 8px;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:inherit}.chat-q-actions{display:flex;align-items:center;gap:8px;margin-top:10px}.chat-q-done{font-size:12px;color:var(--text-3)}.chat-wire{display:block;width:100%;margin:8px 0;border-radius:8px;background:var(--panel-3)}.chat-wire .wire-region rect{fill:color-mix(in srgb,var(--text-3) 8%,transparent);stroke:var(--border-2, var(--border))}.chat-wire .wire-region text{fill:var(--text-3);font-family:Inter,system-ui,sans-serif}.chat-wire .wire-node{fill:var(--panel);stroke:var(--text-3)}.chat-wire .wire-line{stroke:var(--text-3)}.chat-wire .is-changed rect,.chat-wire .wire-node.is-changed{stroke:var(--accent, #2f8f9d)}.chat-wire .wire-line.is-changed{stroke:var(--accent, #2f8f9d)}.chat-wire .is-dim{opacity:.45}.chat-proposal-warn{font-size:12px;color:var(--text-3);margin-top:6px}.chat-footer-row{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap}.chat-footer-row .chat-credits{margin:0;white-space:nowrap}.chat-model{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:var(--text-3)}.chat-model select{font:inherit;font-size:11px;color:var(--text-2);background:transparent;border:1px solid var(--border);border-radius:6px;padding:2px 6px}.ai-preview-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;height:34px;padding:0 10px;background:var(--panel);border-bottom:1px solid var(--border);font-size:12px;color:var(--text-2)}.ai-preview-bar-info{display:flex;align-items:center;gap:6px;min-width:0}.ai-preview-bar-info strong{color:var(--text)}.ai-preview-bar-sep{color:var(--text-3)}.ai-preview-bar-summary{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-preview-bar-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.ai-preview-bar-close{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;color:var(--text-3)}.ai-preview-bar-close:hover{background:var(--panel-3);color:var(--text)}.editor.is-ai-preview .ftabs{pointer-events:none;opacity:.55}.editor.is-ai-preview .tb-present{pointer-events:none;opacity:.5}@media(max-width:720px){.ai-preview-bar-summary{display:none}}.chat-home-split{display:grid;grid-template-columns:minmax(320px,380px) 1fr}.chat-home-split>.chat-pane{min-width:0;border-right:1px solid var(--border)}.ai-preview-stage{display:flex;flex-direction:column;min-width:0;min-height:0}.ai-preview-stage-canvas{flex:1;min-height:0;position:relative}.ai-preview-stage-canvas .flow-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}@media(max-width:900px){.chat-home-split{grid-template-columns:1fr}.chat-home-split>.chat-pane{display:none}}.menu-content{min-width:208px;padding:6px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border-2);box-shadow:var(--shadow-float);color:var(--text);font-size:13px;font-weight:500;z-index:1100}.menu-content--wide{min-width:240px}.menu-item{display:flex;align-items:center;gap:8px;height:28px;padding:0 8px;border-radius:6px;color:var(--text);font-size:13px;line-height:1;cursor:default;outline:none;-webkit-user-select:none;user-select:none}.menu-item[data-highlighted],.menu-item:focus-visible{background:var(--panel-3);color:var(--text)}.menu-item[data-disabled]{opacity:.4;pointer-events:none}.menu-item[data-state=open]{background:var(--panel-3)}.menu-item.is-danger{color:var(--danger-text)}.menu-item>svg{flex:0 0 auto;color:var(--text-2)}.menu-item--check{padding-left:28px;position:relative}.menu-check{position:absolute;left:8px;top:50%;transform:translateY(-50%);display:inline-flex;width:14px;color:var(--text)}.menu-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-shortcut{margin-left:auto;padding-left:16px;font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}.menu-chev{margin-left:auto;color:var(--text-3);flex:0 0 auto}.menu-sep{height:1px;margin:4px 2px;background:var(--border)}.menu-heading{padding:6px 8px 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.menu-tag{margin-left:auto;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--border-2);border-radius:4px;padding:1px 5px}.menu-item .menu-shortcut+.menu-tag{margin-left:8px}.tip{display:inline-flex;align-items:center;gap:8px;padding:4px 8px;border-radius:6px;background:var(--panel-2);border:1px solid var(--border-2);color:var(--text);font-size:12px;font-weight:500;box-shadow:var(--shadow-float);z-index:1200}.tip-kbd{font-family:var(--font);font-size:11px;color:var(--text-3);background:transparent;border:0;padding:0}.editor-canvas-col{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.editor-stage-wrap{flex:1;position:relative;min-height:0;min-width:0}.editor-stage-wrap.is-scene-editing:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:16;pointer-events:none;box-shadow:inset 0 0 0 2px var(--scene-color, transparent)}.editor.is-live-bg .tool-rail,.editor.is-live-bg .undo-pill,.editor.is-live-bg .canvas-controls{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,var(--panel) 96%,transparent)}.toast{position:fixed;left:50%;bottom:22px;transform:translate(-50%);width:max-content;max-width:min(360px,calc(100vw - 24px));z-index:900;padding:8px 12px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border-2);color:var(--text);font-size:12px;font-weight:500;line-height:1.4;box-shadow:var(--shadow-float)}@media(max-width:1279px){.insp{--insp-w: 300px}}.insp-bar{flex:none;display:flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 12px;border-bottom:1px solid var(--border)}.insp-bar-left{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.insp-bar-title{font-size:13px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.insp-close,.insp-head-btn{flex:none;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-2);transition:background .12s,color .12s}.insp-close:hover,.insp-head-btn:hover{background:var(--panel-3);color:var(--text)}.insp-close:active,.insp-head-btn:active{background:var(--btn-hover)}.insp-close:focus-visible,.insp-head-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.insp-tabs{display:inline-flex;align-items:center;gap:2px;height:28px;padding:2px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}.insp-tab{height:22px;min-width:72px;padding:0 10px;border-radius:6px;font-size:12px;font-weight:500;color:var(--text-2);transition:background .12s,color .12s}.insp-tab:hover{color:var(--text)}.insp-tab.is-active{background:var(--panel-3);color:var(--text)}.insp-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.insp-content{flex:1;min-height:0;display:flex;flex-direction:column;animation:insp-content-in .12s ease-out both}@keyframes insp-content-in{0%{opacity:0;transform:translate(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.insp-content{animation:none}}.insp .insp-head{align-items:flex-start;gap:8px;padding:12px 8px 8px 12px}.insp .insp-title{font-size:13px;font-weight:600;max-width:none}.insp .insp-sub{font-size:11px}.insp-head-text{flex:1;min-width:0}.insp-head-actions{display:flex;align-items:center;gap:2px;flex:none}.insp-group{border-bottom:1px solid var(--border)}.insp-group:last-child{border-bottom:0}.insp-group>.sec:last-child{border-bottom:0}.insp-group-head{margin:0;padding:12px 12px 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.insp-pack{display:flex;align-items:center;gap:8px;min-height:40px;padding:6px 8px 6px 12px;border-bottom:1px solid var(--border)}.insp-pack-icon{flex:none;color:var(--text-3)}.insp-pack-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.insp-pack-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);line-height:1.2}.insp-pack-name{font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3}.insp-pack-btn{flex:none;display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px 0 10px;border-radius:6px;border:1px solid var(--border-2);background:var(--panel-3);color:var(--text);font-size:12px;font-weight:500;transition:background .12s,border-color .12s}.insp-pack-btn:hover{background:var(--btn-hover)}.insp-pack-btn[aria-expanded=true]{background:var(--btn-hover);border-color:var(--text-3)}.insp-pack-btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.insp-pack-pop{width:240px;max-height:min(380px,60vh);overflow-y:auto;overscroll-behavior:contain}.insp-pack-item{width:100%;cursor:pointer;text-align:left}.insp-pack-item:hover,.insp-pack-item:focus-visible{background:var(--panel-3);outline:none}.insp-pack-item.is-active{color:var(--text)}.insp-pack-swatch{flex:none;width:14px;height:14px;border-radius:50%;border:1px solid var(--glass-border);box-shadow:inset 0 0 0 1px #0000001f}.insp-pack-check{flex:none;color:var(--text)}.ws-sec-actions .btn>span{display:inline-flex;align-items:center;gap:6px}.ws-sec-actions .menu-tag{margin-left:0}.tb{position:relative;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:8px;height:var(--tb-h);min-height:0;flex:none;flex-wrap:nowrap;box-sizing:border-box;padding:0 max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));background:var(--panel);border-bottom:1px solid var(--border);font-family:var(--font);-webkit-user-select:none;user-select:none}.tb-left,.tb-right{display:flex;align-items:center;gap:4px;min-width:0;height:100%}.tb-left{flex:1 1 0}.tb-right{flex:0 0 auto;margin-left:auto;justify-content:flex-end}.tb-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);order:0;flex:none;display:flex;align-items:center;justify-content:center;overflow:visible;padding:0;pointer-events:none}.tb-center>*{pointer-events:auto}.tb-menubar{display:flex;align-items:center;gap:2px;height:28px;min-width:0}.tb-menu-trigger,.tb-project{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font:500 13px/1 var(--font);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;transition:background-color .12s,color .12s}.tb-menu-trigger:hover,.tb-menu-trigger[data-highlighted],.tb-menu-trigger[data-state=open],.tb-project:hover,.tb-project[data-highlighted],.tb-project[data-state=open]{background:var(--panel-3);color:var(--text)}.tb-project{max-width:180px;padding-right:6px;font-weight:600;color:var(--text)}.tb-project-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tb-project-chev{flex:none;color:var(--text-3);opacity:0;transition:opacity .12s}.tb-project:hover .tb-project-chev,.tb-project:focus-visible .tb-project-chev,.tb-project[data-highlighted] .tb-project-chev,.tb-project[data-state=open] .tb-project-chev{opacity:1}.tb-name-input{box-sizing:border-box;width:200px;max-width:100%;height:28px;padding:0 8px;border:1px solid var(--border-2);border-radius:6px;background:var(--panel-2);color:var(--text);font:600 13px/1 var(--font);-webkit-user-select:text;user-select:text}.tb-name-input:focus-visible{outline:none;border-color:var(--focus-border);box-shadow:var(--focus-ring)}.tb-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:28px;padding:0 8px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font:500 13px/1 var(--font);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;transition:background-color .12s,color .12s}.tb-btn>svg{flex:none}.tb-btn:hover,.tb-btn[aria-expanded=true]{background:var(--panel-3);color:var(--text)}.tb-btn:active{background:var(--btn-hover)}.tb-btn.is-active{background:var(--tool-active);color:var(--text)}.tb-btn:disabled{opacity:.4;pointer-events:none}.tb-btn--icon{width:28px;padding:0}.tb .tb-btn-label{display:inline}.tb-present,.tb-present:hover{padding:0 10px 0 8px;background:var(--accent);color:var(--accent-fg);font-weight:600;width:auto}.tb-present:hover{background:var(--accent-2)}.tb-present:active{background:var(--accent-2);opacity:.92}.tb-sep{flex:none;width:1px;height:16px;margin:0 4px;background:var(--border-2)}.tb-save{display:inline-flex;align-items:center;flex:none;min-width:0;margin-left:4px;font-size:11px;line-height:1;color:var(--text-3);white-space:nowrap}.tb-save:empty{margin-left:0}.tb-save--saving,.tb-save--error{display:inline-flex;align-items:center;gap:4px;padding:0 6px}.tb-save--error{color:var(--danger-text)}.tb-save-retry{padding:0;border:0;border-radius:4px;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:2px;cursor:pointer}.tb-save-retry:hover{color:var(--text)}.tb-save--conflict{display:inline-flex;align-items:center;gap:4px;height:24px;padding:0 6px 0 8px;border:1px solid var(--warning);border-radius:6px;background:transparent;color:var(--warning);font:500 11px/1 var(--font);white-space:nowrap;cursor:default;transition:background-color .12s}.tb-save--conflict:hover,.tb-save--conflict[data-state=open]{background:color-mix(in srgb,var(--warning) 12%,transparent)}.ws-switch{display:inline-flex;align-items:center;gap:2px;box-sizing:border-box;height:28px;padding:2px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2)}.ws-switch-item{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:84px;height:22px;padding:0 10px;border:0;border-radius:6px;background:transparent;color:var(--text-2);font:500 12px/1 var(--font);white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;transition:background-color .12s,color .12s}.ws-switch-item>svg{flex:none}.ws-switch-item:hover{color:var(--text)}.ws-switch-item[aria-checked=true]{background:var(--panel-3);color:var(--text)}.ws-switch-item:focus-visible{outline:2px solid var(--focus);outline-offset:-1px}.tb-tip-hint{color:var(--text-3);font-weight:500}.menu-item--check>span:first-child>svg{width:14px;height:14px}.menu-item--sub>svg:last-child{width:14px;height:14px;margin-left:auto;color:var(--text-3)}.shortcuts-dialog{z-index:500;box-sizing:border-box;width:min(940px,calc(100vw - 32px));max-width:none;max-height:calc(100vh - 48px);overflow:auto;gap:16px;padding:20px 24px 24px;border:1px solid var(--border-2);border-radius:12px;background:var(--panel);color:var(--text);box-shadow:var(--shadow-float);font-family:var(--font)}.shortcuts-dialog>button{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--text-2);opacity:1;transition:background-color .12s,color .12s}.shortcuts-dialog>button:hover{background:var(--panel-3);color:var(--text)}.shortcuts-head{gap:4px;text-align:left;padding-right:36px}.shortcuts-title{font-size:14px;font-weight:600;letter-spacing:0;line-height:1.3}.shortcuts-sub{font-size:12px;color:var(--text-3)}.shortcuts-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 24px}.shortcuts-col{display:flex;flex-direction:column;gap:12px;min-width:0}.shortcuts-col-title{margin:0;padding-bottom:8px;border-bottom:1px solid var(--border);font-size:13px;font-weight:600;color:var(--text)}.shortcuts-group{display:flex;flex-direction:column}.shortcuts-eyebrow{margin-bottom:6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.shortcuts-grid .kbd-list{gap:2px}.shortcuts-grid .kbd-row{justify-content:space-between;gap:12px;min-height:24px;font-size:12px;color:var(--text-2)}.shortcuts-grid .kbd-row>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shortcuts-grid .kbd-row kbd{flex:none;min-width:0;margin-left:auto;border-radius:4px;color:var(--text);text-align:center;white-space:nowrap}@media(max-width:1279px){.tb .tb-btn--agent .tb-btn-label,.tb .tb-btn--share .tb-btn-label{display:none}.tb .tb-btn--agent,.tb .tb-btn--share{width:28px;padding:0}}@media(max-width:1179px){.ws-switch-item{min-width:36px;padding:0}.ws-switch-label{display:none}}.tb.is-compact{gap:4px}.tb.is-compact .tb-left,.tb.is-compact .tb-right{gap:2px}.tb.is-compact .tb-center{position:static;transform:none;flex:none}.tb.is-compact .tb-menubar{flex:0 1 auto}.tb.is-compact .tb-project{flex:0 1 auto;min-width:0;max-width:160px}.tb.is-compact .tb-save{flex:0 1 auto;overflow:hidden}.tb.is-compact .ws-switch-item{min-width:36px;padding:0}.tb.is-compact .ws-switch-label{display:none}@media(max-width:719px){.tb.is-compact .tb-project{max-width:120px}.tb-name-input{width:140px}}@media(max-width:479px){.tb .tb-present .tb-btn-label{display:none}.tb .tb-present{padding:0;width:28px}}@media(max-width:900px){.shortcuts-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.shortcuts-dialog{padding:16px}.shortcuts-grid{grid-template-columns:minmax(0,1fr)}}@media(prefers-reduced-motion:reduce){.tb-btn,.tb-menu-trigger,.tb-project,.tb-project-chev,.ws-switch-item,.tb-save--conflict{transition:none}}.ftabs{--ftab-h: 34px;flex:none;display:flex;align-items:stretch;gap:4px;box-sizing:border-box;height:var(--ftab-h);padding:0 6px 0 4px;background:var(--panel);border-bottom:1px solid var(--border);font-family:var(--font);-webkit-user-select:none;user-select:none}.ftabs-scroll{display:flex;align-items:stretch;flex:0 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:none}.ftabs-scroll::-webkit-scrollbar{display:none}.ftab{position:relative;flex:0 1 auto;width:160px;min-width:96px;display:flex;align-items:center;gap:2px;box-sizing:border-box;height:100%;padding:0 8px 0 12px;color:var(--text-2);font:500 12.5px/1 var(--font);white-space:nowrap;cursor:default;transition:background-color .12s,color .12s}.ftab:before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:1px;background:var(--border-2);transition:opacity .12s}.ftab:first-child:before,.ftab.is-active:before,.ftab.is-active+.ftab:before,.ftab:hover:before,.ftab:hover+.ftab:before{opacity:0}.ftab:hover{background:var(--panel-3);color:var(--text)}.ftab.is-active{background:var(--panel-2);color:var(--text)}.ftab.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--accent)}.ftab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ftab-name{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}.ftab-more{position:absolute;right:4px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:0;border-radius:4px;background:transparent;color:var(--text-3);opacity:0;cursor:default;transition:opacity .12s,background-color .12s,color .12s}.ftab.is-active .ftab-name{padding-right:20px}.ftab:hover .ftab-more,.ftab.is-active .ftab-more,.ftab:focus-within .ftab-more,.ftab-more[aria-expanded=true]{opacity:1}.ftab:not(.is-active):hover .ftab-more{background:var(--panel-3);box-shadow:-8px 0 8px var(--panel-3)}.ftab-more:hover,.ftab-more[aria-expanded=true]{background:var(--btn-hover);color:var(--text);box-shadow:none}.ftab:not(.is-active) .ftab-more:hover{box-shadow:-8px 0 8px var(--panel-3)}.ftab-input{flex:1 1 auto;min-width:0;box-sizing:border-box;height:22px;margin-left:-6px;padding:0 6px;border:1px solid var(--focus-border);border-radius:4px;background:var(--panel-3);color:var(--text);font:500 12.5px/1 var(--font);outline:none;box-shadow:var(--focus-ring);-webkit-user-select:text;user-select:text}.ftab.is-dragging{opacity:.45}.ftab.is-drop-before{box-shadow:inset 2px 0 0 var(--accent)}.ftab.is-drop-after{box-shadow:inset -2px 0 0 var(--accent)}.ftabs-tools{flex:none;display:flex;align-items:center;gap:2px}.ftabs-add,.ftabs-list{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--text-3);cursor:default;transition:background-color .12s,color .12s,opacity .12s}.ftabs-add:hover,.ftabs-list:hover,.ftabs-list[aria-expanded=true]{background:var(--panel-3);color:var(--text)}.ftabs-add:active{background:var(--btn-hover)}.ftabs-add.is-locked{opacity:.55}.ftabs-add.is-full{opacity:.4}.ftabs-add:focus-visible,.ftabs-list:focus-visible{outline:2px solid var(--focus);outline-offset:-1px}.ftabs-list-item{gap:8px}.ftabs-list-check{flex:none;display:inline-flex;justify-content:center;width:14px;color:var(--text)}.ftabs-list-name{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(prefers-reduced-motion:reduce){.ftab,.ftab:before,.ftab-more,.ftabs-add,.ftabs-list{transition:none}}.tool-col{position:absolute;--tool-col-pad: 28px;left:calc(var(--panel-gap) - var(--tool-col-pad));top:50%;transform:translateY(-50%);z-index:20;display:flex;flex-direction:column;gap:8px;padding:var(--tool-col-pad);max-height:calc(100% - 24px + var(--tool-col-pad) * 2);overflow:hidden auto;scrollbar-width:none;pointer-events:none}.tool-col::-webkit-scrollbar{display:none}.tool-col>*{pointer-events:auto}.tool-rail,.undo-pill{flex:none;width:var(--tool-rail-w);padding:3px;display:flex;flex-direction:column;align-items:center;border-radius:10px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-float);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.tool-rail{gap:2px}.undo-pill{height:80px;gap:0}.editor.is-live-bg .tool-rail,.editor.is-live-bg .undo-pill{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,var(--panel) 96%,transparent)}.tool-btn{position:relative;flex:none;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:8px;background:transparent;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s}.tool-btn:hover{background:var(--btn-hover);color:var(--text)}.tool-btn:active,.tool-btn.is-active{background:var(--tool-active);color:var(--text)}.tool-btn:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.tool-btn:disabled{color:var(--text-3);opacity:.4;cursor:default}.tool-btn:disabled:hover{background:transparent}.tool-btn[aria-disabled=true]{color:var(--text-3);opacity:.45;cursor:not-allowed}.tool-btn[aria-disabled=true]:hover,.tool-btn[aria-disabled=true]:active{background:transparent;color:var(--text-3)}.tool-btn>svg{flex:none}.tool-btn.has-flyout:after{content:"";position:absolute;right:4px;bottom:4px;width:0;height:0;border-style:solid;border-width:0 0 4px 4px;border-color:transparent transparent var(--text-3) transparent}.tool-btn.is-active.has-flyout:after{border-bottom-color:var(--text)}.tool-dot{position:absolute;top:5px;right:5px;width:5px;height:5px;border-radius:50%;background:var(--text);box-shadow:0 0 0 1.5px var(--panel)}.tool-sep{flex:none;align-self:stretch;height:1px;margin:6px 4px;background:var(--glass-border)}.flyout{position:absolute;left:calc(var(--panel-gap) * 2 + var(--tool-rail-w));z-index:21;display:flex;flex-direction:column;min-height:0;background:var(--panel);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-float);color:var(--text);animation:flyout-in .12s ease-out both}@keyframes flyout-in{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.flyout{animation:none}}.flyout-empty{padding:24px 12px;text-align:center;font-size:12px;color:var(--text-3)}.flyout[data-variant=picker]{width:var(--picker-w);padding:8px;gap:10px}.picker-section{display:flex;flex-direction:column;gap:6px}.picker-eyebrow{padding:2px 4px 0;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.picker-grid{display:grid;grid-template-columns:repeat(5,40px);justify-content:space-between;row-gap:8px}.picker-tile{width:40px;height:40px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--text-2);cursor:grab;transition:background .12s,color .12s}.picker-tile:hover{background:var(--panel-3);color:var(--text)}.picker-tile:active{background:var(--tool-active);color:var(--text);cursor:grabbing}.picker-tile:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.picker-tile>svg{flex:none}.picker-tip-title{color:var(--text-3);font-weight:400}.picker-tip-title:before{content:"·";margin-right:6px}.flyout[data-variant=panel]{width:var(--flyout-w);top:var(--panel-gap);bottom:var(--panel-gap)}.flyout-head{flex:none;display:flex;align-items:center;gap:8px;height:36px;padding:0 6px 0 12px;border-bottom:1px solid var(--border)}.flyout-title{flex:1;min-width:0;margin:0;font-size:13px;font-weight:600;line-height:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.flyout-close{flex:none;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--text-3);cursor:pointer;transition:background .12s,color .12s}.flyout-close:hover{background:var(--btn-hover);color:var(--text)}.flyout-close:active{background:var(--tool-active)}.flyout-close:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.flyout-body{flex:1;min-height:0;overflow-y:auto}.flyout[data-variant=panel]>.side-scroll,.flyout-tabpanel>.side-scroll{flex:1;min-height:0}.flyout-tabpanel{flex:1;min-height:0;display:flex;flex-direction:column}.flyout-tabs{flex:none;display:flex;height:28px;margin:8px 12px 4px;padding:2px;border-radius:8px;background:var(--panel-2);border:1px solid var(--border)}.flyout-tab{flex:1 1 0;min-width:0;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;font-size:12px;font-weight:500;color:var(--text-2);cursor:pointer;transition:background .12s,color .12s}.flyout-tab:hover{color:var(--text)}.flyout-tab.is-active{background:var(--panel-3);color:var(--text)}.flyout-tab:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.flyout-search{flex:none;margin:8px 12px 4px}.ins-section{padding:4px 0 6px}.ins-section+.ins-section{border-top:1px solid var(--border);margin-top:2px}.ins-eyebrow{padding:8px 12px 4px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.ins-item{padding:0 6px}.ins-row{width:100%;height:36px;display:flex;align-items:center;gap:10px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background .12s}.ins-row[draggable=true]{cursor:grab}.ins-row[draggable=true]:active{cursor:grabbing}.ins-row:hover{background:var(--panel-2)}.ins-row:active{background:var(--panel-3)}.ins-row:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ins-row[aria-disabled=true]{cursor:not-allowed;color:var(--text-3)}.ins-row[aria-disabled=true]:hover,.ins-row[aria-disabled=true]:active{background:transparent}.ins-row[aria-disabled=true] .ins-row-icon{color:var(--text-3)}.ins-row-icon{flex:none;width:18px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-2)}.ins-row:hover .ins-row-icon{color:var(--text)}.ins-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;line-height:1.15}.ins-row-title{font-size:13px;font-weight:500}.ins-row-desc{font-size:11px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ins-row .menu-tag{margin-left:0}.ins-row-chev{flex:none;color:var(--text-3);transition:transform .12s}.ins-item.is-open .ins-row-chev{transform:rotate(90deg)}.ins-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:2px 6px 8px}.ins-tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:60px;padding:8px 2px 6px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text-2);font-size:11px;line-height:1.1;text-align:center;cursor:grab;transition:border-color .12s,color .12s,background .12s}.ins-tile:hover{border-color:var(--border-2);background:var(--panel-3);color:var(--text)}.ins-tile:active{cursor:grabbing}.ins-tile:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.ins-tile-icon{display:inline-flex;align-items:center;justify-content:center;color:var(--text)}.ins-tile-icon .region-swatch{width:40px;height:24px}.ins-tile-label{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.canvas-controls{position:absolute;right:var(--panel-gap);bottom:var(--panel-gap);z-index:20;display:inline-flex;align-items:center;gap:2px;height:36px;padding:2px;border-radius:10px;background:var(--glass);border:1px solid var(--glass-border);box-shadow:var(--shadow-float);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);color:var(--text-2);font-family:var(--font)}.editor.is-live-bg .canvas-controls{backdrop-filter:none;-webkit-backdrop-filter:none;background:color-mix(in srgb,var(--panel) 96%,transparent)}.cc-btn,.cc-zoom{display:inline-flex;align-items:center;justify-content:center;height:32px;border:0;border-radius:8px;background:transparent;color:var(--text-2);cursor:pointer;transition:background-color .12s,color .12s}.cc-btn{width:32px;padding:0}.cc-btn>svg,.cc-zoom>svg{flex:0 0 auto}.cc-btn:hover,.cc-zoom:hover{background:var(--btn-hover);color:var(--text)}.cc-btn:active,.cc-zoom:active,.cc-zoom[data-state=open],.cc-btn.is-active{background:var(--tool-active);color:var(--text)}.cc-btn:focus-visible,.cc-zoom:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.cc-sep{flex:0 0 auto;width:1px;height:20px;margin:0 2px;background:var(--glass-border)}.cc-zoom{min-width:52px;gap:3px;padding:0 6px 0 8px;color:var(--text);font-size:12px;font-weight:500;line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap}.cc-zoom>svg{color:var(--text-3)}.cc-zoom:hover>svg,.cc-zoom[data-state=open]>svg{color:var(--text)}.cc-menu .menu-item--check>span:first-child>svg{width:14px;height:14px}@media(prefers-reduced-motion:reduce){.cc-btn,.cc-zoom{transition:none}}.editor .react-flow__panel.mmap{z-index:15;margin:0;right:var(--panel-gap);bottom:calc(var(--panel-gap) + 44px)}.editor.is-present .react-flow__panel.mmap{bottom:var(--panel-gap)}.mmap .react-flow__minimap{background:var(--minimap-bg);border:1px solid var(--minimap-border);border-radius:8px;overflow:hidden}.place{position:absolute;top:0;right:0;bottom:0;left:0;z-index:40;cursor:crosshair;touch-action:none;user-select:none;-webkit-user-select:none}.place.is-passthrough{pointer-events:none;cursor:grab}.flow-wrapper.tool-place .react-flow__pane{cursor:crosshair}.place-ghost{position:absolute;left:0;top:0;box-sizing:border-box;border:1.5px dashed var(--accent);border-radius:6px;background:color-mix(in srgb,var(--accent) 6%,transparent);opacity:.5;pointer-events:none;will-change:transform}.editor .recenter-pill{bottom:22px;max-width:calc(100% - 200px)}.scn-strip{--sc: var(--accent);flex:none;box-sizing:border-box;height:var(--strip-h, 112px);display:flex;align-items:stretch;gap:12px;padding:8px 12px;background:var(--panel);border-top:1px solid var(--border);font-family:var(--font)}.scn-transport{flex:none;width:72px;display:flex;align-items:center;gap:8px}.scn-tr-btn,.scn-frames-btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:var(--text-2);transition:background .12s,color .12s}.scn-tr-btn:hover,.scn-frames-btn:hover{background:var(--btn-hover);color:var(--text)}.scn-tr-btn:active,.scn-frames-btn:active{background:var(--tool-active)}.scn-tr-btn:disabled{opacity:.35;pointer-events:none}.scn-frames-btn.is-active{background:var(--tool-active);color:var(--text)}.scn-cards{flex:1;min-width:0;display:flex;align-items:stretch;gap:8px;padding:2px;overflow-x:auto;overflow-y:hidden;scroll-padding:12px;scrollbar-width:thin;scrollbar-color:var(--border-2) transparent;overscroll-behavior-x:contain}.scn-cards::-webkit-scrollbar{height:6px}.scn-cards::-webkit-scrollbar-thumb{background:var(--border-2);border-radius:3px}.scn-cards::-webkit-scrollbar-track{background:transparent}.scn-card{--sc: var(--accent);position:relative;flex:none;box-sizing:border-box;width:148px;height:92px;display:flex;flex-direction:column;padding:6px 7px 1px;border-radius:8px;border:1px solid var(--border);background:var(--panel-2);color:var(--text);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;transition:border-color .12s,background .12s,opacity .12s}.scn-card:hover{border-color:var(--border-2);background:var(--panel-3)}.scn-card:focus-visible{outline:2px solid var(--focus);outline-offset:0}.scn-card.is-active,.scn-card.is-active:hover{border-color:var(--sc);background:color-mix(in srgb,var(--sc) 10%,var(--panel-2))}.scn-card.is-hidden{opacity:.6}.scn-card.is-hidden:hover,.scn-card.is-hidden.is-active{opacity:.8}.scn-card--orig,.scn-card--add{width:96px;align-items:center;justify-content:center;gap:6px;padding:0;font-size:12px;font-weight:500;color:var(--text-2)}.scn-card--orig svg,.scn-card--add svg{color:var(--text-3);transition:color .12s}.scn-card--orig:hover,.scn-card--add:hover{color:var(--text)}.scn-card--orig:hover svg,.scn-card--add:hover svg{color:var(--text)}.scn-card--orig.is-active,.scn-card--orig.is-active:hover{border-color:var(--text-2);background:var(--panel-3);color:var(--text)}.scn-card--orig.is-active svg{color:var(--text)}.scn-card--add{border-style:dashed;border-color:var(--border-2);background:transparent}.scn-card--add:hover,.scn-card--add[data-state=open]{border-color:var(--text-3);background:var(--panel-2);color:var(--text)}.scn-card--add[data-state=open] svg{color:var(--text)}.scn-thumb{position:relative;flex:none;width:132px;height:56px;border-radius:4px;overflow:hidden;background:var(--panel-3)}.scn-card.is-active .scn-thumb{background:color-mix(in srgb,var(--sc) 12%,var(--panel-3))}.scn-thumb-svg{display:block;width:100%;height:100%}.scn-thumb-node{fill:var(--minimap-node);fill-opacity:.9}.scn-thumb-node--region{fill-opacity:.18;stroke:var(--minimap-node);stroke-width:1px;stroke-opacity:.7}.scn-thumb-frame{fill:none;stroke:var(--sc);stroke-width:1.5px}.scn-card.is-active .scn-thumb-frame{stroke-width:2px}.scn-thumb.is-none .scn-thumb-frame{stroke:var(--warning);stroke-dasharray:4 3}.scn-thumb .scn-badge{position:absolute;top:4px;left:4px}.scn-thumb-warn{position:absolute;right:4px;bottom:4px;color:var(--warning);filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}.scn-badge{flex:none;box-sizing:border-box;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:4px;background:var(--sc);color:var(--sc-fg, #ffffff);font-size:11px;font-weight:600;line-height:1;font-variant-numeric:tabular-nums;box-shadow:0 1px 2px #0000004d}.scn-card-name{margin-top:2px;font-size:12px;font-weight:500;line-height:13px;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scn-card-meta{display:flex;align-items:center;gap:4px;min-width:0;font-size:11px;line-height:12px;color:var(--text-3);white-space:nowrap}.scn-card-facts{min-width:0;overflow:hidden;text-overflow:ellipsis}.scn-card-facts .is-warn{color:var(--warning)}.scn-card-dot{margin:0 4px}.scn-card-fact{display:inline-flex;align-items:center;gap:3px;vertical-align:top}.scn-card-fact svg{flex:none}.scn-card-meta>.scn-card-fact{flex:none;color:var(--text-3)}.scn-card-edit{height:25px;margin-top:2px;display:flex;align-items:center}.scn-card-input{height:22px;padding:0 6px;font-size:12px;font-weight:500;border-radius:4px}.scn-card-menu{display:contents}.scn-card-more{position:absolute;top:10px;right:11px;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border);background:var(--panel);color:var(--text-2);opacity:0;transition:opacity .12s,background .12s,color .12s}.scn-card:hover .scn-card-more,.scn-card.is-active .scn-card-more,.scn-card:focus-within .scn-card-more,.scn-card-more[data-state=open]{opacity:1}.scn-card-more:hover,.scn-card-more[data-state=open]{background:var(--btn-hover);color:var(--text)}.scn-card.is-renaming .scn-card-more{opacity:0;pointer-events:none}.scn-strip-right{flex:none;width:140px;display:flex;align-items:center;justify-content:flex-end;gap:8px}.scn-aspect{width:100px;height:28px;padding:0 24px 0 8px;font-size:12px;font-weight:500;background-position:calc(100% - 13px) 11px,calc(100% - 8px) 11px}.scn-aspect:hover{border-color:var(--border-2)}.sf-chip.is-editing{cursor:default}.sf-chip-input{box-sizing:border-box;width:132px;height:16px;padding:0 4px;border:0;border-radius:4px;background:#00000047;color:inherit;font:inherit;font-size:11px;font-weight:600;line-height:16px;outline:none}.sf-chip-input::selection{background:#ffffff59}.sf-chip-input:focus-visible{outline:none;box-shadow:0 0 0 2px #ffffff59}.scn-strip.is-compact,.scn-strip.is-dense{height:56px;gap:8px;padding:8px}.scn-strip.is-compact .scn-cards,.scn-strip.is-dense .scn-cards{align-items:center;gap:6px}.scn-strip.is-compact .scn-strip-right,.scn-strip.is-dense .scn-strip-right{width:auto;gap:4px}.scn-strip.is-dense .scn-transport{width:auto}.scn-chip--plain{padding:0 12px;box-shadow:inset 3px 0 0 var(--sc)}.scn-chip--plain.is-active{font-weight:600}.scn-chip{--sc: var(--accent);flex:none;box-sizing:border-box;display:inline-flex;align-items:center;gap:6px;height:36px;max-width:180px;padding:0 10px 0 6px;border:1px solid var(--border);border-radius:8px;background:var(--panel-2);color:var(--text);font-size:12px;font-weight:500;line-height:1;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;outline:none;transition:border-color .12s,background .12s,opacity .12s}.scn-chip:hover{border-color:var(--border-2);background:var(--panel-3)}.scn-chip:focus-visible{outline:2px solid var(--focus);outline-offset:0}.scn-chip.is-active,.scn-chip.is-active:hover{border-color:var(--sc);background:color-mix(in srgb,var(--sc) 10%,var(--panel-2))}.scn-chip.is-hidden{opacity:.6}.scn-chip.is-hidden:hover,.scn-chip.is-hidden.is-active{opacity:.8}.scn-chip-name{min-width:0;overflow:hidden;text-overflow:ellipsis}.scn-chip--orig,.scn-chip--add{padding:0 10px 0 8px;color:var(--text-2)}.scn-chip--orig>svg,.scn-chip--add>svg{flex:none;color:var(--text-3);transition:color .12s}.scn-chip--orig:hover,.scn-chip--add:hover,.scn-chip--orig:hover>svg,.scn-chip--add:hover>svg{color:var(--text)}.scn-chip--orig.is-active,.scn-chip--orig.is-active:hover{border-color:var(--text-2);background:var(--panel-3);color:var(--text)}.scn-chip--orig.is-active>svg{color:var(--text)}.scn-chip--add{border-style:dashed;border-color:var(--border-2);background:transparent}.scn-chip--add:hover,.scn-chip--add[data-state=open]{border-color:var(--text-3);background:var(--panel-2);color:var(--text)}.scn-chip--add[data-state=open]>svg{color:var(--text)}@media(max-width:719px){.scn-strip.is-compact .scn-aspect{width:76px}}@media(prefers-reduced-motion:reduce){.scn-card,.scn-card-more,.scn-chip,.scn-tr-btn,.scn-frames-btn{transition:none}}.scn-chip-wrap{display:inline-flex;align-items:center;gap:2px;flex:none}.scn-chip-more{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:0;background:transparent;color:var(--text-2);cursor:pointer}.scn-chip-more:hover,.scn-chip-more[data-state=open]{background:var(--btn-hover);color:var(--text)}.scn-chip-more:focus-visible{outline:2px solid var(--focus);outline-offset:0}.app-rail-slot{flex:none;display:block;position:relative;z-index:50;width:var(--rail-w);transition:width .2s linear}.app-rail-slot.is-pinned{width:var(--rail-w-open)}.app-rail{position:absolute;inset:0 auto 0 0;z-index:45;width:var(--rail-w);height:auto;display:flex;flex-direction:column;background:var(--panel);border-right:1px solid var(--border);box-shadow:none;overflow:hidden;transition:width .16s cubic-bezier(.2,.8,.2,1),box-shadow .16s cubic-bezier(.2,.8,.2,1)}.app-rail[data-state=collapsed]{width:var(--rail-w)}.app-rail[data-state=expanded]{width:var(--rail-w-open)}.app-rail[data-motion=pin]{transition:width .2s linear,box-shadow .2s linear}.app-rail.is-overlay{box-shadow:var(--shadow-float)}.app-rail :is(a,button):focus-visible{outline:2px solid var(--focus);outline-offset:1px}.app-rail-head{position:relative;flex:none;display:flex;align-items:center;height:var(--tb-h);padding:0 8px}.app-rail-logo{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;height:32px;min-width:32px;padding:0 2px;border-radius:6px;color:var(--text);text-decoration:none;white-space:nowrap}.app-rail[data-state=collapsed] .app-rail-logo{justify-content:center;gap:0}.app-rail-logo:hover{background:var(--panel-3)}.app-rail-logo .floani-logo{display:block;flex:none}.app-rail-brand{font-size:13px;font-weight:600;letter-spacing:-.01em;opacity:0;transition:opacity .12s ease}.app-rail[data-state=expanded] .app-rail-brand{opacity:1}.app-rail-head .app-rail-pin{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:6px;background:none;color:var(--text-3);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .12s ease,background .12s ease,color .12s ease,visibility 0s linear .12s}.app-rail[data-state=expanded] .app-rail-head .app-rail-pin{opacity:1;visibility:visible;transition-delay:0s}.app-rail-head .app-rail-pin:hover{background:var(--panel-3);color:var(--text)}.app-rail-head .app-rail-pin:active{background:var(--btn-hover)}.app-rail-head .app-rail-pin[aria-pressed=true]{color:var(--text)}.app-rail-head .app-rail-close{display:inline-flex}.app-rail-nav{flex:none;display:flex;flex-direction:column;gap:2px;padding:4px 8px}.app-rail .app-rail-item{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;height:32px;min-height:0;margin:0;padding:0 8px;border:0;border-radius:6px;background:none;color:var(--text-2);font:inherit;font-size:13px;font-weight:500;line-height:1;text-align:left;text-decoration:none;white-space:nowrap;overflow:hidden;cursor:pointer;transition:background .12s ease,color .12s ease}.app-rail .app-rail-item>svg{flex:none}.app-rail .app-rail-item:hover{background:var(--panel-3);color:var(--text)}.app-rail .app-rail-item:active{background:var(--btn-hover)}.app-rail .app-rail-item.is-active{background:var(--accent-soft);color:var(--text)}.app-rail .app-rail-item-label{display:block;flex:1;min-width:0;overflow:hidden;text-overflow:clip;opacity:0;transition:opacity .12s ease}.app-rail .app-rail-item-kbd{display:block;flex:none;padding:0;border:0;background:none;font-family:var(--font);font-size:11px;font-weight:500;color:var(--text-3);font-variant-numeric:tabular-nums;letter-spacing:.02em;opacity:0;transition:opacity .12s ease}.app-rail[data-state=expanded] .app-rail-item-label,.app-rail[data-state=expanded] .app-rail-item-kbd{opacity:1}.app-rail[data-state=collapsed] .app-rail-item,.app-rail[data-state=collapsed] .app-rail-user{justify-content:center;gap:0;padding:0}.app-rail[data-state=collapsed] .app-rail-brand,.app-rail[data-state=collapsed] .app-rail-item-label,.app-rail[data-state=collapsed] .app-rail-item-kbd,.app-rail[data-state=collapsed] .app-rail-user-mail,.app-rail[data-state=collapsed] .app-rail-user-chev{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;opacity:0}.app-rail-recents{flex:1;min-height:0;width:calc(var(--rail-w-open) - 1px);margin-top:4px;padding:8px 8px 4px;border-top:1px solid var(--border);overflow:hidden auto;scrollbar-width:thin}.app-rail-group-label{padding:4px 8px 6px;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.app-rail-recents-empty{margin:0;padding:4px 8px 6px;font-size:12px;color:var(--text-3)}.app-rail .app-rail-recent{display:flex;align-items:center;gap:8px;height:28px;margin:0;padding:0 8px;border-radius:6px;color:var(--text-2);font-size:12px;font-weight:500;line-height:1;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background .12s ease,color .12s ease}.app-rail .app-rail-recent>svg{flex:none;color:var(--text-3)}.app-rail .app-rail-recent .app-rail-recent-name{display:block;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.app-rail .app-rail-recent time{display:block;flex:none;font-size:11px;color:var(--text-3);font-variant-numeric:tabular-nums}.app-rail .app-rail-recent:hover{background:var(--panel-3);color:var(--text)}.app-rail .app-rail-recent:hover>svg{color:var(--text-2)}.app-rail .app-rail-recent:active{background:var(--btn-hover)}.app-rail .app-rail-recent.is-active{background:var(--accent-soft);color:var(--text)}.app-rail .app-rail-recent.is-active>svg{color:var(--text)}.app-rail .app-rail-recent--all{margin-top:2px;color:var(--text-3)}.app-rail-foot{flex:none;margin-top:auto;padding:8px;border-top:1px solid var(--border)}.app-rail .app-rail-user{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;height:32px;min-width:0;margin:0;padding:0 2px;overflow:hidden;border:0;border-radius:6px;background:none;color:var(--text-2);font:inherit;font-size:12px;font-weight:500;line-height:1;text-align:left;white-space:nowrap;cursor:pointer;transition:background .12s ease,color .12s ease}.app-rail .app-rail-user:hover,.app-rail .app-rail-user[aria-expanded=true]{background:var(--panel-3);color:var(--text)}.app-rail .app-rail-user-mail{display:block;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;opacity:0;transition:opacity .12s ease}.app-rail .app-rail-user-chev{flex:none;color:var(--text-3);opacity:0;transition:opacity .12s ease}.app-rail[data-state=expanded] .app-rail-user .app-rail-user-mail,.app-rail[data-state=expanded] .app-rail-user .app-rail-user-chev{opacity:1}.app-rail-avatar{flex:none;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:var(--panel-3);border:1px solid var(--border-2);color:var(--text);font-size:12px;font-weight:600;line-height:1;-webkit-user-select:none;user-select:none}.app-rail-menu{min-width:220px}.app-rail-menu-head{display:flex;align-items:center;gap:8px;padding:4px 8px 6px;min-width:0}.app-rail-menu-id{display:flex;flex-direction:column;gap:2px;min-width:0}.app-rail-menu-name{font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-rail-menu-sub{font-size:11px;font-weight:500;color:var(--text-3)}.app-rail-strip{position:absolute;top:0;bottom:0;right:-4px;z-index:46;width:12px;cursor:e-resize;background:transparent}.app-rail-strip:after{content:"";position:absolute;top:0;bottom:0;left:6px;width:2px;background:var(--border-2);opacity:0;transition:opacity .12s ease}.app-rail-strip:hover:after{opacity:1}.app-rail-scrim{display:none}.app-shell.is-compact .app-rail-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:79;padding:0;border:0;background:var(--overlay)}.app-shell.is-compact .app-rail-slot{position:fixed;inset:0 auto 0 0;z-index:80;width:min(var(--rail-w-open),86vw);transform:translate(-110%);transition:transform .16s ease}.app-shell.is-compact .app-rail-slot.is-open{transform:none}.app-shell.is-compact .app-rail{width:100%;height:auto;box-shadow:var(--shadow-float);transition:none}.app-shell.is-compact .app-rail-recents{width:100%}.app-shell.is-compact .app-rail-strip{display:none}@media(pointer:coarse){.app-rail .app-rail-item,.app-rail .app-rail-user{height:40px}.app-rail .app-rail-recent{height:36px}}@media(prefers-reduced-motion:reduce){.app-rail-slot,.app-rail,.app-shell.is-compact .app-rail-slot,.app-rail-brand,.app-rail-head .app-rail-pin,.app-rail .app-rail-item-label,.app-rail .app-rail-item-kbd,.app-rail .app-rail-user-mail,.app-rail .app-rail-user-chev{transition:none}}.appearance-toggle{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--border);border-radius:6px;background:var(--panel-2)}.dlg-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1150;background:var(--overlay);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);animation:dlg-fade .16s ease-out both}.dlg{position:fixed;z-index:1150;left:50%;top:50%;transform:translate(-50%,-50%);width:min(440px,calc(100vw - 32px));background:var(--panel);border:1px solid var(--border-2);border-radius:12px;box-shadow:var(--shadow);color:var(--text);outline:none;animation:dlg-pop .18s cubic-bezier(.2,.8,.3,1) both}.dlg-form{display:flex;flex-direction:column}.dlg-body{display:flex;gap:14px;padding:20px 20px 16px}.dlg-icon{flex:none;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;background:var(--accent-soft);color:var(--accent-soft-text)}.dlg-icon--danger{background:var(--danger-soft);color:var(--danger-text)}.dlg-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.dlg-title{margin:0;font-size:15px;font-weight:650;line-height:1.3;letter-spacing:-.01em;overflow-wrap:anywhere}.dlg-desc{margin:0;font-size:13px;line-height:1.5;color:var(--text-2);overflow-wrap:anywhere}.dlg-desc p{margin:0 0 6px}.dlg-desc p:last-child{margin-bottom:0}.dlg-desc strong,.dlg-desc b{color:var(--text);font-weight:600}.dlg-desc code{font-family:var(--mono);font-size:12px;background:var(--panel-3);padding:1px 5px;border-radius:4px}.dlg-field{display:flex;flex-direction:column;gap:6px;margin-top:8px}.dlg-label{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.dlg-input{height:34px;padding:6px 10px;font-size:13px}.dlg-input:focus{border-color:var(--focus-border);box-shadow:var(--focus-ring)}.dlg-input.is-invalid,.dlg-input.is-invalid:focus{border-color:var(--danger)}.dlg-error{font-size:12px;color:var(--danger-text)}.dlg-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px 16px;border-top:1px solid var(--border)}.dlg-foot .btn{min-width:84px;height:32px;font-size:13px}.dlg-foot .btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.dlg-btn--danger,.dlg-btn--danger:hover{background:var(--danger);color:#fff;border-color:var(--danger)}.dlg-btn--danger:hover{filter:brightness(1.08)}.dlg-foot .btn[aria-disabled=true]{opacity:.55}@keyframes dlg-fade{0%{opacity:0}to{opacity:1}}@keyframes dlg-pop{0%{opacity:0;transform:translate(-50%,calc(-50% + 6px)) scale(.98)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}@media(prefers-reduced-motion:reduce){.dlg-overlay,.dlg{animation:none}}@media(max-width:520px){.dlg{top:auto;bottom:12px;transform:translate(-50%);width:calc(100vw - 24px)}.dlg-foot{flex-direction:column-reverse}.dlg-foot .btn{width:100%;height:38px}@keyframes dlg-pop{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}}.bg-motion[data-ambient-time],.bg-motion[data-ambient-time] *{animation-play-state:paused!important}.bg-motion[data-ambient-time]:not(.bg-motion--custom) *{animation-timing-function:var(--bgm-easing)!important}.fx-path[data-ambient-time] .fx-path-highlight{animation-play-state:paused!important}.path-editor-overlay{position:absolute;inset:0 auto auto 0;width:0;height:0;pointer-events:none;z-index:9}.path-editor-lines{position:absolute;overflow:visible;pointer-events:none}.path-editor-curve{fill:none;stroke:var(--accent);stroke-width:2;vector-effect:non-scaling-stroke}.path-editor-curve.is-selected{stroke:var(--text);stroke-width:3}.path-editor-hit{fill:none;stroke:transparent;stroke-width:16;vector-effect:non-scaling-stroke;pointer-events:stroke;cursor:crosshair}.path-editor-tangent{stroke:var(--text-2);stroke-width:1;stroke-dasharray:4 3;vector-effect:non-scaling-stroke}.path-editor-handle{position:absolute;width:28px;height:28px;margin:0;padding:0;transform:translate(-50%,-50%) scale(calc(1 / var(--path-zoom)));transform-origin:center;border:1px solid var(--text-2);border-radius:50%;background:var(--panel);color:var(--text);font:600 11px var(--font);line-height:1;display:grid;place-items:center;cursor:grab;pointer-events:auto;touch-action:none}.path-editor-handle:hover{border-color:var(--accent)}.path-editor-handle:active{cursor:grabbing}.path-editor-handle.is-selected{background:var(--text);color:var(--panel);border-color:var(--text)}.path-editor-handle.is-attached{cursor:default;border-style:dashed}.path-editor-handle.is-control{border:0;border-radius:0;background:transparent}.path-editor-handle.is-control>span{width:10px;height:10px;background:var(--panel);border:1.5px solid var(--text-2)}.path-editor-handle.is-control.is-selected>span{background:var(--text);border-color:var(--text)}.path-editor-handle.is-axis>span{display:grid;place-items:center;width:18px;height:18px;font-size:10px;color:var(--text)}.path-editor-handle.is-axis.is-selected>span{color:var(--panel)}.path-editor-handle:focus-visible{outline:2px solid var(--focus);outline-offset:3px}.path-editor-panel{width:286px;max-width:calc(100% - 24px);max-height:calc(100% - 24px);overflow-y:auto;display:grid;gap:10px;padding:12px;background:var(--panel);border:1px solid var(--border);border-radius:10px;color:var(--text);overscroll-behavior:contain;container:path-editor / inline-size}.path-editor-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.path-editor-heading strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.path-editor-navigation{display:flex;flex-wrap:wrap;gap:4px}.path-editor-panel p{margin:0}.path-editor-coordinates{display:grid;gap:8px}.path-editor-check{display:flex;align-items:center;gap:8px;font-size:11px;line-height:1.5}.path-editor-check input{flex:0 0 auto;accent-color:var(--text)}.path-editor-status{font-size:11px;line-height:1.5;overflow-wrap:anywhere}.path-editor-status:empty{display:none}.path-editor-section{min-width:0;margin:4px 0 0;padding:12px 0 0;border:0;border-top:1px solid var(--border);display:grid;gap:10px}.path-editor-section legend{padding:0;font-size:12px;font-weight:600}.path-editor-route-stops,.path-editor-wire-list{margin:0;padding:0;list-style:none;display:grid;gap:14px}.path-editor-route-stops li,.path-editor-wire-list li{min-width:0;display:grid;gap:8px}.path-editor-wire-list span,.path-editor-section summary{font-size:11px;overflow-wrap:anywhere}.path-editor-section details{min-width:0}.path-editor-section details[open]{display:grid;gap:8px}.path-editor-stop-title{background:none;border:0;color:var(--text);text-align:left;padding:0;font:600 11px var(--font);cursor:pointer}.path-editor-freehand{position:absolute;top:0;right:0;bottom:0;left:0;z-index:8;cursor:crosshair;touch-action:none}.path-editor-panel{z-index:10!important}.path-editor-panel :is(select,input,button):focus-visible{outline:2px solid var(--focus);outline-offset:2px}@media(max-width:640px){.path-editor-panel{max-height:44%}.path-editor-panel :is(select,.num-input,.btn){min-height:32px}}@container path-editor (max-width: 230px){.path-editor-panel .row{grid-template-columns:minmax(0,1fr)}.path-editor-panel .row-label{white-space:normal}}.path-editor-overlay.is-drawing :is(.path-editor-hit,.path-editor-handle){pointer-events:none}.bld-expand{display:flex;align-items:center;gap:7px;padding:0;flex:1;min-width:0;color:inherit;background:none;border:0;text-align:left;cursor:pointer;font:inherit}.bld-expand:focus-visible{outline:2px solid var(--accent, #5cbcc9);outline-offset:3px;border-radius:4px}.bld-expand .bld-title{min-width:0}.bld-link-error{color:var(--danger, #ed8078);font-size:11px;line-height:1.5;margin:6px 0}.insp-subject-switch{display:flex;padding:6px 12px;gap:4px;border-bottom:1px solid var(--border)}.insp-subject-switch button{flex:1;color:var(--muted);background:none;border:0;border-radius:5px;padding:6px;font:inherit;font-size:11px;cursor:pointer}.insp-subject-switch button[aria-selected=true]{color:var(--text);background:var(--panel-3)}.motion-response{margin:10px 0 14px}.motion-response svg{display:block;width:100%;max-height:110px;overflow:visible}.motion-response-scale{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.motion-response .hint{margin-top:6px}.motion-spring-fields{padding:4px 0 12px}.motion-link-channels{display:flex;flex-wrap:wrap;gap:8px 12px;padding:8px 0}.camera-edit{display:grid;gap:12px;min-width:0}.camera-edit-group{display:grid;gap:10px;margin:3px 0 0;padding:12px 0 0;border:0;border-top:1px solid var(--border);min-width:0}.camera-edit-group legend{padding:0 6px 0 0;font-size:11px;font-weight:600;color:var(--text-2)}.camera-edit-field{display:grid;grid-template-columns:minmax(76px,.8fr) minmax(0,1.25fr);gap:10px;align-items:center;min-width:0;font-size:11px;color:var(--text-2)}.camera-edit-field .select{min-width:0;max-width:100%;width:100%}.camera-edit-number{display:flex;align-items:center;min-width:0;border:1px solid var(--border);border-radius:6px;background:var(--panel-2);color:var(--text-2)}.camera-edit-number input{width:100%;min-width:0;border:0;background:transparent;padding:6px;color:var(--text);font:inherit;font-variant-numeric:tabular-nums}.camera-edit-number>span{flex-shrink:0;padding-right:6px}.camera-edit-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.camera-edit-pair .camera-edit-field{grid-template-columns:minmax(0,1fr);gap:5px}.camera-edit-check{display:flex;gap:8px;align-items:center;min-height:30px;font-size:11px;color:var(--text);cursor:pointer}.camera-edit-check input{flex-shrink:0;accent-color:var(--text)}.camera-edit-details{display:grid;min-width:0;font-size:11px}.camera-edit-details>summary{cursor:pointer;color:var(--text-2);padding:6px 0}.camera-edit-details>:not(summary){margin-top:10px}.camera-edit-warning{margin:0;color:var(--text);font-size:11px;line-height:1.5}.camera-edit :is(input,select,button,summary):focus-visible{outline:2px solid var(--text);outline-offset:3px}.camera-edit-number:focus-within{border-color:var(--text-2)}@media(max-width:640px){.camera-edit-field{grid-template-columns:minmax(0,1fr);gap:6px}.camera-edit :is(select,.camera-edit-number input){min-height:36px}.camera-edit-check{min-height:40px}}.camera-target-list,.camera-key-list{max-height:280px;overflow-y:auto;overscroll-behavior:contain}.camera-edit-check span{overflow-wrap:anywhere}.sequence-timeline{--sequence-label: 180px;flex:0 0 auto;min-width:0;border-top:1px solid var(--border);background:var(--panel);font-size:11px}.sequence-timeline>div:not(.sequence-header){max-height:min(48vh,480px);overflow-y:auto}.sequence-header{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:36px;padding:4px 12px}.sequence-heading{display:flex;align-items:center;gap:6px;min-width:0;text-align:left}.sequence-heading strong{font-size:12px;font-weight:600}.sequence-heading>span{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-2)}.sequence-add{display:flex;align-items:center;gap:5px;margin-left:auto;flex-wrap:wrap}.sequence-add select{min-width:0;max-width:110px;height:25px;color:var(--text);background:var(--panel-2);border:1px solid var(--border);border-radius:4px}.sequence-transport{display:flex;align-items:center;gap:3px}.sequence-transport>button{display:inline-flex;justify-content:center;align-items:center;width:26px;height:26px;border-radius:4px;color:var(--text-2)}.sequence-transport>button:hover:not(:disabled),.sequence-transport>button.is-active{background:var(--panel-3);color:var(--text)}.sequence-transport>button:disabled{opacity:.4;cursor:default}.sequence-transport select{height:26px;background:var(--panel-2);border:1px solid var(--border);border-radius:4px;color:var(--text)}.sequence-help,.sequence-empty{color:var(--text-2);margin:0;padding:3px 12px 8px;line-height:1.5}.sequence-help{padding-block:0 2px}.sequence-help summary{cursor:pointer;width:fit-content}.sequence-help p{margin:4px 0;max-width:80ch}.sequence-scrub{display:flex;align-items:center;gap:8px;padding:0 12px 6px;font-variant-numeric:tabular-nums;color:var(--text-2)}.sequence-scrub>input{flex:1;min-width:40px;accent-color:var(--accent)}.sequence-scrub>.num{flex:0 0 88px}.sequence-scrub .num-box{width:100%}.sequence-duration{white-space:nowrap}.sequence-scroll{overflow:auto;max-height:120px;padding:0 12px 8px}.sequence-ruler{display:grid;grid-template-columns:var(--sequence-label) minmax(0,1fr);gap:10px;height:24px;position:sticky;top:0;z-index:3;background:var(--panel);color:var(--text-2)}.sequence-ruler>div{position:relative;margin-right:1px}.sequence-ruler>div span{position:absolute;white-space:nowrap;transform:translate(-50%);font-variant-numeric:tabular-nums}.sequence-ruler>div span:first-child{transform:none}.sequence-ruler>div span:last-child{transform:translate(-100%)}.sequence-clips{position:relative}.sequence-row{display:grid;grid-template-columns:var(--sequence-label) minmax(0,1fr);gap:10px;min-height:30px;align-items:center;border-top:1px solid var(--border)}.sequence-label{display:flex;gap:7px;align-items:center;min-width:0;height:30px;padding:0 4px;text-align:left;border-radius:3px}.sequence-label>span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sequence-label small{margin-left:auto;color:var(--text-2)}.sequence-index{color:var(--text-2);font-variant-numeric:tabular-nums}.sequence-row.is-selected .sequence-label{background:var(--panel-3)}.sequence-track{position:relative;height:26px;min-width:0;background-image:linear-gradient(to right,var(--border) 1px,transparent 1px);background-size:25% 100%}.sequence-clip,.sequence-key,.sequence-resize{touch-action:none}.sequence-clip{cursor:grab}.sequence-clip:active{cursor:grabbing}.sequence-resize{position:absolute;top:3px;height:20px;width:8px;z-index:2;cursor:ew-resize;background:var(--focus);border-radius:2px;opacity:.85}.sequence-resize.is-start{transform:translate(-2px)}.sequence-resize.is-end{transform:translate(-6px)}.sequence-key-label{display:flex;align-items:center;gap:4px;color:var(--text-2);padding-left:18px;min-width:0}.sequence-key-label button{min-height:26px;padding:3px}.sequence-key-label button:first-child{flex:1;text-align:left;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sequence-key-row{min-height:26px}.sequence-key{position:absolute;top:5px;width:14px;height:16px;transform:translate(-50%);cursor:ew-resize}.sequence-key:before{content:"";position:absolute;width:8px;height:8px;top:4px;left:3px;transform:rotate(45deg);border:1px solid var(--text-2);background:var(--panel-3)}.sequence-key[aria-pressed=true]:before{background:var(--focus);border-color:var(--focus)}.sequence-key-track{overflow:visible}.sequence-range{padding:0 12px 5px;color:var(--text-2)}.sequence-range summary{cursor:pointer;width:fit-content}.sequence-range>div{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:5px 0}.sequence-range label{display:flex;align-items:center;gap:6px}.sequence-range .num{width:88px}.sequence-clip{position:absolute;top:3px;height:20px;min-width:4px;max-width:100%;overflow:hidden;padding:1px 6px;border:1px solid var(--border-2);border-radius:3px;background:var(--panel-3);color:var(--text);text-align:left;white-space:nowrap}.sequence-clip.is-camera{border-style:dashed}.sequence-clip[aria-pressed=true]{background:var(--control-selected);color:var(--control-selected-text);border-color:var(--control-selected-border)}.sequence-clip span{font-size:10px}.sequence-playhead-region{position:absolute;inset:0 0 0 calc(var(--sequence-label) + 10px);pointer-events:none}.sequence-playhead{height:100%;width:1px;background:var(--focus);position:absolute;top:0;z-index:2}.sequence-playhead:before{content:"";position:absolute;left:-3px;width:7px;height:5px;background:var(--focus)}.sequence-issues{margin:0 12px 8px;padding:8px;border:1px solid var(--warning);border-radius:4px;color:var(--warning)}.sequence-issues strong{display:block;margin-bottom:4px}.sequence-issues button{display:block;color:inherit;text-align:left;text-decoration:underline;padding-block:3px}.sequence-timeline :is(button,select,input):focus-visible{outline:2px solid var(--focus);outline-offset:2px}.scn-build-focus{padding:8px 10px}.scn-build-focus>.btn{margin-bottom:8px}@media(max-width:1000px){.sequence-timeline{--sequence-label: 140px}.sequence-header{gap:7px}.sequence-heading>span{max-width:90px}.sequence-add{margin-left:0}}@media(max-width:640px){.sequence-timeline{--sequence-label: 108px}.sequence-header{padding-inline:8px}.sequence-heading>span{display:none}.sequence-add{width:100%}.sequence-scroll{max-height:110px;padding-inline:8px}.sequence-help{font-size:10px}.sequence-label small,.sequence-duration{display:none}}.animation-library-fields{display:grid;gap:10px;max-width:620px;padding:12px 0}.animation-library-targets{display:flex;flex-wrap:wrap;gap:8px 16px;max-height:180px;overflow-y:auto}.animation-library-fields .input{min-width:0;width:100%}@media(max-width:640px){.animation-library-fields{max-width:100%}}.media-waveform{display:block;width:100%;height:64px;color:var(--accent, #7c5cff);background:var(--panel-2);border-radius:4px}
