:root{color:#f5efe6;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:radial-gradient(circle at 0 0,#e11d482e,#0000 28%),radial-gradient(circle at 100% 0,#0ea5e938,#0000 22%),linear-gradient(#1a1e2e 0%,#0b1020 100%);font-family:Segoe UI,Trebuchet MS,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}input,textarea{color:#f8fafc;background:#0f172ac2;border:1px solid #94a3b833;border-radius:14px;outline:none;width:100%;padding:.85rem .95rem}input:focus,textarea:focus{border-color:#2dd4bfb3;box-shadow:0 0 0 3px #2dd4bf26}textarea{resize:vertical}#app{min-height:100vh}.app-shell{grid-template-columns:360px minmax(0,1fr);min-height:100vh;display:grid}.auth-shell{place-items:center;min-height:100vh;padding:1.5rem;display:grid}.auth-card{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#090e1bdb;border:1px solid #94a3b829;border-radius:28px;gap:.9rem;width:min(100%,420px);padding:1.4rem;display:grid}.auth-card label{color:#cbd5e1;gap:.45rem;display:grid}.auth-error{color:#fda4af}.library-panel,.workspace,.inspector-panel,.canvas-panel,.story-card,.inspector-block,.workspace-head{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.library-panel{background:#0a0f1dd1;border-right:1px solid #94a3b826;flex-direction:column;gap:1rem;padding:1.4rem;display:flex}.panel-head,.workspace-head,.section-head,.panel-actions,.story-card__actions,.story-card__meta,.toolbar,.inspector-block__title{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.panel-head{align-items:flex-start}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:#5eead4;margin-bottom:.35rem;font-size:.72rem;display:inline-block}.sync-pill{color:#e2e8f0;border:1px solid #94a3b829;border-radius:999px;margin-top:.8rem;padding:.45rem .8rem;font-size:.78rem;display:inline-flex}.sync-pill--loading,.sync-pill--saving{background:#3b82f629}.sync-pill--saved{background:#10b9812e}.sync-pill--offline{background:#f973162e}h1,h2,h3,p{margin:0}h1{font-size:2rem;line-height:1}h2{font-size:1.35rem}h3{text-transform:capitalize;font-size:1rem}.primary-button,.ghost-button,.icon-button{border:0;border-radius:14px;align-items:center;gap:.55rem;transition:transform .14s,background .14s,border-color .14s;display:inline-flex}.primary-button,.ghost-button{padding:.8rem 1rem}.primary-button{color:#fff;background:linear-gradient(135deg,#f97316,#ef4444);box-shadow:0 12px 30px #ef444440}.ghost-button,.icon-button{color:#e2e8f0;background:#0f172aa8;border:1px solid #94a3b82e}.icon-button{justify-content:center;width:38px;height:38px}.primary-button:hover,.ghost-button:hover,.icon-button:hover{transform:translateY(-1px)}.library-actions{display:flex}.story-list{flex-direction:column;gap:.9rem;padding-right:.25rem;display:flex;overflow:auto}.story-card{cursor:pointer;background:#0f172abf;border:1px solid #94a3b829;border-radius:24px;gap:.9rem;padding:1rem;transition:border-color .16s,transform .16s,box-shadow .16s;display:grid}.story-card.active{border-color:#5eead4cc;box-shadow:0 18px 42px #0891b22e}.story-card:hover{transform:translateY(-2px)}.story-card__text{gap:.45rem;display:grid}.story-card__text p,.story-card__meta{color:#94a3b8}.workspace{flex-direction:column;gap:1rem;padding:1.2rem;display:flex}.workspace-head{background:#090e1bbf;border:1px solid #94a3b829;border-radius:28px;padding:1rem 1.1rem}.toolbar{flex-wrap:wrap}.editor-layout{grid-template-columns:minmax(0,1fr) 360px;gap:1rem;min-height:calc(100vh - 134px);display:grid}.canvas-panel,.inspector-panel{background:#090e1bad;border:1px solid #94a3b824;border-radius:28px;min-height:0;overflow:hidden}.canvas-panel .react-flow{background:radial-gradient(circle at top,#d977061c,#0000 30%),linear-gradient(#0f172af5,#020617f5)}.inspector-panel{flex-direction:column;gap:1rem;padding:1rem;display:flex;overflow:auto}.inspector-block{background:#0f172aad;border:1px solid #94a3b824;border-radius:24px;gap:.85rem;padding:1rem;display:grid}.inspector-block label,.choices-editor{color:#cbd5e1;gap:.45rem;font-size:.92rem;display:grid}.choice-editor{gap:.55rem;display:grid}.choice-editor__row{grid-template-columns:minmax(0,1fr) 38px 38px;align-items:center;gap:.55rem;display:grid}.choice-editor__target{color:#94a3b8;font-size:.88rem}.choice-link-button{color:#5eead4;background:0 0;border:0;padding:0}.choice-picker{background:#0a0f1dc7;border:1px solid #94a3b824;border-radius:18px;gap:.7rem;padding:.8rem;display:grid}.choice-picker__head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.choice-picker__head span{color:#cbd5e1;font-size:.88rem}.choice-picker__head .ghost-button{padding:.55rem .8rem}.choice-picker__list{gap:.55rem;display:grid}.choice-picker__item{color:#e2e8f0;text-align:left;background:#0f172ad1;border:1px solid #94a3b824;border-radius:16px;width:100%;padding:.7rem .9rem;display:block}.choice-picker__item:hover{background:#141f38eb;border-color:#5eead473}.choice-picker__item strong,.scene-list__item strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.choice-picker__empty{color:#94a3b8;margin:0;font-size:.88rem}.scene-list{gap:.65rem;display:grid}.scene-list__item{color:#e2e8f0;text-align:left;background:#0f172abd;border:1px solid #94a3b824;border-radius:18px;width:100%;padding:.72rem .95rem;transition:transform .14s,border-color .14s,background .14s;display:block}.scene-list__item:hover{background:#141f38eb;border-color:#5eead473;transform:translateY(-1px)}.scene-list__item strong{font-size:.96rem}.scene-list__empty{color:#94a3b8;font-size:.9rem}.upload-field{text-align:center;background:#0d948814;border:1px dashed #5eead473;border-radius:18px;padding:.9rem}.upload-field span{justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.upload-field input{display:none}.image-preview,.flow-node__image{background:#1e293ba6;border:1px solid #94a3b824;border-radius:18px;overflow:hidden}.image-preview img,.flow-node__image img{object-fit:cover;width:100%;height:100%;display:block}.image-preview{aspect-ratio:16/9}.inspector-placeholder{text-align:center;color:#cbd5e1;background:linear-gradient(#0f172a99,#1e293b59);border-radius:24px;place-items:center;gap:1rem;min-height:260px;padding:1rem;display:grid}.tips{flex-wrap:wrap;justify-content:center;gap:.6rem;display:flex}.tips span{background:#0f172ab8;border:1px solid #94a3b824;border-radius:999px;padding:.45rem .8rem}.flow-node{background:#0f172af2;border:1px solid #94a3b833;border-radius:22px;width:260px;overflow:hidden;box-shadow:0 20px 45px #02061766}.flow-node.selected{border-color:#5eead4cc;box-shadow:0 20px 50px #14b8a638}.flow-node.current{border-color:#5eead4d9;box-shadow:0 20px 50px #14b8a647}.flow-node.connected{border-color:#fbbf24b3;box-shadow:0 18px 42px #f59e0b2e}.react-flow__edge.edge-connected path{stroke:#fbbf24;stroke-width:2.5px}.react-flow__edge.edge-connected .react-flow__edge-path{filter:drop-shadow(0 0 8px #fbbf2459)}.flow-node__banner{background:var(--accent);color:#fff;gap:.2rem;padding:.9rem 1rem;display:grid}.flow-node__banner span{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem}.flow-node__body{gap:.75rem;padding:.9rem;display:grid}.flow-node__image{aspect-ratio:16/9;color:#94a3b8;place-items:center;display:grid}.flow-node__image.has-image{background:#0f172a}.flow-node__choices{gap:.55rem;display:grid}.choice-chip{color:#e2e8f0;background:#1e293be6;border:1px solid #94a3b829;border-radius:16px;padding:.72rem .85rem;position:relative}.flow-handle{background:#f8fafc;border:2px solid #0f172a;width:11px;height:11px}.flow-handle--source{background:#fb7185}.flow-handle--target{background:#2dd4bf}.react-flow__edge-text{fill:#f8fafc;font-size:12px}.react-flow__controls,.react-flow__minimap{background:#0f172ad1;border:1px solid #94a3b829;border-radius:18px}@media (width<=1280px){.app-shell,.editor-layout{grid-template-columns:1fr}.library-panel{border-bottom:1px solid #94a3b826;border-right:0}.editor-layout{min-height:auto}.canvas-panel{min-height:70vh}}@media (width<=720px){.workspace,.library-panel{padding:.9rem}.panel-head,.workspace-head,.section-head{flex-direction:column;align-items:stretch}.story-card__actions{justify-content:flex-start}}.react-flow{direction:ltr}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1;cursor:-webkit-grab;cursor:grab}.react-flow__pane.selection{cursor:pointer}.react-flow__pane.dragging{cursor:-webkit-grabbing;cursor:grabbing}.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 .react-flow__edges{pointer-events:none;overflow:visible}.react-flow__edge-path,.react-flow__connection-path{stroke:#b1b1b7;stroke-width:1px;fill:none}.react-flow__edge{pointer-events:visibleStroke;cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.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:focus .react-flow__edge-path,.react-flow__edge:focus-visible .react-flow__edge-path{stroke:#555}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge-textbg{fill:#fff}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__connectionline{z-index:1001}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:-webkit-grab;cursor:grab;position:absolute}.react-flow__node.dragging{cursor:-webkit-grabbing;cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:-webkit-grab;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background:#1a192b;border:1px solid #fff;border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-top{top:-4px;left:50%;transform:translate(-50%)}.react-flow__handle-left{top:50%;left:-4px;transform:translateY(-50%)}.react-flow__handle-right{top:50%;right:-4px;transform:translateY(-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.center{left:50%;transform:translate(-50%)}.react-flow__attribution{background:#ffffff80;margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute}.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-default,.react-flow__node-input,.react-flow__node-output,.react-flow__node-group{color:#222;text-align:center;background-color:#fff;border:1px solid #1a192b;border-radius:3px;width:150px;padding:10px;font-size:12px}.react-flow__node-default.selectable:hover,.react-flow__node-input.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:0 1px 4px 1px #00000014}.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.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:0 0 0 .5px #1a192b}.react-flow__node-group{background-color:#f0f0f040}.react-flow__nodesselection-rect,.react-flow__selection{background:#0059dc14;border:1px dotted #0059dccc}.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{box-shadow:0 0 2px 1px #00000014}.react-flow__controls-button{box-sizing:content-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:#fefefe;border:none;border-bottom:1px solid #eee;justify-content:center;align-items:center;width:16px;height:16px;padding:5px;display:flex}.react-flow__controls-button:hover{background:#f4f4f4}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__minimap{background-color:#fff}.react-flow__minimap svg{display:block}.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{background-color:#3367d9;border:1px solid #fff;border-radius:1px;width:4px;height:4px;transform:translate(-50%,-50%)}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.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:0 solid #3367d9}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}
