*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:#1a1a1a;background:#f6f5f3;font:14px/1.5 ui-sans-serif,-apple-system,system-ui,sans-serif}.app{height:100%;display:flex}.canvas{touch-action:none;-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#d8d5cf 1px,#0000 1px) 0 0/24px 24px;flex:1;position:relative;overflow:hidden}.canvas.is-dropping{outline-offset:-10px;outline:3px dashed #c2643c}.box{background:#fff;border:1px solid #d8d5cf;border-radius:10px;flex-direction:column;display:flex;position:absolute;overflow:visible;box-shadow:0 1px 3px #0000000f}.box.is-selected{border-color:#c2643c;box-shadow:0 0 0 2px #c2643c40}.box.is-error{border-color:#b3402f}.box-header{cursor:grab;color:#8a8580;background:#faf9f7;border-bottom:1px solid #eceae6;border-radius:10px 10px 0 0;justify-content:space-between;align-items:center;height:22px;padding:0 18px;font-size:11px;display:flex}.box-delete{cursor:pointer;color:#8a8580;background:0 0;border:0;font-size:15px}.box-title{text-overflow:ellipsis;white-space:nowrap;color:#5c5852;cursor:grab;flex:1;min-width:0;margin:0 6px;font-size:11px;overflow:hidden}.box-title.is-placeholder{color:#8a8580;font-style:italic}.box-title-input{min-width:0;font:inherit;color:#1a1a1a;background:0 0;border:0;outline:none;flex:1;margin:0 6px;font-size:11px}.box-body{flex:1;padding:10px 12px;position:relative;overflow:auto}.box-body.box-body-drawing{padding:0;overflow:hidden}.drawing-canvas{position:absolute;inset:0}.drawing-loading{color:#8a8580;justify-content:center;align-items:center;height:100%;font-size:12px;display:flex}.box-markdown,.turn-body{overflow-wrap:anywhere}.box-markdown p:first-child,.turn-body p:first-child{margin-top:0}.box-markdown p:last-child,.turn-body p:last-child{margin-bottom:0}.box-markdown h1,.box-markdown h2,.box-markdown h3,.turn-body h1,.turn-body h2,.turn-body h3{margin:.6em 0 .3em;line-height:1.25}.box-markdown h1,.turn-body h1{font-size:1.25em}.box-markdown h2,.turn-body h2{font-size:1.12em}.box-markdown h3,.turn-body h3{font-size:1.03em}.box-markdown h1:first-child,.box-markdown h2:first-child,.box-markdown h3:first-child,.turn-body h1:first-child,.turn-body h2:first-child,.turn-body h3:first-child{margin-top:0}.box-markdown ul,.box-markdown ol,.turn-body ul,.turn-body ol{margin:.4em 0;padding-left:1.4em}.box-markdown li,.turn-body li{margin:.2em 0}.box-markdown code,.turn-body code{background:#f2f0ec;border-radius:4px;padding:.1em .35em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}.box-markdown pre,.turn-body pre{background:#f2f0ec;border-radius:6px;padding:8px 10px;overflow-x:auto}.box-markdown pre code,.turn-body pre code{background:0 0;padding:0}.box-markdown blockquote,.turn-body blockquote{color:#8a8580;border-left:3px solid #d8d5cf;margin:.4em 0;padding-left:.8em}.box-markdown strong,.turn-body strong{font-weight:600}.box-markdown em,.turn-body em{font-style:italic}.box-markdown a,.turn-body a{color:#c2643c;text-decoration:underline}.box-markdown li.task-list-item,.turn-body li.task-list-item{list-style:none}.box-markdown li.task-list-item input[type=checkbox],.turn-body li.task-list-item input[type=checkbox]{accent-color:#c2643c;cursor:pointer;margin:0 .5em 0 0;position:relative;top:1px}.box-markdown li.task-list-item input[type=checkbox]:disabled,.turn-body li.task-list-item input[type=checkbox]:disabled{cursor:default}:is(.box-markdown li.task-list-item:has(>input:checked),.turn-body li.task-list-item:has(>input:checked)){color:#8a8580;-webkit-text-decoration:line-through #d8d5cf;text-decoration:line-through #d8d5cf}.box-markdown li.task-list-item>ul,.box-markdown li.task-list-item>ol,.turn-body li.task-list-item>ul,.turn-body li.task-list-item>ol{color:#1a1a1a;text-decoration:none}.box-editor{resize:none;width:100%;height:100%;font:inherit;border:0;outline:none}.box-errmsg{color:#8c2f22;background:#fdecea;align-items:center;gap:8px;padding:6px 12px;font-size:12px;display:flex}.box-errmsg span{flex:1}.box-retry{cursor:pointer;color:#8c2f22;background:#fff;border:1px solid #e0b4ac;border-radius:999px;padding:2px 8px;font-size:11px}.box-sources{border-top:1px solid #eceae6;border-radius:0 0 10px 10px;flex-wrap:wrap;gap:6px;padding:6px 12px;font-size:11px;display:flex}.box-sources a{text-overflow:ellipsis;white-space:nowrap;color:#5c5852;background:#f2f0ec;border-radius:999px;max-width:140px;padding:2px 6px;text-decoration:none;overflow:hidden}.handle{background:#c2643c;border-radius:2px;width:10px;height:10px;position:absolute}.handle-nw{cursor:nwse-resize;top:-5px;left:-5px}.handle-n{cursor:ns-resize;top:-5px;left:calc(50% - 5px)}.handle-ne{cursor:nesw-resize;top:-5px;right:-5px}.handle-e{cursor:ew-resize;top:calc(50% - 5px);right:-5px}.handle-se{cursor:nwse-resize;bottom:-5px;right:-5px}.handle-s{cursor:ns-resize;bottom:-5px;left:calc(50% - 5px)}.handle-sw{cursor:nesw-resize;bottom:-5px;left:-5px}.handle-w{cursor:ew-resize;top:calc(50% - 5px);left:-5px}.marquee{pointer-events:none;background:#c2643c14;border:1px solid #c2643c;position:absolute}.canvas-shell{flex:1;min-width:0;display:flex;position:relative}.omnibar{z-index:20;background:#fff;border:1px solid #d8d5cf;border-radius:999px;align-items:center;gap:8px;width:min(640px,100% - 48px);padding:8px 8px 8px 14px;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000014}.omnibar input{font:inherit;background:0 0;border:0;outline:none;flex:1}.omnibar-running{color:#8a8580;white-space:nowrap;background:#f6f5f3;border:1px solid #d8d5cf;border-radius:999px;flex:none;padding:3px 9px;font-size:11px}.omnibar button{color:#fff;cursor:pointer;background:#c2643c;border:0;border-radius:50%;width:30px;height:30px}.omnibar button:disabled{cursor:default;background:#ddd9d3}.chat{background:#fff;border-left:1px solid #d8d5cf;flex-direction:column;flex:0 0 360px;width:360px;display:flex;position:relative}.chat-resize-handle{cursor:col-resize;touch-action:none;z-index:25;background:0 0;width:6px;position:absolute;top:0;bottom:0;left:-3px}.chat-resize-handle:hover,.chat-resize-handle.is-dragging{background:#c2643c40}.chat-head{border-bottom:1px solid #eceae6;align-items:center;gap:8px;padding:10px 12px;display:flex}.chat-head strong{flex:1}.chat-count{color:#8a8580;font-size:11px}.chat-head button{cursor:pointer;color:#8a8580;background:0 0;border:0;font-size:12px}.chat-scroll{flex:1;padding:12px;overflow:auto}.turn{margin-bottom:14px}.turn-user .turn-body{background:#f2f0ec;border-radius:10px;padding:8px 10px}.turn-label{color:#8a8580;margin-bottom:3px;font-size:11px}.turn-body p:first-child{margin-top:0}.turn-body p:last-child{margin-bottom:0}.turn-error{color:#8c2f22;align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.turn-error .turn-promote{margin-top:0}.turn-promote{cursor:pointer;background:#fff;border:1px solid #d8d5cf;border-radius:999px;margin-top:6px;padding:3px 8px;font-size:11px}.turn.is-highlit{outline-offset:4px;border-radius:6px;outline:2px solid #c2643c}.chat-input{border-top:1px solid #eceae6;gap:8px;padding:10px;display:flex}.chat-input input{font:inherit;border:1px solid #d8d5cf;border-radius:999px;outline:none;flex:1;padding:7px 12px}.chat-input button{color:#fff;cursor:pointer;background:#c2643c;border:0;border-radius:50%;width:30px}.chat-input button:disabled{background:#ddd9d3}.chat-reopen{z-index:30;cursor:pointer;background:#fff;border:1px solid #d8d5cf;border-radius:999px;padding:6px 12px;position:absolute;top:16px;right:16px}.box-provenance{color:#8a8580;cursor:pointer;text-align:left;background:0 0;border:0;border-top:1px solid #eceae6;padding:4px 12px;font-size:11px}.thinking{align-items:center;gap:5px;padding:2px 0;display:flex}.thinking span{opacity:.35;background:#c2643c;border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite thinking-pulse}.thinking span:nth-child(2){animation-delay:.18s}.thinking span:nth-child(3){animation-delay:.36s}@keyframes thinking-pulse{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:.9;transform:translateY(-3px)}}@media (prefers-reduced-motion:reduce){.thinking span{opacity:.5;animation:none}}.canvas-toolbar{z-index:30;gap:8px;display:flex;position:absolute;top:16px;left:16px}.new-box-btn,.add-image-btn,.draw-btn,.undo-btn,.redo-btn,.zoom-btn,.fit-btn{cursor:pointer;font:inherit;background:#fff;border:1px solid #d8d5cf;border-radius:999px;padding:6px 12px;font-size:13px}.new-box-btn:hover,.add-image-btn:hover,.draw-btn:hover,.undo-btn:not(:disabled):hover,.redo-btn:not(:disabled):hover,.zoom-btn:hover,.fit-btn:hover{background:#faf9f7}.undo-btn:disabled,.redo-btn:disabled{opacity:.4;cursor:default}.zoom-btn{text-align:center;min-width:52px}.toast{z-index:50;color:#8a8580;pointer-events:none;background:#f6f5f3;border:1px solid #d8d5cf;border-left:3px solid #c2643c;border-radius:999px;padding:8px 16px;font-size:12px;animation:.15s ease-out toast-in;position:absolute;bottom:84px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000014}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%)}}.box-blocks{flex-direction:column;gap:6px;display:flex}.md-toolbar{z-index:40;background:#1a1a1a;border-radius:8px;gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 4px 14px #0003}.md-toolbar-btn{color:#f4f2ef;min-width:26px;height:26px;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;justify-content:center;align-items:center;font-size:12px;line-height:1;display:flex}.md-toolbar-btn:hover{background:#ffffff29}.key-backdrop{z-index:100;background:#1c1a1761;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.key-dialog{background:#faf9f7;border:1px solid #d8d5cf;border-radius:12px;width:100%;max-width:460px;padding:24px;box-shadow:0 12px 48px #0000002e}.key-dialog h2{color:#1c1a17;margin:0 0 10px;font-size:16px;font-weight:600}.key-blurb{color:#6b6660;margin:0 0 12px;font-size:13px;line-height:1.5}.key-current{color:#6b6660;margin:0 0 12px;font-size:12px}.key-current code{background:#efede8;border-radius:4px;padding:1px 5px;font-size:11px}.key-input{color:#1c1a17;background:#fff;border:1px solid #d8d5cf;border-radius:8px;width:100%;padding:9px 11px;font-family:inherit;font-size:13px}.key-input:focus{border-color:#c2643c;outline:none}.key-input[aria-invalid=true]{border-color:#c2643c}.key-scope{border:0;flex-wrap:wrap;align-items:center;gap:14px;margin:12px 0 0;padding:0;display:flex}.key-scope legend{color:#8a8580;padding:0;font-size:12px}.key-scope label{color:#6b6660;cursor:pointer;align-items:center;gap:5px;font-size:12px;display:inline-flex}.key-error{color:#8a4a2c;background:#fdf1ec;border-left:3px solid #c2643c;border-radius:4px;margin:12px 0 0;padding:8px 10px;font-size:12px}.key-actions{align-items:center;gap:8px;margin-top:18px;display:flex}.key-spacer{flex:1}.key-help{color:#8a8580;font-size:12px;text-decoration:none}.key-help:hover{color:#c2643c}.key-actions button{color:#6b6660;cursor:pointer;background:#fff;border:1px solid #d8d5cf;border-radius:8px;padding:7px 13px;font-family:inherit;font-size:12px}.key-actions button:hover:not(:disabled){border-color:#b8b4ad}.key-actions .key-save{color:#fff;background:#c2643c;border-color:#c2643c}.key-actions .key-save:disabled{opacity:.5;cursor:default}.key-actions .key-forget{color:#8a4a2c}
