@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.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:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.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:#292343;font-synthesis:none;--accent:#6544d9;--muted:#706783;--line:#e5deef;--surface:#fffdf8;background:#fffdf8;font-family:Nunito 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:#292343;background:#ded3ff}.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);background:#fffdf8;flex-shrink:0;align-items:center;gap:24px;height:78px;padding:0 28px;display:flex}.brand{letter-spacing:-1.4px;align-items:center;gap:10px;font-size:32px;font-weight:900;display:flex}.brand>svg{color:#6544d9;background:#ffd467;border-radius:12px;width:39px;height:39px;padding:6px;transition:transform .2s;transform:rotate(-8deg)}.brand-number{color:var(--accent);font-weight:900}.brand-dot{color:#f27945}.studio-label{color:#7a698b;font-size:13px;font-weight:700}.topbar nav{gap:10px;margin-left:auto;display:flex}.topbar nav button{color:#514768;border-radius:10px;min-height:42px;padding:10px 12px;font-size:14px;font-weight:750}.topbar nav button:hover{color:var(--accent);background:#f1edff}.share-button{color:#5230bd;background:#f1edff;border:1px solid #ded5f7;border-radius:12px;min-height:42px;padding:11px 16px;font-size:14px;font-weight:800}.share-button:hover{color:#5230bd;background:#e4dbff}.projectbar{background:#f5f0ff;flex-shrink:0;justify-content:space-between;align-items:center;height:57px;padding:0 28px;display:flex}.project-name{align-items:center;gap:11px;min-width:0;display:flex}.project-icon{color:#6544d9;display:flex}.project-name input{text-overflow:ellipsis;background:0 0;border:1px solid #0000;border-radius:8px;width:160px;padding:7px 8px;font-size:15px;font-weight:800}.draft-state{color:#716584;white-space:nowrap;border-left:1px solid #e1d8f0;padding-left:13px;font-size:12px}.project-dimension{color:#594e70;font-size:12px;font-weight:650}.project-dimension span{color:#716584;margin-left:6px}.workspace{border-top:1px solid var(--line);flex:1;grid-template-columns:minmax(0,1fr) minmax(430px,42%);min-height:0;display:grid}.world-panel{color:#292343;isolation:isolate;background:#e7f3ff;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:0;font-size:13px;font-weight:800}.world-topline>.eyebrow{color:#405879;background:#ffffffc9;border:1px solid #d1e1f3;border-radius:10px;padding:7px 12px}.world-render-state{color:#4e627d;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.world-render-state i{background:#218069;border-radius:50%;width:5px;height:5px}.world-caption{pointer-events:none;animation:.45s ease-out caption-appear;position:absolute;top:83px;left:30px}.world-caption h1{letter-spacing:-1.2px;overflow-wrap:anywhere;min-width:220px;max-width:70%;margin:0 0 8px;font-size:clamp(28px,2.8vw,44px);font-weight:900;line-height:1.1}.world-caption p{color:#58627c;margin:0;font-size:13px;font-weight:650}.world-tools{flex-direction:column;gap:7px;display:flex;position:absolute;bottom:68px;right:24px}.scene-button{color:#514768;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffdf;border:1px solid #c6d8ef;border-radius:12px;width:42px;height:42px;box-shadow:0 3px #bed0e24d}.scene-button:hover{background:#fff}.scene-button.selected{color:#fff;background:#6544d9}.world-bottomline{color:#58627c;pointer-events:none;justify-content:space-between;align-items:center;font-size:11px;display:flex;position:absolute;bottom:25px;left:30px;right:27px}.world-bottomline b{color:#77849a;margin:0 7px;font-weight:400}.axis-key{gap:12px;font-family:monospace;font-size:12px;display:flex}.axis-key i{font-style:normal;font-weight:800}.axis-key i:first-child{color:#be4026}.axis-key i:nth-child(2){color:#087567}.axis-key i:nth-child(3){color:#3c59bd}.world-error,.world-loading{text-align:center;background:#fffffff0;border:1px solid #c6d8ef;border-radius:12px;width:80%;max-width:380px;padding:25px;font-size:14px;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 #ddd7e9;flex-direction:column;min-width:0;min-height:0;display:flex}.editor-heading{border-bottom:1px solid var(--line);background:#fffdf8;flex-shrink:0;justify-content:space-between;align-items:center;height:60px;padding:0 20px;display:flex}.editor-heading>.eyebrow{color:#594b75;font-size:14px}.editor-tabs{background:#f1edff;border-radius:12px;gap:4px;padding:4px;display:flex}.editor-tabs button{color:#655679;border-radius:9px;padding:8px 12px;font-size:12px;font-weight:800;position:relative}.editor-tabs button[aria-selected=true]{color:#fff;background:var(--accent);box-shadow:0 2px 4px #47229526}.editor-tabs button:hover{color:#5230bd;background:#e2d9ff}.editor-toolbar{border-bottom:1px solid var(--line);flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 20px;font-size:11px;display:flex}.editor-toolbar>span,.editor-toolbar>div{align-items:center;gap:8px;display:flex}.file-dot{background:#f29a2b;border-radius:1px;width:6px;height:6px;margin-right:3px;display:inline-block}.editor-toolbar>span{color:#706783}.editor-toolbar>div{gap:16px}.auto-run{color:#706783;cursor:pointer;white-space:nowrap;align-items:center;gap:7px;min-height:32px;font-size:11px;font-weight:650;display:flex}.auto-run input{opacity:0;cursor:pointer;width:24px;height:20px;position:absolute}.switch{background:#b9b0ca;border-radius:8px;width:28px;height:16px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute;top:2px;left:2px}.auto-run input:checked+.switch{background:#6544d9}.auto-run input:checked+.switch:after{background:#fff;transform:translate(12px)}.auto-run input:focus-visible+.switch{outline:2px solid var(--accent);outline-offset:3px}.run-button{background:var(--accent);color:#fff;border-radius:11px;gap:7px;min-width:94px;padding:10px 14px;font-size:14px;font-weight:850;box-shadow:0 3px #4525a2}.run-button:hover{background:#7654ed;transform:translateY(-1px)}.run-button svg{fill:currentColor;stroke-width:0}.run-button kbd{opacity:.8;margin-left:2px;font-family:inherit;font-size:10px;font-weight:600}.run-button.is-running{color:#5c421c;background:#ffd467;box-shadow:0 3px #daa13a}.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:#706783;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;height:38px;padding:0 16px;font-size:10px;display:flex}.editor-footnote button{color:#6544d9;white-space:nowrap;padding:6px 0;font-size:10px;font-weight:750}.editor-footnote button:hover{color:var(--accent)}.console{border-top:1px solid var(--line);background:#f5f0ff;flex-direction:column;flex-shrink:0;height:132px;display:flex}.console-heading{color:#514768;flex-shrink:0;justify-content:space-between;align-items:center;height:40px;padding:0 20px;font-size:12px;display:flex}.console-heading>span{align-items:center;gap:8px;display:flex}.terminal-mark{color:#6544d9;font-size:15px;line-height:1}.console-heading button{color:#706783;padding:6px 0;font-size:11px}.console-heading button:hover{color:var(--accent)}.console-output{min-height:0;padding:2px 20px 15px;font-family:SFMono-Regular,Consolas,monospace;font-size:11px;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:#5e5473}.console-success{color:#14715b}.console-error{color:#b7333e}.console-empty{color:#706783}.statusbar{color:#706783;border-top:1px solid var(--line);background:#fffdf8;flex-shrink:0;justify-content:space-between;align-items:center;height:35px;padding:0 26px;font-size:11px;display:flex}.statusbar>span{align-items:center;gap:9px;display:flex}.status-light{background:#218069;border-radius:50%;width:5px;height:5px}.status-light.busy{animation:.8s ease-in-out infinite alternate pulse}.status-separator{color:#c7badc;margin:0 2px}.render-time{color:#706783;margin-left:3px}.statusbar button{color:#6544d9;padding:3px 0;font-size:11px}.statusbar button:hover{color:var(--accent)}.mobile-tabs{display:none}.modal{color:#292343;background:#fffdf8;border:1px solid #ddd3f0;border-radius:22px;outline:none;width:min(550px,100vw - 32px);max-height:calc(100svh - 60px);padding:28px;animation:.2s ease-out dialog-appear;overflow:auto;box-shadow:0 25px 100px #29234330}.modal-overlay{z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#29234380;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:-.7px;margin:0;font-size:28px;font-weight:900}.icon-button{color:#655679;background:#f1edff;border-radius:12px;min-width:38px;min-height:38px;padding:9px}.icon-button:hover{background:#e5deef}.modal-intro{color:#655679;max-width:500px;margin:13px 0 25px;font-size:14px;line-height:1.8}.example-list{border-top:1px solid #e5deef}.example-list button{text-align:left;border-bottom:1px solid var(--line);border-radius:8px;gap:18px;width:100%;padding:17px 8px;display:flex}.example-list button:hover{background:#f1edff}.example-list button>span:nth-child(2){flex-direction:column;flex:1;gap:6px;display:flex}.example-list strong{font-size:17px;font-weight:850}.example-list small{color:#706783;font-size:13px}.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:#655679;margin:0 0 9px;font-size:13px;line-height:1.7}.reference-list code{color:#30579d;overflow-wrap:anywhere;font-size:12px}.reference-note{color:#706783;border-top:1px solid var(--line);margin-top:25px;padding-top:18px;font-size:13px;line-height:1.8}.field-label{color:#655679;letter-spacing:1.2px;margin:25px 0 10px;font-size:11px;display:block}.share-link{gap:8px;display:flex}.share-link input{background:#fff;border:1px solid #e1d8f0;border-radius:9px;flex:1;min-width:0;padding:11px;font-size:13px}.primary-button{color:#fff;background:var(--accent);white-space:nowrap;border-radius:11px;min-height:42px;padding:11px 16px;font-size:13px;font-weight:800}.primary-button:hover{background:#5230bd}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.secondary-button{color:#594a73;border:1px solid #d3c6e6;border-radius:11px;min-height:42px;padding:11px 16px;font-size:13px;font-weight:750}.secondary-button:hover{background:#f1edff}.prompt-label{margin-bottom:10px;display:block}.prompt-input{background:#fff;border:1px solid #d3c6e6;border-radius:9px;width:100%;padding:12px;display:block}.draft-warning{color:#9b4122;background:#fff0d5;flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;padding:9px 20px;font-size:13px;display:flex}.draft-warning button{color:#86401c;white-space:nowrap;padding:5px}.share-note{color:#706783;font-size:12px;line-height:1.7}.save-progress{color:#6544d9;align-items:center;gap:12px;padding:20px 0;display:flex}.share-error{color:#9b4122;font-size:14px;line-height:1.7}.share-error p+p{color:#706783}.share-error button{margin-top:10px}.blocklyToolbox{font-size:13px!important}.blocklySvg{background:#fffdf8!important}.blocklyToolboxDiv{background:#f1edff!important}.blocklyTreeRow{height:30px!important}.blocklyTreeLabel{font-family:inherit!important;font-size:13px!important}.blocklyMainBackground{stroke:none!important}.blocks-editor .blocklyZoom>image,.blocks-editor .blocklyZoom>svg>image{opacity:.85}.brand:hover>svg{transform:rotate(4deg)}.project-name input:hover,.project-name input:focus{background:#fffdf8;border-color:#d7c9f1}.editor-tabs button[aria-selected=true]:hover{color:#fff;background:#5230bd}.run-button:not(:disabled):active{transform:translateY(2px);box-shadow:0 1px #4525a2}.example-shape{border-radius:15px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex}.example-shape-sphere{background:#f0eaff}.example-shape-sphere>span{background:#7654ed;border-radius:50%;width:29px;height:29px;box-shadow:inset -5px -4px #5536c5}.example-shape-waves{background:#e0f5fb}.example-shape-waves>span{border-top:5px solid #1289aa;border-bottom:5px solid #1289aa;border-radius:50%;width:30px;height:19px;transform:rotate(-12deg)}.example-shape-cube{color:#b7501b;background:#fff0d5}.example-shape-staircase{background:#ffe8ef}.example-shape-staircase>span{clip-path:polygon(0 100%,0 66%,33% 66%,33% 33%,66% 33%,66% 0,100% 0,100% 100%);background:#cc3c7b;width:28px;height:28px}.example-list button:hover .example-shape{transform:rotate(-5deg)}.example-shape{transition:transform .18s}@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(520px,40%)}.console{height:150px}.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(395px,48%)}.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:10px;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{display:none}}@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:34px;height:34px;padding:5px}.studio-label{display:none}.topbar nav{gap:2px;margin-right:0}.topbar nav button{padding:8px;font-size:12px}.topbar nav button svg{display:none}.share-button{gap:6px;padding:9px;font-size:12px}.projectbar{height:49px;padding:0 18px}.project-name input{width:140px;font-size:14px}.project-dimension{font-size:10px}.project-dimension span{display:none}.mobile-tabs{border-top:1px solid var(--line);background:#fffdf8;flex-shrink:0;gap:25px;height:38px;padding:0 18px;display:flex}.mobile-tabs button{color:#706783;border-bottom:2px solid #0000;padding:0 10px;font-size:13px}.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:76px}.world-caption h1{font-size:33px}.world-topline{top:22px}.world-tools{bottom:62px;right:20px}.world-bottomline{font-size:10px;bottom:23px;right:22px}.world-bottomline .axis-key{display:flex}.editor-heading{height:54px;padding:0 20px}.editor-toolbar{height:60px;padding:0 20px}.editor-surface{min-height:0}.editor-tabs{gap:4px}.console{height:118px}.console-heading{height:34px}.statusbar{height:31px;padding:0 16px;font-size:10px}.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:0}.brand{gap:5px;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:10px}.auto-run{font-size:11px}}@media (max-width:480px){.topbar{gap:8px;padding:0 12px}.brand{gap:7px;font-size:25px}.topbar nav button{padding:8px 6px;font-size:11px}.share-button{padding:9px;font-size:11px}.share-button>svg{display:none}.world-topline{left:20px;right:20px}.world-caption{left:20px}.editor-toolbar>span{font-size:10px}.editor-toolbar>div{gap:12px}.run-button{min-width:88px;padding:9px 11px}.draft-warning{flex-wrap:wrap;align-items:flex-start}.share-link{flex-wrap:wrap}.share-link input{flex-basis:65%}}@media (max-width:380px){.share-button>svg{display:block}.brand{font-size:23px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}.blocklyToolboxCategoryLabel{font-family:inherit;font-size:13px;font-weight:750}.blocklyToolboxCategory{padding:4px 10px}
