:root{color:#1f2a27;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f7f2ea;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{background:linear-gradient(135deg,#48846b2e,#0000 34%),linear-gradient(225deg,#dd5e5024,#0000 36%),#f7f2ea;min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}.app-shell{width:min(1480px,100%);min-height:100vh;margin:0 auto;padding:22px}.topbar{justify-content:space-between;align-items:center;gap:18px;margin-bottom:18px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand-mark{color:#fffaf0;background:#2f6b58;border:1px solid #1f2a271f;border-radius:8px;place-items:center;width:48px;height:48px;display:grid;box-shadow:0 12px 24px #2f6b5833}.brand h1,.panel-header h2{color:#1f2a27;letter-spacing:0;margin:0;font-size:clamp(1.05rem,2.2vw,1.25rem);line-height:1.1}.brand p,.panel-header p{color:#68736f;margin:4px 0 0;font-size:.88rem}.runtime-pill{color:#23312e;white-space:nowrap;background:#fffaf0bd;border:1px solid #1f2a271f;border-radius:999px;align-items:center;gap:8px;min-height:38px;padding:0 13px;display:inline-flex}.workspace{grid-template-columns:minmax(0,1fr) 336px;align-items:start;gap:18px;display:grid}.stage-column{min-width:0}.stage-frame{background-color:#efe7dc;background-image:linear-gradient(90deg,#1f2a270f 1px,#0000 1px),linear-gradient(0deg,#1f2a270f 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:36px 36px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border:1px solid #1f2a2729;border-radius:8px;place-items:center;min-height:420px;display:grid;position:relative;overflow:hidden;box-shadow:0 26px 55px #2c261f29}.editor-canvas{object-fit:contain;touch-action:none;width:100%;min-height:420px;max-height:calc(100vh - 178px);display:block}.editor-canvas.is-ready{cursor:grab}.editor-canvas.is-ready:active{cursor:grabbing}.empty-state{color:#50605b;pointer-events:none;place-content:center;place-items:center;gap:10px;display:grid;position:absolute;inset:0}.empty-state strong{color:#27332f;letter-spacing:0;font-size:1rem}.loading-overlay{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f7f2eab8;place-items:center;padding:22px;display:grid;position:absolute;inset:0}.loading-panel{background:#fffaf0eb;border:1px solid #1f2a2724;border-radius:8px;grid-template-columns:auto minmax(0,1fr);gap:18px;width:min(520px,100%);padding:20px;display:grid;box-shadow:0 24px 58px #1f2a272e}.progress-ring{color:#2f6b58;background:radial-gradient(circle at center, #fffaf0 58%, transparent 60%), conic-gradient(#dd5e50 var(--progress), #2f6b5821 0);border-radius:50%;place-items:center;width:86px;height:86px;display:grid}.progress-ring svg{animation:1.8s linear infinite spin}.loading-kicker{color:#b54e44;letter-spacing:.08em;text-transform:uppercase;margin:0 0 6px;font-size:.76rem;font-weight:800}.loading-panel h2{color:#1f2a27;margin:0;font-size:clamp(1.1rem,2.8vw,1.45rem);line-height:1.2}.loading-panel p{color:#5c6965;margin:7px 0 14px}.progress-track{background:#1f2a271a;border-radius:999px;height:9px;overflow:hidden}.progress-track span{border-radius:inherit;background:linear-gradient(90deg,#2f6b58,#dd5e50,#e3a72f);height:100%;transition:width .18s;display:block}.loading-panel small{color:#68736f;font-variant-numeric:tabular-nums;margin-top:8px;display:block}.actionbar{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.tool-button,.icon-button{color:#1f2a27;background:#fffaf0;border:1px solid #1f2a2729;border-radius:8px;justify-content:center;align-items:center;min-height:42px;transition:transform .14s,border-color .14s,background .14s;display:inline-flex;box-shadow:0 8px 18px #1f2a2714}.tool-button{white-space:nowrap;gap:8px;padding:0 14px;font-weight:750}.tool-button input{display:none}.tool-button:hover:not(:disabled),.icon-button:hover:not(:disabled){border-color:#1f2a2747;transform:translateY(-1px)}.tool-button.primary{color:#fffaf0;background:#2f6b58}.tool-button.accent{color:#fffaf0;background:#dd5e50}.tool-button.dark{color:#fffaf0;background:#1f2a27}.tool-button.ghost{background:#fffaf0b3}.tool-button:disabled,.icon-button:disabled{opacity:.42}.icon-button{width:42px;padding:0}.push-right{margin-left:auto}.stage-slider{background:#fffaf0d1;border:1px solid #1f2a2724;border-radius:8px;margin-top:10px;padding:12px 14px;box-shadow:0 8px 18px #1f2a2714}.stage-slider label{gap:9px;display:grid}.stage-slider input[type=range]{accent-color:#dd5e50;width:100%;height:28px}.error-line{color:#a5433b;margin:10px 0 0;font-size:.92rem}.control-panel{background:#fffaf0c7;border:1px solid #1f2a2726;border-radius:8px;position:sticky;top:18px;overflow:hidden;box-shadow:0 18px 40px #1f2a271a}.panel-header{border-bottom:1px solid #1f2a271f;align-items:center;gap:10px;padding:18px;display:flex}.panel-header svg{color:#dd5e50}.source-list{background:#1f2a2714;gap:1px;display:grid}.source-list div{background:#fffaf0eb;gap:4px;min-width:0;padding:13px 18px;display:grid}.source-list span{color:#68736f;font-size:.75rem;font-weight:800}.source-list strong{color:#24302c;text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:760;overflow:hidden}.segmented-control{background:#1f2a2714;border-radius:8px;grid-template-columns:1fr 1fr;gap:4px;margin:18px;padding:4px;display:grid}.segmented-control button{color:#50605b;background:0 0;border:0;border-radius:6px;min-height:38px;font-weight:800}.segmented-control button.active{color:#fffaf0;background:#2f6b58;box-shadow:0 8px 18px #2f6b5833}.stage-slider span{color:#33423d;font-size:.88rem;font-weight:800}.slider-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.slider-heading strong{color:#dd5e50;font-variant-numeric:tabular-nums;font-size:.92rem}.privacy-note{color:#3a4743;background:#2f6b581a;border-top:1px solid #1f2a271f;padding:16px 18px 18px}.privacy-note strong{color:#2f6b58;letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:.8rem;font-weight:900;display:block}.privacy-note p{color:#4d5b56;margin:0;font-size:.88rem;line-height:1.55}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=980px){.app-shell{padding:14px}.workspace{grid-template-columns:1fr}.control-panel{position:static}.editor-canvas{max-height:none}}@media (width<=620px){.topbar{flex-direction:column;align-items:flex-start}.runtime-pill{justify-content:center;width:100%}.stage-frame,.editor-canvas{min-height:340px}.loading-panel{grid-template-columns:1fr}.progress-ring{width:72px;height:72px}.actionbar{grid-template-columns:1fr 1fr;display:grid}.push-right{margin-left:0}.tool-button,.icon-button{width:100%}.icon-button{min-width:0}}
