@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-ext-wght-normal-BOFOeGcA.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans Variable;font-style:normal;font-display:swap;font-weight:100 1000;src:url(/assets/dm-sans-latin-wght-normal-Xz1IZZA0.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#e4e7de;font-synthesis:none;--accent:#dcf59a;--muted:#8b958d;--line:#ffffff10;--surface:#202422;background:#191c1b;font-family:DM Sans Variable,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:13px;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;transition:background .16s,color .16s,transform .16s;display:inline-flex}button:disabled{cursor:default;opacity:.45}button:not(:disabled):active{transform:translateY(1px)}button:focus-visible,a:focus-visible,input:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input{color:inherit}button svg{flex-shrink:0}a{color:inherit;text-decoration:none}::selection{color:#fff;background:#617246}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.studio{flex-direction:column;height:100svh;min-height:560px;display:flex;overflow:hidden}.topbar{border-bottom:1px solid var(--line);flex-shrink:0;align-items:center;gap:24px;height:76px;padding:0 30px;display:flex}.brand{letter-spacing:-1.5px;align-items:center;gap:12px;font-size:29px;font-weight:650;display:flex}.brand>svg{color:var(--accent)}.brand-number{font-weight:450}.brand-dot{color:var(--accent)}.brand-divider{background:#fff2;width:1px;height:21px;margin-left:4px}.studio-label{letter-spacing:2px;color:#8b958d;font-size:10px}.topbar nav{gap:22px;margin-left:auto;margin-right:8px;display:flex}.topbar nav button{color:#bdc6bd;padding:10px 0;font-size:12px}.topbar nav button:hover{color:var(--accent)}.share-button{background:#30362f;border:1px solid #ffffff12;border-radius:5px;padding:10px 15px;font-size:12px;font-weight:500}.share-button:hover{color:#e4f7b6;background:#3e4738}.projectbar{background:#1c201e;flex-shrink:0;justify-content:space-between;align-items:center;height:63px;padding:0 30px;display:flex}.project-name{align-items:center;gap:11px;min-width:0;display:flex}.project-icon{color:#9aa58f;display:flex}.project-name input{text-overflow:ellipsis;outline-offset:4px;background:0 0;border:0;border-radius:2px;width:160px;padding:6px 0;font-size:13px;font-weight:500}.draft-state{color:#819080;white-space:nowrap;border-left:1px solid #ffffff1a;padding-left:13px;font-size:10px}.project-dimension{color:#b2bcac;letter-spacing:.5px;font-size:10px}.project-dimension span{color:#748072;margin-left:6px}.workspace{border-top:1px solid #ffffff0b;flex:1;grid-template-columns:minmax(0,1fr) minmax(400px,38%);min-height:0;display:grid}.world-panel{color:#304c40;isolation:isolate;background:#d9e5e1;min-width:0;min-height:0;position:relative;overflow:hidden}.world-panel canvas{outline-offset:-4px;width:100%;height:100%;animation:.8s ease-out scene-appear;display:block}.world-topline{pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:26px;left:29px;right:29px}.eyebrow{letter-spacing:1.9px;font-size:9px;font-weight:600}.world-topline>.eyebrow{opacity:.75}.world-render-state{opacity:.75;align-items:center;gap:6px;font-size:10px;display:flex}.world-render-state i{background:#527861;border-radius:50%;width:5px;height:5px}.world-caption{pointer-events:none;animation:.6s ease-out caption-appear;position:absolute;top:77px;left:32px}.world-caption>.eyebrow{letter-spacing:1.6px;color:#6e8174;font-size:8px}.world-caption h1{letter-spacing:-1.5px;overflow-wrap:anywhere;min-width:260px;max-width:70%;margin:11px 0 9px;font-size:clamp(24px,2.4vw,40px);font-weight:450;line-height:1.1}.world-caption p{color:#63776c;margin:0;font-size:11px}.world-tools{flex-direction:column;gap:7px;display:flex;position:absolute;bottom:68px;right:24px}.scene-button{color:#4e6254;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#eff4efc9;border:1px solid #576a5520;border-radius:5px;width:35px;height:35px}.scene-button:hover{background:#fff}.scene-button.selected{color:#e8f1dc;background:#344b3e}.world-bottomline{color:#607366;pointer-events:none;justify-content:space-between;align-items:center;font-size:9px;display:flex;position:absolute;bottom:25px;left:30px;right:27px}.world-bottomline b{color:#8e9d91;margin:0 7px;font-weight:400}.axis-key{gap:12px;font-family:monospace;font-size:10px;display:flex}.axis-key i{opacity:.7;font-style:normal}.axis-key i:first-child{color:#9b644a}.axis-key i:nth-child(2){color:#577145}.axis-key i:nth-child(3){color:#54768c}.world-error,.world-loading{text-align:center;background:#eaf0e8ee;border:1px solid #566b5120;border-radius:5px;width:80%;max-width:380px;padding:25px;font-size:12px;position:absolute;top:52%;left:50%;transform:translate(-50%,-50%)}.world-error{flex-direction:column;align-items:center;gap:14px;display:flex}.world-error p{margin:0;line-height:1.7}.world-loading{justify-content:center;align-items:center;gap:10px;display:flex}.spinner{border:1.5px solid;border-right-color:#0000;border-radius:50%;flex-shrink:0;width:15px;height:15px;animation:.7s linear infinite spin;display:inline-block}.program-panel{background:var(--surface);border-left:1px solid #0b150a26;flex-direction:column;min-width:0;min-height:0;display:flex}.editor-heading{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;height:57px;padding:0 22px;display:flex}.editor-heading>.eyebrow{color:#89968c;font-size:8px}.editor-tabs{gap:22px;height:100%;display:flex}.editor-tabs button{color:#859288;padding:0;font-size:11px;position:relative}.editor-tabs button[aria-selected=true]{color:var(--accent)}.editor-tabs button[aria-selected=true]:after{content:"";background:var(--accent);height:2px;position:absolute;bottom:-1px;left:0;right:0}.editor-tabs button:hover{color:#e4eccb}.editor-toolbar{border-bottom:1px solid #ffffff08;flex-shrink:0;justify-content:space-between;align-items:center;height:58px;padding:0 19px;font-size:10px;display:flex}.editor-toolbar>span,.editor-toolbar>div{align-items:center;gap:8px;display:flex}.file-dot{background:#b7c998;border-radius:1px;width:6px;height:6px;margin-right:3px;display:inline-block}.editor-toolbar>span{color:#c4cdc1}.editor-toolbar>div{gap:16px}.auto-run{color:#9ba796;cursor:pointer;white-space:nowrap;align-items:center;gap:6px;font-size:9px;display:flex}.auto-run input{opacity:0;cursor:pointer;width:24px;height:20px;position:absolute}.switch{background:#4a5348;border-radius:8px;width:23px;height:13px;transition:background .2s;position:relative}.switch:after{content:"";background:#b6c1ae;border-radius:50%;width:9px;height:9px;transition:transform .2s;position:absolute;top:2px;left:2px}.auto-run input:checked+.switch{background:#a3c365}.auto-run input:checked+.switch:after{background:#26311e;transform:translate(10px)}.auto-run input:focus-visible+.switch{outline:2px solid var(--accent);outline-offset:3px}.run-button{background:var(--accent);color:#29331d;border-radius:4px;gap:6px;min-width:79px;padding:7px 10px;font-size:11px;font-weight:600}.run-button:hover{background:#e9ffb7}.run-button svg{fill:currentColor;stroke-width:0}.run-button kbd{opacity:.55;margin-left:2px;font-family:inherit;font-size:9px;font-weight:400}.run-button.is-running{background:#ead1a4}.editor-surface{flex:1;min-height:80px;position:relative;overflow:hidden}.code-editor,.blocks-editor{width:100%;height:100%;min-height:0}.editor-loading{color:var(--muted);padding:30px}.editor-footnote{border-top:1px solid var(--line);color:#798775;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:32px;padding:0 20px;font-size:9px;display:flex}.editor-footnote button{color:#a5b293;white-space:nowrap;padding:5px 0;font-size:9px}.editor-footnote button:hover{color:var(--accent)}.console{background:#1b1f1c;border-top:1px solid #ffffff10;flex-direction:column;flex-shrink:0;height:153px;display:flex}.console-heading{color:#b6c0b0;flex-shrink:0;justify-content:space-between;align-items:center;height:40px;padding:0 20px;font-size:10px;display:flex}.console-heading>span{align-items:center;gap:8px;display:flex}.terminal-mark{color:#8a9b7f;font-size:15px;line-height:1}.console-heading button{color:#829079;padding:6px 0;font-size:9px}.console-heading button:hover{color:var(--accent)}.console-output{min-height:0;padding:2px 20px 15px;font-family:SFMono-Regular,Consolas,monospace;font-size:10px;line-height:1.8;overflow:auto}.console-output p{overflow-wrap:anywhere;white-space:pre-wrap;align-items:flex-start;gap:10px;margin:0 0 5px;display:flex}.console-output p>span{opacity:.7;flex-shrink:0;width:7px}.console-info{color:#94a38c}.console-success{color:#d1e89e}.console-error{color:#f1b49f}.console-empty{color:#657461}.statusbar{color:#81917b;border-top:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;height:35px;padding:0 26px;font-size:9px;display:flex}.statusbar>span{align-items:center;gap:9px;display:flex}.status-light{background:#b1ca87;border-radius:50%;width:5px;height:5px}.status-light.busy{animation:.8s ease-in-out infinite alternate pulse}.status-separator{color:#4b5846;margin:0 2px}.render-time{color:#60715a;margin-left:3px}.statusbar button{color:#acb99e;padding:3px 0;font-size:9px}.statusbar button:hover{color:var(--accent)}.mobile-tabs{display:none}.modal{color:#e1e7db;background:#232a23;border:1px solid #5c6c4c66;border-radius:10px;outline:none;width:min(550px,100vw - 32px);max-height:calc(100svh - 60px);padding:27px;animation:.18s ease-out dialog-appear;overflow:auto;box-shadow:0 25px 100px #0006}.modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0a120fc9;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal-wide{width:min(680px,100vw - 32px)}.modal-heading{justify-content:space-between;align-items:center;gap:15px;display:flex}.modal h2{letter-spacing:-.8px;margin:0;font-size:25px;font-weight:450}.icon-button{color:#b5c1a9;border-radius:4px;padding:6px}.icon-button:hover{background:#ffffff0b}.modal-intro{color:#a2b197;max-width:500px;margin:13px 0 25px;font-size:12px;line-height:1.8}.example-list{border-top:1px solid #ffffff13}.example-list button{text-align:left;border-bottom:1px solid #ffffff13;gap:20px;width:100%;padding:22px 0;display:flex}.example-list button:hover{background:#ffffff04}.example-number{color:#879c71;font-family:monospace;font-size:11px}.example-list button>span:nth-child(2){flex-direction:column;flex:1;gap:6px;display:flex}.example-list strong{font-size:15px;font-weight:500}.example-list small{color:#8ea080;font-size:11px}.example-list svg{color:var(--accent);transition:transform .2s}.example-list button:hover svg{transform:translate(4px)}.reference-list{grid-template-columns:1fr 1fr;gap:25px 30px;display:grid}.reference-list h3{color:var(--accent);margin:0 0 8px;font:12px monospace}.reference-list p{color:#a2b197;margin:0 0 9px;font-size:11px;line-height:1.7}.reference-list code{color:#c3d4b4;overflow-wrap:anywhere;font-size:10px}.reference-note{color:#95a78a;border-top:1px solid var(--line);margin-top:25px;padding-top:18px;font-size:11px;line-height:1.8}.field-label{color:#9dac90;letter-spacing:1.2px;margin:25px 0 10px;font-size:9px;display:block}.share-link{gap:8px;display:flex}.share-link input{background:#192118;border:1px solid #ffffff1a;border-radius:4px;flex:1;min-width:0;padding:11px;font-size:11px}.primary-button{color:#28351a;background:var(--accent);white-space:nowrap;border-radius:4px;padding:10px 14px;font-size:11px;font-weight:600}.primary-button:hover{background:#e9ffb7}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.secondary-button{color:#c9d3bf;border:1px solid #ffffff24;border-radius:4px;padding:10px 14px;font-size:11px}.secondary-button:hover{background:#ffffff09}.prompt-label{margin-bottom:10px;display:block}.prompt-input{background:#192118;border:1px solid #ffffff24;border-radius:4px;width:100%;padding:12px;display:block}.draft-warning{color:#edbaa0;background:#32271f;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:9px 20px;font-size:11px;display:flex}.draft-warning button{color:#f5d1bd;white-space:nowrap;padding:5px}.share-note{color:#91a280;font-size:10px;line-height:1.7}.save-progress{color:#ccdfb4;align-items:center;gap:12px;padding:20px 0;display:flex}.share-error{color:#edbaa0;font-size:12px;line-height:1.7}.share-error p+p{color:#9cae8d}.share-error button{margin-top:10px}.blocklyToolbox{font-size:11px!important}.blocklySvg{background:#202422!important}.blocklyToolboxDiv{background:#1b201c!important}.blocklyTreeRow{height:30px!important}.blocklyTreeLabel{font-family:inherit!important;font-size:11px!important}.blocklyMainBackground{stroke:none!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{to{opacity:.35}}@keyframes scene-appear{0%{opacity:0}to{opacity:1}}@keyframes caption-appear{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes dialog-appear{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (min-width:1600px){.workspace{grid-template-columns:minmax(0,1fr) minmax(480px,35%)}.console{height:180px}.world-caption{top:90px;left:40px}.world-topline{left:39px;right:39px}.world-bottomline{left:40px;right:39px}.editor-toolbar,.editor-heading{padding-left:26px;padding-right:26px}}@media (max-width:1050px){.workspace{grid-template-columns:minmax(0,1fr) minmax(370px,45%)}.draft-state{display:none}.topbar{gap:18px;padding:0 22px}.world-caption{left:24px}.world-caption h1{font-size:29px}.world-topline{left:24px;right:24px}.world-bottomline{font-size:8px;left:24px}.world-bottomline b{margin:0 4px}.world-bottomline .axis-key{display:none}.editor-toolbar{padding:0 14px}.editor-toolbar>div{gap:10px}.editor-heading{padding:0 17px}.studio-label{letter-spacing:1.5px;font-size:9px}}@media (max-width:760px){.studio{min-height:500px}.topbar{gap:16px;height:64px;padding:0 17px}.brand{gap:9px;font-size:25px}.brand>svg{width:24px}.brand-divider,.studio-label{display:none}.topbar nav{gap:17px;margin-right:0}.topbar nav button{font-size:11px}.topbar nav button svg{display:none}.share-button{gap:6px;padding:9px;font-size:10px}.projectbar{height:49px;padding:0 18px}.project-name input{width:140px;font-size:12px}.project-dimension{font-size:8px}.project-dimension span{display:none}.mobile-tabs{border-top:1px solid var(--line);background:#202620;flex-shrink:0;gap:25px;height:38px;padding:0 18px;display:flex}.mobile-tabs button{color:#849779;border-bottom:2px solid #0000;padding:0 10px;font-size:11px}.mobile-tabs button[aria-selected=true]{color:var(--accent);border-color:var(--accent)}.workspace{display:flex;position:relative}.world-panel,.program-panel{position:absolute;inset:0}.mobile-world .program-panel,.mobile-editor .world-panel{visibility:hidden;pointer-events:none}.world-caption{top:65px}.world-caption h1{font-size:33px}.world-topline{top:22px}.world-tools{bottom:62px;right:20px}.world-bottomline{font-size:8px;bottom:23px;right:22px}.world-bottomline .axis-key{display:flex}.editor-heading{height:44px;padding:0 20px}.editor-toolbar{height:49px;padding:0 20px}.editor-surface{min-height:0}.editor-tabs{gap:24px}.console{height:118px}.console-heading{height:34px}.statusbar{height:31px;padding:0 16px;font-size:8px}.statusbar>span{gap:6px}.footer-right{font-size:0}.footer-right .status-separator,.render-time{display:none}.modal{padding:22px}.modal h2{font-size:23px}.reference-list{grid-template-columns:1fr;gap:23px}.world-caption h1{min-width:220px}}@media (max-width:380px){.topbar{gap:11px;padding:0 12px}.topbar nav{gap:11px}.brand{font-size:23px}.share-button span{display:none}.share-button{padding:9px 11px}.world-bottomline .axis-key{display:none}.editor-footnote{padding:0 14px;font-size:8px}.auto-run{font-size:9px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.blocklyToolboxCategoryLabel{font-family:inherit;font-size:11px}.blocklyToolboxCategory{padding:4px 10px}
