:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#060e1e;--bg-deep:#040a15;--panel:#0b1830e6;--panel-solid:#0b1830;--panel-raised:#10213f;--panel-soft:#0d1b35;--line:#84a3e029;--line-strong:#92b2f04d;--text:#f4f7ff;--text-soft:#c3d0ea;--muted:#8195ba;--muted-dark:#5e7196;--orange:#ff8a3d;--orange-deep:#e86216;--teal:#22d3c5;--teal-deep:#0aa79d;--blue:#5b8cff;--purple:#a78bfa;--pink:#ff6b9a;--yellow:#ffcf5c;--danger:#ff647c;--success:#45e0a8;--radius-xl:22px;--radius-lg:16px;--radius-md:12px;--shadow-panel:0 24px 60px #00000052, inset 0 1px 0 #ffffff0a;--font-body:"Nunito", "Segoe UI", sans-serif;--font-display:"Space Grotesk", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg-deep);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:14px;overflow:hidden}button,input{font:inherit}button{color:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,[draggable=true]:focus-visible{outline:2px solid var(--teal);outline-offset:2px}::selection{color:#fff;background:#22d3c547}.svg-sprite{overflow:hidden;width:0!important;height:0!important;position:absolute!important}svg:not(.blocklySvg){fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.app-background{background:radial-gradient(circle at 48% -12%,#1c4e8b4d,#0000 38%),linear-gradient(145deg,#071226 0%,#050c19 48%,#071328 100%);position:fixed;inset:0;overflow:hidden}.ambient{filter:blur(2px);opacity:.6;border-radius:999px;animation:16s ease-in-out infinite alternate ambientFloat;position:absolute}.ambient-one{background:radial-gradient(circle,#2c74ff26,#0000 68%);width:42vw;height:42vw;top:-18vw;left:12vw}.ambient-two{background:radial-gradient(circle,#ff78301f,#0000 67%);width:52vw;height:52vw;animation-delay:-5s;bottom:-24vw;right:-16vw}.ambient-three{background:radial-gradient(circle,#22d3c514,#0000 66%);width:28vw;height:28vw;animation-delay:-10s;top:30%;left:40%}.background-grid{opacity:.18;background-image:linear-gradient(#82a9f424 1px,#0000 1px),linear-gradient(90deg,#82a9f424 1px,#0000 1px);background-size:44px 44px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(circle at 50% 42%,#000 0%,#0000 72%);mask-image:radial-gradient(circle at 50% 42%,#000 0%,#0000 72%)}.background-noise{opacity:.13;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E");position:absolute;inset:0}.app{z-index:1;flex-direction:column;gap:12px;width:min(1800px,100vw - 32px);height:calc(100vh - 32px);margin:16px auto;display:flex;position:relative}.topbar{border:1px solid var(--line);min-height:66px;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:linear-gradient(100deg,#102241f0,#081429eb),radial-gradient(circle at 0,#ff8a3d1a,#0000 25%);border-radius:20px;align-items:center;gap:20px;padding:0 20px;display:flex}.brand{color:var(--text);flex:none;align-items:center;gap:12px;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(145deg, var(--orange), var(--orange-deep));color:#1b1008;border:1px solid #ffaa6780;border-radius:13px;place-items:center;width:42px;height:42px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #ff6f1f47,inset 0 1px #ffffff4d}.brand-mark svg{z-index:1;stroke-width:2px;width:25px;height:25px;position:relative}.brand-orbit{border:1px solid #ffffff6b;border-radius:50%;width:30px;height:30px;position:absolute;top:-12px;right:-12px}.brand-copy{flex-direction:column;line-height:1;display:flex}.brand-copy strong{font-family:var(--font-display);letter-spacing:.13em;font-size:19px}.brand-copy small{color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-top:6px;font-size:10px;font-weight:800}.mission-strip{background:#ffcf5c0a;border:1px solid #ffcf5c24;border-radius:14px;align-items:center;gap:12px;width:min(470px,34vw);margin:0 auto;padding:9px 14px 9px 10px;display:flex}.mission-icon{width:31px;height:31px;color:var(--yellow);background:#ffcf5c1f;border-radius:9px;flex:none;place-items:center;display:grid}.mission-icon svg{width:16px;height:16px}.mission-copy{flex-direction:column;min-width:0;display:flex}.mission-copy>span{color:var(--yellow);letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:900}.mission-copy strong{text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.mission-progress{background:#ffffff14;border-radius:99px;width:62px;height:5px;margin-left:auto;overflow:hidden}.mission-progress i{border-radius:inherit;background:linear-gradient(90deg, var(--yellow), var(--orange));height:100%;display:block;box-shadow:0 0 12px #ffcf5c80}.mission-percent{color:var(--yellow);font-family:var(--font-display);font-size:10px;font-weight:700}.top-actions{flex:none;align-items:center;gap:10px;display:flex}.online-pill{color:var(--muted);background:#45e0a80f;border:1px solid #45e0a829;border-radius:99px;align-items:center;gap:6px;padding:7px 11px;font-size:10px;font-weight:700;display:flex}.online-pill strong{color:var(--success);font-size:10px}.online-dot{background:var(--success);width:6px;height:6px;box-shadow:0 0 10px var(--success);border-radius:50%;animation:2s ease-in-out infinite statusPulse}.demo-profile{border-left:1px solid var(--line);align-items:center;gap:9px;padding-left:12px;display:flex}.avatar{color:#dce6ff;width:34px;height:34px;font-family:var(--font-display);background:linear-gradient(145deg,#5b8cff52,#a78bfa29);border:1px solid #5b8cff52;border-radius:11px;place-items:center;font-size:10px;font-weight:700;display:grid}.demo-copy{flex-direction:column;display:flex}.demo-copy strong{font-size:11px;line-height:1.2}.demo-copy small{color:var(--muted);margin-top:2px;font-size:9px;font-weight:700}.icon-button{border:1px solid var(--line);width:38px;height:38px;color:var(--text-soft);cursor:pointer;background:#ffffff09;border-radius:11px;flex:none;place-items:center;transition:all .16s;display:grid}.icon-button:hover{border-color:var(--line-strong);color:#fff;background:#ffffff13;transform:translateY(-1px)}.icon-button.compact{border-radius:9px;width:31px;height:31px}.icon-button.compact svg{width:16px;height:16px}.icon-button:disabled{cursor:not-allowed;opacity:.35;transform:none}.app-main{flex:1;grid-template-columns:minmax(430px,.91fr) minmax(0,1.28fr);gap:12px;min-height:0;display:grid}.left-rail{grid-template-rows:minmax(0,1.48fr) minmax(246px,.82fr);gap:12px;min-width:0;min-height:0;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius-xl);min-width:0;min-height:0;box-shadow:var(--shadow-panel);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#0f1f3cf0,#081328ed),radial-gradient(circle at 100% 0,#5b8cff14,#0000 34%);overflow:hidden}.panel-heading{justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.heading-copy{align-items:center;gap:11px;min-width:0;display:flex}.heading-icon{border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.heading-icon svg{width:17px;height:17px}.heading-icon-viewer{color:var(--teal);background:#22d3c514;border:1px solid #22d3c526}.heading-icon-blocks{color:var(--orange);background:#ff8a3d14;border:1px solid #ff8a3d29}.heading-copy h1,.heading-copy h2{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:14px;font-weight:700}.heading-copy p{color:var(--muted);margin:3px 0 0;font-size:10px;font-weight:700}.viewer-panel{flex-direction:column;display:flex}.viewer-actions{flex:none;align-items:center;gap:6px;display:flex}.live-badge{color:var(--success);font-family:var(--font-display);letter-spacing:.1em;background:#45e0a80f;border:1px solid #45e0a824;border-radius:99px;align-items:center;gap:6px;margin-right:3px;padding:5px 9px;font-size:8px;font-weight:700;display:flex}.live-badge i{background:var(--success);width:5px;height:5px;box-shadow:0 0 8px var(--success);border-radius:50%;animation:1.6s ease-in-out infinite statusPulse}.viewport-shell{isolation:isolate;background:#071328;border:1px solid #7eaaf438;border-radius:15px;flex:1;min-height:0;margin:0 14px;position:relative;overflow:hidden;box-shadow:inset 0 0 80px #0000006b,0 18px 38px #00000038}.viewport{background:radial-gradient(circle at 50% 38%,#3c89be40,#0000 36%),radial-gradient(circle at 18% 16%,#ff8a3d1a,#0000 30%),linear-gradient(#0a2341 0%,#07162d 52%,#050e1d 100%);position:absolute;inset:0}.viewport canvas{cursor:grab;width:100%;height:100%;display:block}.viewport canvas:active{cursor:grabbing}.viewport-scanlines{z-index:2;pointer-events:none;opacity:.09;mix-blend-mode:soft-light;background:repeating-linear-gradient(#0000 0 2px,#add3ff4d 3px,#0000 4px);position:absolute;inset:0}.viewport-corners{z-index:4;pointer-events:none;position:absolute;inset:10px}.viewport-corners i{border-style:solid;border-color:#8bc0ff73;width:14px;height:14px;position:absolute}.viewport-corners i:first-child{border-width:1px 0 0 1px;border-radius:4px 0 0;top:0;left:0}.viewport-corners i:nth-child(2){border-width:1px 1px 0 0;border-radius:0 4px 0 0;top:0;right:0}.viewport-corners i:nth-child(3){border-width:0 1px 1px 0;border-radius:0 0 4px;bottom:0;right:0}.viewport-corners i:nth-child(4){border-width:0 0 1px 1px;border-radius:0 0 0 4px;bottom:0;left:0}.cell-badge{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050e1ea3;border:1px solid #ffffff1a;border-radius:9px;align-items:center;gap:8px;padding:7px 10px;display:flex;position:absolute;top:14px;left:14px;box-shadow:0 8px 20px #0003}.cell-badge span{color:var(--muted);letter-spacing:.15em;font-size:8px;font-weight:900}.cell-badge strong{color:#fff;font-family:var(--font-display);letter-spacing:.08em;font-size:12px}.heading-card{z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#050e1ea3;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:10px;padding:8px 12px 8px 8px;display:flex;position:absolute;bottom:14px;left:14px;box-shadow:0 10px 24px #00000038}.compass-dial{background:radial-gradient(circle,#22d3c514,#0000 60%),#061124d1;border:1px solid #80acf440;border-radius:50%;flex:none;width:44px;height:44px;position:relative}.compass-dial:before,.compass-dial:after{content:"";background:#82a9e624;position:absolute}.compass-dial:before{width:calc(100% - 10px);height:1px;top:50%;left:5px}.compass-dial:after{width:1px;height:calc(100% - 10px);top:5px;left:50%}.compass-letter{z-index:2;color:var(--muted);font-size:6px;font-weight:900;position:absolute}.compass-n{color:var(--orange);top:2px;left:50%;transform:translate(-50%)}.compass-e{top:50%;right:3px;transform:translateY(-50%)}.compass-s{bottom:2px;left:50%;transform:translate(-50%)}.compass-w{top:50%;left:3px;transform:translateY(-50%)}.compass-needle{z-index:3;transform-origin:50% 100%;width:4px;height:17px;transition:transform .38s cubic-bezier(.2,.8,.2,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-100%)rotate(0)}.compass-needle i{clip-path:polygon(50% 0,100% 100%,50% 72%,0 100%);background:linear-gradient(180deg, var(--teal), #22d3c559);filter:drop-shadow(0 0 5px #22d3c5b3);width:100%;height:100%;display:block}.compass-hub{z-index:4;background:#0c1d36;border:1px solid #fff6;border-radius:50%;width:6px;height:6px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.heading-card-copy{flex-direction:column;display:flex}.heading-card-copy span{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;font-size:8px;font-weight:900}.heading-card-copy strong{font-family:var(--font-display);white-space:nowrap;margin-top:2px;font-size:11px}.viewport-hint{z-index:5;color:#c8d9f49e;text-shadow:0 2px 8px #000;align-items:center;gap:5px;font-size:9px;font-weight:700;display:flex;position:absolute;bottom:15px;right:14px}.viewport-hint svg{width:13px;height:13px}.speech-bubble{z-index:6;color:#10213d;background:#f8fbff;border:1px solid #ffffffe6;border-radius:12px 12px 3px;max-width:210px;padding:10px 12px;font-size:11px;font-weight:800;line-height:1.35;animation:.22s both bubbleIn;position:absolute;top:14px;right:14px;box-shadow:0 12px 26px #00000047}.speech-bubble:after{clip-path:polygon(0 0,100% 0,100% 100%);content:"";background:#f8fbff;border-right:1px solid #fff;width:10px;height:10px;position:absolute;bottom:-6px;right:-1px}.telemetry-row{grid-template-columns:1fr .92fr .9fr;gap:8px;padding:10px 14px 12px;display:grid}.telemetry-card{border:1px solid var(--line);background:#ffffff06;border-radius:11px;align-items:center;gap:9px;min-width:0;padding:8px 10px;display:flex}.telemetry-icon{border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.telemetry-icon svg{width:14px;height:14px}.telemetry-orange{color:var(--orange);background:#ff8a3d1a}.telemetry-teal{color:var(--teal);background:#22d3c517}.telemetry-copy{flex-direction:column;min-width:0;display:flex}.telemetry-copy small{color:var(--muted);letter-spacing:.04em;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:800;overflow:hidden}.telemetry-copy strong{font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11px;font-weight:700;overflow:hidden}.telemetry-copy strong b{color:#fff;font-weight:700}.telemetry-copy strong i{color:var(--muted-dark);margin:0 4px;font-style:normal}.mini-compass{background:#a78bfa14;border:1px solid #a78bfa3b;border-radius:50%;flex:none;width:28px;height:28px;position:relative}.mini-needle{background:linear-gradient(180deg, var(--purple), #a78bfa33);transform-origin:50% 100%;border-radius:2px;width:2px;height:9px;transition:transform .38s cubic-bezier(.2,.8,.2,1);position:absolute;top:50%;left:50%;transform:translate(-50%,-100%)rotate(0)}.catalog-panel{flex-direction:column;display:flex}.catalog-heading{padding-bottom:10px}.search-field{border:1px solid var(--line);width:min(175px,42%);color:var(--muted);background:#040c1a66;border-radius:9px;align-items:center;gap:7px;padding:7px 10px;transition:all .16s;display:flex}.search-field:focus-within{border-color:#22d3c573;box-shadow:0 0 0 3px #22d3c514}.search-field svg{flex:none;width:13px;height:13px}.search-field input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0;font-size:10px;font-weight:700}.search-field input::placeholder{color:var(--muted-dark)}.category-tabs{scrollbar-width:none;gap:5px;padding:0 14px 10px;display:flex;overflow-x:auto}.category-tabs::-webkit-scrollbar{display:none}.category-tab{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;align-items:center;gap:5px;padding:6px 9px;font-size:9px;font-weight:800;transition:all .15s;display:flex}.category-tab:hover{color:var(--text-soft);background:#ffffff0a}.category-tab.active{border-color:var(--line);color:#fff;background:#ffffff12}.tab-dot{border-radius:50%;width:5px;height:5px}.tab-all{background:#a8bce2}.tab-motion{background:var(--orange)}.tab-control{background:var(--blue)}.tab-look{background:var(--purple)}.tab-sensor{background:var(--teal)}.block-catalog{scrollbar-color:#7f9fda59 transparent;scrollbar-width:thin;flex:1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-height:0;padding:0 14px 10px;display:grid;overflow-y:auto}.block-card{border:1px solid color-mix(in srgb, var(--block-colour) 23%, var(--line));background:linear-gradient(115deg, color-mix(in srgb, var(--block-colour) 12%, transparent), transparent 58%), #ffffff06;cursor:grab;text-align:left;border-radius:10px;align-items:center;gap:9px;min-height:57px;padding:9px 9px 9px 11px;transition:all .16s;display:flex;position:relative;overflow:hidden}.block-card:before{background:var(--block-colour);content:"";opacity:.9;width:3px;height:100%;position:absolute;top:0;left:0}.block-card:after{background:var(--block-colour);content:"";opacity:.45;border-radius:0 0 3px 3px;width:20px;height:3px;position:absolute;top:0;right:10px}.block-card:hover{border-color:color-mix(in srgb, var(--block-colour) 52%, transparent);background:linear-gradient(115deg, color-mix(in srgb, var(--block-colour) 20%, transparent), transparent 65%), #ffffff0b;transform:translateY(-1px)}.block-card:active{cursor:grabbing;transform:translateY(0)scale(.99)}.block-card.dragging{opacity:.4}.block-glyph{border:1px solid color-mix(in srgb, var(--block-colour) 35%, transparent);background:color-mix(in srgb, var(--block-colour) 15%, transparent);width:30px;height:30px;color:var(--block-colour);font-family:var(--font-display);border-radius:8px;flex:none;place-items:center;font-size:14px;font-weight:700;display:grid}.block-glyph svg{width:15px;height:15px}.block-copy{flex-direction:column;flex:1;min-width:0;display:flex}.block-copy strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:900;overflow:hidden}.block-copy small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;font-weight:700;overflow:hidden}.block-add{border:1px solid var(--line);width:19px;height:19px;color:var(--muted);opacity:0;background:#ffffff08;border-radius:6px;flex:none;place-items:center;transition:all .15s;display:grid;transform:translate(3px)}.block-add svg{width:11px;height:11px}.block-card:hover .block-add{opacity:1;transform:translate(0)}.block-empty{min-height:90px;color:var(--muted);text-align:center;grid-column:1/-1;place-items:center;font-size:11px;font-weight:700;display:grid}.catalog-footer{color:var(--muted-dark);border-top:1px solid #84a3e014;justify-content:space-between;align-items:center;gap:8px;padding:7px 15px 9px;font-size:8px;font-weight:700;display:flex}.catalog-footer>span:first-child{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;display:flex;overflow:hidden}.catalog-footer svg{flex:none;width:11px;height:11px}.catalog-count{color:var(--muted);flex:none}.code-panel{background:radial-gradient(circle at 80% 0,#5b8cff14,#0000 30%),linear-gradient(150deg,#0c1b35f5,#071123f5);flex-direction:column;display:flex}.code-header{border-bottom:1px solid #84a3e01a;justify-content:space-between;align-items:center;gap:16px;min-height:66px;padding:0 16px;display:flex}.code-title{align-items:center;gap:10px;min-width:0;display:flex}.code-file-icon{color:#9bb7ff;background:linear-gradient(145deg,#5b8cff29,#a78bfa14);border:1px solid #5b8cff33;border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.code-file-icon svg{width:17px;height:17px}.code-title h2{font-family:var(--font-display);white-space:nowrap;align-items:center;margin:0;font-size:13px;font-weight:700;display:flex}.code-title h2 span{color:var(--muted)}.file-dot{background:var(--orange);opacity:0;border-radius:50%;width:5px;height:5px;margin-left:6px;transition:opacity .18s}.file-dot.visible{opacity:1}.code-title p{color:var(--muted);white-space:nowrap;margin:3px 0 0;font-size:9px;font-weight:700}.code-title p strong{color:var(--text-soft)}.code-actions{flex:none;align-items:center;gap:8px;display:flex}.save-state{color:var(--muted);white-space:nowrap;align-items:center;gap:4px;font-size:9px;font-weight:700;display:flex}.save-state svg{width:12px;height:12px;color:var(--success)}.save-state.saving svg{color:var(--yellow);animation:1.2s linear infinite spin}.save-state.error svg{color:var(--danger)}.tool-button-group{border:1px solid var(--line);background:#ffffff06;border-radius:10px;gap:3px;padding:3px;display:flex}.tool-button-group .icon-button{background:0 0;border-color:#0000}.tool-button-group .icon-button:hover{background:#ffffff12}.run-button{color:#042321;cursor:pointer;background:linear-gradient(145deg,#30e0d0,#11b8ac);border:1px solid #72ffe359;border-radius:10px;align-items:center;gap:7px;height:36px;padding:0 10px 0 12px;font-size:11px;font-weight:900;transition:all .16s;display:flex;box-shadow:0 8px 22px #11b8ac38,inset 0 1px #ffffff52}.run-button:hover{background:linear-gradient(145deg,#50ebdc,#15c9bc);transform:translateY(-1px);box-shadow:0 10px 26px #11b8ac52}.run-button:disabled{cursor:not-allowed;opacity:.55;transform:none}.run-button svg{width:17px;height:17px}.run-button kbd{font-family:var(--font-body);background:#0423211c;border:1px solid #0423212e;border-radius:5px;padding:3px 5px;font-size:8px;font-weight:900}.stop-button{width:36px;height:36px;color:var(--danger);cursor:pointer;background:#ff647c1a;border:1px solid #ff647c47;border-radius:10px;place-items:center;transition:all .16s;display:grid}.stop-button:hover:not(:disabled){background:#ff647c2e;transform:translateY(-1px)}.stop-button:disabled{cursor:not-allowed;opacity:.3}.stop-button svg{width:17px;height:17px}.editor-toolbar{background:#050d1d47;border-bottom:1px solid #84a3e014;align-items:center;gap:14px;min-height:38px;padding:0 16px;display:flex}.workspace-label{color:var(--text-soft);letter-spacing:.02em;white-space:nowrap;align-items:center;gap:6px;font-size:9px;font-weight:900;display:flex}.workspace-label i{background:var(--blue);width:5px;height:5px;box-shadow:0 0 8px var(--blue);border-radius:50%}.editor-tip{color:var(--muted-dark);text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;overflow:hidden}.ghost-button{color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;margin-left:auto;padding:4px 8px;font-size:9px;font-weight:800;transition:all .15s}.ghost-button:hover{border-color:var(--line);color:var(--text-soft);background:#ffffff0a}.blockly-wrap{flex:1;min-height:0;position:relative;overflow:hidden}#blocklyDiv{position:absolute;inset:0}.blocklySvg{background:0 0!important}.blocklyMainBackground{stroke:none!important}.blocklyText{font-family:var(--font-body)!important;font-weight:800!important}.blocklyHtmlInput{font-family:var(--font-body)!important;border-radius:4px!important}.blocklyTooltipDiv{border:1px solid var(--line-strong)!important;color:var(--text-soft)!important;font-family:var(--font-body)!important;background:#10213f!important;border-radius:9px!important;font-size:11px!important;box-shadow:0 16px 40px #0006!important}.blocklyDropDownDiv{border:1px solid var(--line-strong)!important;color:var(--text)!important;background:#10213f!important;border-radius:10px!important;box-shadow:0 16px 40px #00000073!important}.blocklyDropDownDiv .goog-menuitem{color:var(--text-soft)!important}.blocklyDropDownDiv .goog-menuitem-highlight{background:#22375f!important}.blocklyWidgetDiv .goog-menu{border:1px solid var(--line-strong)!important;background:#10213f!important;border-radius:10px!important;box-shadow:0 16px 40px #00000073!important}.blocklyWidgetDiv .goog-menuitem{color:var(--text-soft)!important;font-family:var(--font-body)!important}.blocklyWidgetDiv .goog-menuitem-highlight{background:#22375f!important}.blocklyWidgetDiv .goog-menuitem-content{color:inherit!important}.blocklyZoom>image,.blocklyTrash>image{opacity:.7}.run-console{background:#040b195c;border-top:1px solid #84a3e01a;justify-content:space-between;align-items:center;gap:12px;min-height:38px;padding:0 16px;display:flex}.console-message{min-width:0;color:var(--muted);align-items:center;gap:7px;font-size:9px;font-weight:700;display:flex}.console-message span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.console-dot{background:var(--muted-dark);border-radius:50%;flex:none;width:6px;height:6px;transition:all .18s}.console-dot.running{background:var(--teal);box-shadow:0 0 10px var(--teal);animation:1s ease-in-out infinite statusPulse}.console-dot.success{background:var(--success);box-shadow:0 0 10px var(--success)}.console-dot.error{background:var(--danger);box-shadow:0 0 10px var(--danger)}.console-dot.warning{background:var(--yellow);box-shadow:0 0 10px var(--yellow)}.console-meta{color:var(--muted-dark);font-family:var(--font-display);flex:none;align-items:center;gap:7px;font-size:8px;font-weight:600;display:flex}.console-meta>span:first-child{border:1px solid var(--line);color:var(--muted);border-radius:5px;padding:3px 6px}.console-separator{background:var(--muted-dark);border-radius:50%;width:2px;height:2px}.app-footer{min-height:20px;color:var(--muted-dark);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:16px;padding:0 6px;font-size:8px;font-weight:700;display:flex}.app-footer i{color:var(--muted-dark);margin:0 4px;font-style:normal}.app-footer b{color:var(--muted);font-family:var(--font-display)}.footer-status{align-items:center;gap:5px;display:flex}.footer-status i{background:var(--success);width:5px;height:5px;box-shadow:0 0 7px var(--success);border-radius:50%;margin:0}.toast{z-index:100;border:1px solid var(--line-strong);max-width:min(360px,100vw - 32px);color:var(--text-soft);opacity:0;pointer-events:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0d1d38f5;border-radius:11px;padding:11px 14px;font-size:11px;font-weight:700;line-height:1.4;transition:all .2s;position:fixed;bottom:24px;right:24px;transform:translateY(10px);box-shadow:0 18px 46px #0000006b}.toast.visible{opacity:1;transform:translateY(0)}.toast[data-tone=success]{border-color:#45e0a859}.toast[data-tone=error]{border-color:#ff647c61}.toast[data-tone=warning]{border-color:#ffcf5c59}.help-dialog{border:1px solid var(--line-strong);width:min(780px,100vw - 32px);color:var(--text);background:radial-gradient(circle at 95% 0,#5b8cff21,#0000 30%),linear-gradient(145deg,#0f2244,#09152b);border-radius:22px;padding:0;overflow:hidden;box-shadow:0 36px 100px #000000ad}.help-dialog::backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#02070fb8}.help-dialog[open]{animation:.22s both dialogIn}.help-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:24px 26px 20px;display:flex}.eyebrow{color:var(--teal);letter-spacing:.16em;text-transform:uppercase;font-size:9px;font-weight:900}.help-header h2{font-family:var(--font-display);letter-spacing:-.03em;margin:5px 0 0;font-size:22px}.help-steps{grid-template-columns:repeat(3,1fr);gap:12px;padding:20px 26px;display:grid}.help-steps article{border:1px solid var(--line);background:#ffffff06;border-radius:14px;padding:18px 16px 16px;position:relative;overflow:hidden}.step-number{color:#83a2e229;font-family:var(--font-display);font-size:30px;font-weight:700;position:absolute;top:12px;right:13px}.step-icon{width:34px;height:34px;color:var(--teal);background:#22d3c514;border:1px solid #22d3c52b;border-radius:10px;place-items:center;display:grid}.step-icon svg{width:17px;height:17px}.help-steps h3{font-family:var(--font-display);margin:15px 0 5px;font-size:13px}.help-steps p{color:var(--muted);margin:0;font-size:10px;font-weight:600;line-height:1.55}.help-steps p strong{color:var(--text-soft)}.help-shortcuts{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:16px;padding:14px 26px 20px;font-size:9px;font-weight:700;display:flex}.help-shortcuts span{align-items:center;gap:4px;display:flex}kbd{border:1px solid var(--line);color:var(--text-soft);font-family:var(--font-body);background:#ffffff0a;border-radius:5px;padding:3px 5px;font-size:8px;font-weight:900;box-shadow:inset 0 -1px #00000038}.viewport-shell:fullscreen{border:0;border-radius:0;width:100vw;height:100vh;margin:0}.viewport-shell:fullscreen .viewport-hint{bottom:22px;right:22px}.viewport-shell:fullscreen .cell-badge{top:22px;left:22px}.viewport-shell:fullscreen .heading-card{bottom:22px;left:22px}body.is-running .code-panel{box-shadow:var(--shadow-panel), 0 0 42px #22d3c50f;border-color:#22d3c542}body.is-running .run-button svg{animation:1s ease-in-out infinite runPulse}@keyframes ambientFloat{0%{transform:translate(-2%,-1%)scale(.97)}to{transform:translate(3%,2%)scale(1.04)}}@keyframes statusPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.72)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes bubbleIn{0%{opacity:0;transform:translateY(-4px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes dialogIn{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes runPulse{0%,to{transform:scale(1)}50%{transform:scale(.82)}}@media (width<=1280px){.mission-strip{width:min(380px,29vw)}.mission-progress,.save-state{display:none}.app-main{grid-template-columns:minmax(400px,.9fr) minmax(0,1.24fr)}}@media (width<=1120px){.mission-strip{display:none}.app-main{grid-template-columns:minmax(370px,.94fr) minmax(0,1.18fr)}.left-rail{grid-template-rows:minmax(0,1.4fr) minmax(254px,.9fr)}.heading-card{padding-right:8px}.compass-dial{width:38px;height:38px}.viewport-hint,.run-button kbd{display:none}.code-header{padding:0 13px}.editor-tip{display:none}}@media (width<=960px){body{overflow-y:auto}.app{width:calc(100vw - 24px);height:auto;min-height:calc(100vh - 24px);margin:12px auto}.app-main{grid-template-columns:1fr}.left-rail{grid-template-rows:500px 310px}.code-panel{height:720px}.app-footer{display:none}.blockly-wrap{min-height:500px}.save-state{display:flex}.mission-strip{display:none}}@media (width<=680px){.app{gap:8px;width:calc(100vw - 16px);margin:8px auto}.topbar{border-radius:16px;min-height:58px;padding:0 12px}.brand-mark{border-radius:11px;width:36px;height:36px}.brand-mark svg{width:22px;height:22px}.brand-copy strong{font-size:17px}.brand-copy small{font-size:8px}.online-pill,.demo-profile{display:none}.app-main,.left-rail{gap:8px}.left-rail{grid-template-rows:470px 330px}.panel{border-radius:16px}.panel-heading{padding:11px 12px}.heading-copy h1,.heading-copy h2{font-size:13px}.heading-copy p{font-size:9px}.live-badge{display:none}.viewport-shell{margin:0 9px}.telemetry-row{gap:5px;padding:8px 9px 9px}.telemetry-card{padding:7px}.telemetry-icon{width:24px;height:24px}.telemetry-copy small{font-size:7px}.telemetry-copy strong{font-size:9px}.search-field{width:120px}.block-catalog{grid-template-columns:1fr;padding:0 10px 8px}.category-tabs{padding:0 10px 8px}.catalog-heading{gap:8px}.catalog-footer{padding:6px 11px 8px}.code-panel{height:680px}.code-header{gap:8px;min-height:60px}.code-title p,.save-state,.tool-button-group{display:none}.code-actions{gap:5px}.run-button{padding:0 9px;font-size:10px}.run-button span{display:none}.run-button svg{width:18px;height:18px}.editor-toolbar{padding:0 12px}.heading-card{gap:7px;padding:6px 9px 6px 6px}.compass-dial{width:36px;height:36px}.heading-card-copy strong{font-size:10px}.cell-badge{top:10px;left:10px}.help-header,.help-steps,.help-shortcuts{padding-left:18px;padding-right:18px}.help-steps{grid-template-columns:1fr}.help-dialog{max-height:calc(100vh - 24px);overflow-y:auto}.help-header h2{font-size:19px}.toast{bottom:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
