@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.world-preset-picker{border:0;margin:0;padding:0;min-width:0}.world-preset-picker legend{margin-bottom:10px;color:#8d799e;font-size:11px;font-weight:700}.world-preset-option{position:relative;display:flex;align-items:center;gap:12px;padding:14px 12px;margin-bottom:9px;border:1px solid #e8e1ef;border-radius:11px;cursor:pointer;background:#fdfbff;transition:background .15s,border-color .15s}.world-preset-option:hover{border-color:#c4b0e8;background:#faf6ff}.world-preset-option.is-selected{border-color:#a48acb;background:#f5effc;box-shadow:0 0 0 1px #a48acb15}.world-preset-option:focus-within{outline:2px solid #9a7beb;outline-offset:2px}.world-preset-option input{position:absolute;width:1px;height:1px;opacity:0}.world-preset-icon{width:48px;height:48px;flex-shrink:0;display:grid;place-items:center;border-radius:12px}.preset-empty{background:#eee9f5;color:#a38bbb}.preset-flat{background:#eaf3e6;color:#8ca67c}.preset-island{background:#e7f1ed;color:#76a08b}.world-preset-copy{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.world-preset-copy strong{font-size:12px;color:#7c688c}.world-preset-copy>span{font-size:10px;color:#9c8aaa;line-height:1.6}.world-preset-copy small{font-size:9px;color:#b3a2c0}.world-preset-check{width:18px;height:18px;display:grid;place-items:center;border:1px solid #d9cce6;border-radius:50%;color:#fff;flex-shrink:0}.is-selected .world-preset-check{background:#9572be;border-color:#9572be}@media(max-width:500px){.world-preset-option{gap:9px;padding:12px 9px}.world-preset-icon{width:37px;height:42px}.world-preset-copy>span{font-size:9px}}.programming-editor{display:flex;width:100%;height:100%;min-height:360px;overflow:hidden;background:#fcfcff;position:relative}.editor-palette{position:relative;width:172px;min-width:172px;display:flex;flex-direction:column;background:#fdfdff;border-right:1px solid #ededf4;z-index:2;padding:22px 12px 12px;box-sizing:border-box}.editor-palette.is-delete-target{background:#fff0f0;border-right-color:#efbaba}.palette-delete-overlay{position:absolute;inset:0;z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:15px;background:#fff0f0f5;color:#cf555e;text-align:center;pointer-events:none}.palette-delete-overlay strong{font-size:13px;line-height:1.5}.palette-delete-overlay span{font-size:10px;line-height:1.6;color:#b7777c}.palette-heading{display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:800;letter-spacing:1.1px;color:#888b9f;padding:0 5px}.palette-heading span{font-size:9px;font-weight:500;letter-spacing:0;color:#afb0be}.palette-search{height:33px;display:flex;align-items:center;gap:7px;margin:15px 1px 16px;border:1px solid #e9e9f1;border-radius:7px;background:#fff;padding:0 8px;color:#a2a4b5}.palette-search input{width:100%;min-width:0;border:0;background:transparent;outline:none;font:inherit;font-size:10px;color:#5f6179}.palette-search input::placeholder{color:#a2a4b5}.palette-search button{display:flex;padding:0;border:0;background:none;color:inherit;cursor:pointer}.palette-categories{display:flex;flex-direction:column;gap:6px}.palette-category{position:relative;border:0;background:transparent;display:flex;align-items:center;gap:9px;padding:9px 7px;border-radius:8px;color:#5c6077;text-align:left;font:inherit;font-size:11px;font-weight:600;cursor:pointer;transition:background .15s,color .15s}.palette-category:hover,.palette-category.is-selected{background:color-mix(in srgb,var(--category-color) 9%,white);color:var(--category-color)}.category-icon{width:27px;height:27px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--category-color);background:color-mix(in srgb,var(--category-color) 10%,white);border-radius:7px}.category-chevron{margin-left:auto;color:#c1c1ce;opacity:0}.palette-category:hover .category-chevron,.palette-category.is-selected .category-chevron{opacity:1}.palette-category.is-selected:before{content:"";position:absolute;left:-12px;width:3px;height:23px;border-radius:0 3px 3px 0;background:var(--category-color)}.palette-tip{margin:32px 5px 20px;padding:15px 11px 12px;border:1px solid #eceaf9;border-radius:10px;background:linear-gradient(135deg,#f7f5ff,#fcfbff)}.palette-tip-icon{display:flex;color:#9a86d4;margin-bottom:11px}.palette-tip strong{font-size:10px;line-height:1.6;font-weight:600;color:#77718e}.palette-tip p{font-size:9px;line-height:1.8;color:#9e99af;margin:7px 0 0}.palette-bottom{display:flex;align-items:center;gap:6px;margin-top:auto;font-size:8px;color:#b0afc0;white-space:nowrap;padding:0 6px}.editor-canvas-shell{position:relative;flex:1;min-width:0;height:100%;overflow:hidden}.blockly-host{position:absolute;inset:0}.blockly-host .blocklySvg{outline:none;border:0;font-family:Inter,system-ui,sans-serif!important}.blockly-host .blocklyText{font-family:Inter,system-ui,sans-serif!important;font-weight:500!important;font-size:12px!important}.blockly-host .blocklyFlyoutBackground{fill:#f5f5fb;fill-opacity:.98}.blockly-host .blocklyFlyout{filter:drop-shadow(4px 0 8px #32324b08)}.blockly-host .blocklyPathLight{opacity:.22}.blockly-host .blocklyScrollbarHandle{fill:#c7c7d7}.blockly-host .blocklyScrollbarBackground{opacity:0}.blockly-host .blocklySelected>.blocklyPath{stroke:#6559e8;stroke-width:2px}.blockly-host .blocklyHighlighted>.blocklyPath{stroke:#ffd966;stroke-width:4px;filter:drop-shadow(0 0 5px #ffdc63)}.workspace-hint{position:absolute;top:14px;right:17px;display:flex;align-items:center;gap:6px;font-size:9px;color:#b5b3c4;pointer-events:none;-webkit-user-select:none;user-select:none}.workspace-hint-dot{width:5px;height:5px;border-radius:100%;background:#c7c3db}.workspace-zoom{position:absolute;bottom:17px;right:18px;display:flex;align-items:center;height:31px;border:1px solid #e8e7f0;border-radius:7px;background:#fff;box-shadow:0 2px 7px #40385e04;overflow:hidden}.workspace-zoom button{border:0;background:transparent;color:#9b98ad;width:28px;height:30px;font-size:18px;cursor:pointer;line-height:1}.workspace-zoom button:hover{background:#f5f3ff;color:#7762db}.workspace-zoom .zoom-value{font-size:9px;width:36px;font-weight:600;border-left:1px solid #f1f0f6;border-right:1px solid #f1f0f6}.programming-editor.is-running .blockly-host{pointer-events:none}.programming-editor.is-running .workspace-hint-dot{background:#a697e8;animation:editor-pulse 1s infinite}@keyframes editor-pulse{50%{opacity:.25}}@media(max-height:820px){.palette-tip{margin-top:20px;padding:11px}.palette-categories{gap:3px}.palette-category{padding-top:7px;padding-bottom:7px}}@media(max-width:1150px){.editor-palette{width:151px;min-width:151px;padding-left:9px;padding-right:9px}.palette-category{font-size:10px;gap:7px;padding-left:4px;padding-right:4px}.palette-heading span{display:none}.palette-tip{margin-left:0;margin-right:0}}@media(min-width:801px){.programming-editor{min-height:0}.editor-palette{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#ded6ec transparent}.palette-categories{gap:2px}.palette-category{padding-top:5px;padding-bottom:5px}.palette-search{margin-top:12px;margin-bottom:11px;flex-shrink:0}.palette-heading{flex-shrink:0}.palette-bottom{padding-top:13px}.palette-tip{flex-shrink:0}}@media(min-width:801px)and (max-height:1000px){.palette-tip{display:none}.editor-palette{padding-top:16px}.palette-bottom{font-size:7px;padding-left:1px}}@media(min-width:801px)and (max-height:850px){.palette-category{padding-top:2px;padding-bottom:2px}.palette-search{height:29px;margin-top:9px;margin-bottom:9px}.palette-bottom{display:none}.editor-palette{padding-top:13px}}.player-mode-button{position:absolute;z-index:3;right:14px;bottom:12px;display:flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid #e5deef;border-radius:8px;background:#ffffffed;color:#7856dc;font-size:11px;font-weight:750;box-shadow:0 2px 10px #44365a10}.player-mode-button:hover{background:#f1ecfc}.player-active,.player-active canvas{cursor:none}.world-canvas:has(>.player-active)>:not(.player-active){display:none}.player-crosshair{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;text-shadow:0 1px 3px #000;font:22px monospace;pointer-events:none}.player-hint,.player-error{position:absolute;bottom:12px;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100% - 24px);padding:7px 11px;border-radius:8px;background:#343244cf;color:#fff;font-size:10px;text-align:center;pointer-events:none}.player-error{bottom:80px}.camera-projection-select{align-self:center;max-width:116px;height:28px;padding:0 6px;border:1px solid var(--border);border-radius:6px;background:#faf8fd;color:#79658f;font:inherit;font-size:10px;font-weight:650;cursor:pointer}.camera-projection-select:hover,.camera-projection-select:focus-visible{border-color:var(--purple);outline:none}:root{font-family:Manrope Variable,Manrope,system-ui,sans-serif;color:#343244;background:#f6f6fa;font-synthesis:none;font-weight:500;font-size:13px;--purple: #7856dc;--purple-dark: #6744ca;--muted: #9895a6;--border: #eae8ef;--green: #4caa80;--surface: #fff}*{box-sizing:border-box}body{margin:0;min-width:360px}button,input,select{font:inherit}button{cursor:pointer;color:inherit}button:disabled{cursor:not-allowed;opacity:.38}button,a,input,select{outline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #9a7beb}button{transition:background .16s,color .16s,box-shadow .16s,transform .16s}button:active:not(:disabled){transform:translateY(1px)}button svg{flex-shrink:0}button{border:0;background:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:800}svg{vertical-align:middle}button[aria-pressed=true]{color:var(--purple)}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-header{height:77px;min-height:77px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:#fff;border-bottom:1px solid var(--border);gap:20px}.brand{display:flex;align-items:center;gap:11px;padding:0;text-align:left}.brand-icon{height:41px;width:41px;display:grid;place-items:center;color:#fff;border-radius:13px;background:linear-gradient(135deg,#9976ed,#6d47cf);box-shadow:0 4px 8px #7555cd20}.brand>span:nth-child(2){font-size:23px;font-weight:850;letter-spacing:-1px;line-height:1.25}.brand small{display:block;font-size:7px;font-weight:750;letter-spacing:1.5px;color:#a09ba9;margin-top:4px}.beta-badge{align-self:flex-start;background:#f2edff;color:#9576ce;padding:3px 5px;border-radius:4px;font-size:7px;font-weight:800;letter-spacing:.7px;margin-top:4px;margin-left:-4px}.main-nav{display:flex;gap:7px;align-self:stretch;align-items:center}.main-nav button{height:38px;display:flex;align-items:center;gap:8px;color:#827e91;padding:0 16px;font-size:12px;font-weight:750;border-radius:8px;position:relative}.main-nav button:hover{background:#f7f5fb}.main-nav button.active{color:var(--purple);background:#f1ecfc}.nav-new-dot{height:5px;width:5px;background:#9c80da;border-radius:100%;position:absolute;right:8px;top:9px}.header-right{display:flex;align-items:center;gap:20px}.help-button{display:flex;align-items:center;gap:7px;color:#8e889d;font-size:11px}.help-button:hover{color:var(--purple)}.header-divider{width:1px;height:23px;background:var(--border)}.profile-avatar{width:34px;height:34px;border-radius:50%;background:#fff0d9;color:#ad8551;display:grid;place-items:center;font-size:12px;font-weight:800;border:3px solid #fff;box-shadow:0 0 0 1px #eee5d6}.project-toolbar{display:flex;justify-content:space-between;align-items:center;min-height:84px;padding:14px 26px;gap:16px}.project-heading{display:flex;align-items:center;gap:12px;position:relative;min-width:0;flex-wrap:wrap}.project-mode{display:flex;align-items:center;gap:9px;color:#b8b3c3}.project-mode-icon{height:31px;width:31px;border-radius:9px;border:1px solid #e6e1ee;background:#fff;display:grid;place-items:center;color:#8c77b3}.project-mode button{font-size:11px;font-weight:700;color:#8b819c;display:flex;gap:6px;align-items:center;padding:0}.project-title-button{display:flex;align-items:center;gap:11px;padding:0;min-width:0}.project-title-button h1{font-size:17px;letter-spacing:-.5px;max-width:300px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.project-title-button svg{color:#aaa2ba;opacity:.75}.project-title-input{max-width:280px;border:1px solid #c1aeef;border-radius:5px;padding:4px 7px;font-weight:750;font-size:16px;background:#fff;min-width:0}.save-status{font-size:10px;color:#a29cac;display:flex;align-items:center;gap:5px}.save-error{color:#c76855}.project-toolbar-right{display:flex;align-items:center;gap:15px;flex-shrink:0}.save-button{display:flex;align-items:center;gap:7px;color:#82788f;font-size:11px;font-weight:700;padding:8px 0}.save-button:hover{color:var(--purple)}.toolbar-divider{height:25px;width:1px;background:#e6e0ec}.execution-controls{display:flex;align-items:center;gap:10px}.button{min-height:38px;padding:0 16px;display:inline-flex;justify-content:center;align-items:center;gap:8px;font-size:12px;font-weight:750;border-radius:8px;white-space:nowrap}.button-primary,.run-button{background:var(--purple);color:#fff;border:1px solid var(--purple);box-shadow:0 3px 5px #6e49c516}.button-primary:hover,.run-button:hover{background:var(--purple-dark);box-shadow:0 3px 10px #6e49c533}.run-button{padding:0 19px;min-width:122px}.run-button svg{width:14px}.is-running{background:#e29b40;border-color:#e29b40}.is-running:hover{background:#cd872d}.execution-secondary{height:38px;display:flex;align-items:center;gap:2px;background:#fff;border:1px solid #e5e1ec;border-radius:8px;padding:0 4px}.icon-button{width:31px;height:31px;display:inline-flex;align-items:center;justify-content:center;border-radius:6px;color:#9b91ac}.icon-button:hover:not(:disabled){background:#f0ebf8;color:var(--purple)}.icon-button.active{color:var(--purple);background:#f3eefe}.button-divider{width:1px;height:17px;background:var(--border);margin:0 3px}.speed-control{height:34px;display:flex;align-items:center;color:#91869f;gap:2px;margin-left:4px}.speed-control select{border:0;background:transparent;color:#71637f;font-weight:750;font-size:11px;cursor:pointer;outline-offset:1px;padding:4px 2px}.project-dropdown{position:absolute;top:39px;left:0;z-index:100;min-width:190px;padding:6px;border:1px solid var(--border);border-radius:11px;background:#fff;box-shadow:0 10px 30px #4a33621a;display:flex;flex-direction:column}.project-dropdown button{display:flex;align-items:center;gap:9px;text-align:left;padding:10px;font-size:12px;border-radius:6px}.project-dropdown button:hover{background:#f5f0fd}.studio-page{padding:0 25px;flex:1;display:flex;flex-direction:column;min-height:0;gap:14px}.welcome-strip{display:flex;align-items:center;gap:11px;padding:11px 13px 11px 16px;border:1px solid #e8e0f7;background:linear-gradient(100deg,#f0ebfc,#f7f4fc);border-radius:10px;min-height:49px;color:#8c79aa;font-size:11px}.welcome-strip p{flex:1}.welcome-strip strong{color:#7b6698;font-weight:750}.welcome-bulb{color:#a990d2;display:flex}.tip-link{display:flex;gap:5px;align-items:center;color:#8565b8;font-size:10px;font-weight:750;white-space:nowrap}.tip-link:hover{text-decoration:underline}.tip-dismiss{height:23px;width:23px;color:#b9a9cb}.workspace-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:15px;flex:1;min-height:410px}.editor-panel,.world-panel{border:1px solid #e5e1eb;border-radius:12px;background:#fff;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 5px #3b215403;min-width:0;position:relative}.panel-header{height:51px;min-height:51px;border-bottom:1px solid #ede9f1;display:flex;align-items:center;justify-content:space-between;padding:0 15px;gap:8px}.panel-title{display:flex;gap:9px;align-items:center;color:#8c80a0}.panel-title h2{color:#655970;font-size:12px;font-weight:750}.live-badge{display:flex;align-items:center;gap:5px;border:1px solid #dceddf;border-radius:4px;background:#f3faf4;color:#76a17c;font-size:7px;font-weight:800;letter-spacing:.8px;padding:3px 5px;margin-left:3px}.live-badge span{width:4px;height:4px;border-radius:50%;background:#75ad80}.editor-view-tabs{display:flex;align-self:stretch;gap:21px}.editor-view-tabs button{display:flex;align-items:center;gap:7px;position:relative;padding:0 1px;color:#b0a5bc;font-size:11px;font-weight:750}.editor-view-tabs button.active{color:#8765c2}.editor-view-tabs button.active:after{content:"";height:2px;position:absolute;left:0;right:0;bottom:-1px;background:#9470d8;border-radius:2px}.editor-history{display:flex;gap:2px;align-items:center}.block-count{font-size:10px;color:#b4abbf;margin-right:6px}.editor-body{position:relative;flex:1;min-height:340px;display:flex;overflow:hidden}.editor-body>div:first-child{flex:1;min-width:0;min-height:0}.editor-zoom{position:absolute;bottom:15px;right:16px;display:flex;align-items:center;gap:2px;border:1px solid #e9e4f0;background:#fff;border-radius:7px;z-index:8;box-shadow:0 2px 6px #46305405;padding:2px}.editor-zoom button{height:27px;width:29px;display:grid;place-items:center;color:#a79ab9;border-radius:4px}.editor-zoom button:hover{background:#f4eefa;color:var(--purple)}.editor-footer{height:31px;min-height:31px;display:flex;justify-content:space-between;align-items:center;padding:0 13px;border-top:1px solid #efebf4;font-size:9px;color:#aba1b7;background:#fefeff}.editor-footer>span{display:flex;align-items:center;gap:6px}.purple-dot{height:4px;width:4px;border-radius:50%;background:#b39bd5;display:inline-block}.world-header-tools{display:flex;gap:4px}.world-canvas{position:relative;flex:1;min-height:292px;background:#e8f2f7;overflow:hidden}.world-canvas>div:first-child{position:absolute;inset:0}.world-location{position:absolute;top:15px;left:15px;display:flex;align-items:center;gap:7px;pointer-events:none}.world-location-icon{background:#ffffffc9;border:1px solid #ffffffdd;width:29px;height:29px;border-radius:8px;display:grid;place-items:center;color:#8ea7a9}.world-location strong{display:block;font-size:10px;color:#627d83;font-weight:750}.world-location div>span{display:block;font-size:8px;color:#9bb0b5;margin-top:3px}.follow-button{display:flex;align-items:center;gap:5px;position:absolute;top:15px;right:14px;padding:7px 8px;background:#ffffffd9;color:#8e9ba4;border:1px solid #ffffffc2;border-radius:6px;font-size:8px;font-weight:650;box-shadow:0 2px 5px #54607404}.follow-button.following{color:#8063b6;background:#f5f0ff}.camera-tools{position:absolute;right:13px;top:calc(50% - 40px);display:flex;flex-direction:column;background:#fffffff0;border:1px solid #ffffff;border-radius:7px;box-shadow:0 3px 10px #7393a110;padding:4px}.camera-tools button{width:28px;height:30px;color:#9aadb3;border-radius:4px}.camera-tools button:hover{background:#f2f3f8;color:var(--purple)}.camera-tools>span{height:1px;background:#e8edf0;margin:3px}.world-mouse-hint{position:absolute;left:0;right:0;bottom:10px;text-align:center;color:#94a8ab;font-size:8px;pointer-events:none}.world-axes{position:absolute;bottom:22px;left:10px;width:64px;height:64px;font-size:11px;font-weight:800;pointer-events:none}.world-status{display:flex;align-items:center;gap:10px;padding:12px 15px;border-top:1px solid #eceaf0;height:68px}.bot-avatar{width:39px;height:39px;display:grid;place-items:center;background:#f2ecfb;border:1px solid #e8dff6;border-radius:10px;color:#a388ca}.bot-details{flex:1}.bot-details strong{display:block;font-size:11px;color:#7d6c91;font-weight:750}.bot-details span{font-size:8px;color:#a89eb6;display:flex;align-items:center;gap:4px;margin-top:5px}.bot-details i{width:4px;height:4px;border-radius:50%;background:#9acba4}.position-chips{display:flex;gap:6px}.position-chips span{display:flex;align-items:center;gap:7px;padding:6px 8px;background:#f8f7fa;border:1px solid #f0ecf4;color:#9c92a8;border-radius:5px;font-size:10px;min-width:39px;justify-content:space-between}.position-chips b{font-weight:700;font-size:9px;color:#c0b5ca}.world-settings-bar{height:31px;min-height:31px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0ecf4;padding:0 12px;font-size:8px;color:#aaa1b6;position:relative;background:#fefeff}.world-settings-bar>span{display:flex;align-items:center;gap:5px}.green-dot{height:4px;width:4px;border-radius:50%;background:#a1c5a4;display:inline-block}.world-settings-bar>button{display:flex;align-items:center;gap:4px;color:#a798ba;font-size:8px}.world-settings-menu{position:absolute;right:8px;bottom:28px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:10px;box-shadow:0 5px 18px #42305a16;display:flex;flex-direction:column;gap:9px;font-size:11px;color:#766682;z-index:10}.world-settings-menu label{display:flex;align-items:center;gap:7px;white-space:nowrap}.world-settings-menu input{accent-color:var(--purple)}.block-inspector{position:absolute;bottom:31px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:7px;padding:7px 9px;background:#fffffff0;box-shadow:0 2px 8px #4c6a6c15;border-radius:6px;font-size:10px;color:#8c83a1;white-space:nowrap}.block-inspector span{font-size:9px;color:#a4a0ae}.block-inspector button{padding:0;color:#a99bb5}.world-panel:fullscreen{border-radius:0}.world-panel:fullscreen .world-canvas{flex:1}.runtime-panel{border:1px solid #e6e1ee;background:#fff;border-radius:11px;overflow:hidden;min-height:150px;height:150px;display:flex;flex-direction:column}.runtime-top{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f0ebf5;height:37px;min-height:37px;padding:0 14px}.runtime-tabs{display:flex;height:100%;gap:24px}.runtime-tabs button{position:relative;display:flex;gap:7px;align-items:center;font-size:10px;font-weight:700;color:#b3a5c1;padding:0}.runtime-tabs button.selected{color:#8c6db3}.runtime-tabs button.selected:after{position:absolute;content:"";bottom:-1px;height:2px;background:#a286c6;left:0;right:0}.tiny-badge{font-size:8px;background:#f5f0f9;padding:0 4px;border-radius:4px;color:#ad99c1;line-height:14px}.instruction-counter{font-size:9px;color:#baaec8;display:flex;gap:7px;align-items:center}.status-dot{height:5px;width:5px;border-radius:50%;background:#b7a1d6}.status-dot.pulse{animation:pulse 1.2s ease infinite;background:#9bbf93}.runtime-content{flex:1;padding:9px 15px;overflow:auto;min-height:0}.console-output{display:flex;flex-direction:column;gap:5px;justify-content:flex-end;min-height:100%}.console-line{display:flex;gap:12px;line-height:1.5;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;color:#9686a5;white-space:pre-wrap}.console-prompt{color:#c1b6ce}.console-success{color:#7fa990}.console-muted{color:#bbacc6}.console-error{color:#d0807d}.runtime-bottom{min-height:28px;display:flex;align-items:center;padding:0 15px;background:#fcfbfe;border-top:1px solid #f0ebf6;gap:24px;color:#b4a6c3;font-size:9px}.runtime-state{display:flex;gap:6px;align-items:center;color:#a2b19c;min-width:127px}.state-running{color:#73aa84}.state-paused{color:#c7a461}.state-error{color:#cf837d}.runtime-coordinate{display:flex;align-items:center;gap:7px;white-space:nowrap}.runtime-coordinate b{font-size:8px;font-weight:600;color:#c5b8d2;margin-left:5px}.runtime-engine{margin-left:auto;color:#c6bacf;font-size:8px}.runtime-engine span{margin-left:4px;color:#d3c8da}.footer-divider{height:10px;width:1px;background:#e7dfed;margin:0 4px}.runtime-empty{display:flex;align-items:center;gap:13px;color:#b9a8c8;font-size:11px;min-height:100%}.runtime-empty small{display:block;color:#c3b8cd;font-size:10px;margin-top:5px}.variable-list{display:flex;gap:10px;flex-wrap:wrap}.variable-item{display:flex;align-items:center;gap:7px;border:1px solid #ede7f4;border-radius:7px;padding:9px 12px;color:#9f86b6;font-size:11px}.variable-item small{color:#c0b4cd}.variable-item code{color:#668ba6}.debug-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:20px;padding:4px 2px}.debug-grid>div{display:flex;flex-direction:column;gap:7px;overflow:hidden}.debug-grid small{color:#b6a5c6;font-size:9px}.debug-grid code,.debug-grid>div>span{font-size:10px;color:#8f75a9;overflow:auto}.app-footer{display:flex;justify-content:space-between;align-items:center;min-height:34px;padding:5px 27px;color:#b4a9c0;font-size:8px;gap:10px}.app-footer>span{display:flex;gap:5px;align-items:center}.footer-logo{color:#bba9cf;margin-right:3px}.app-footer>button{display:flex;gap:5px;align-items:center;color:#b6a3c9;font-size:8px}.code-view{flex:1;min-height:340px;max-height:650px;background:#fcfbff;display:flex;flex-direction:column;overflow:hidden}.code-file{height:37px;min-height:37px;background:#f8f5fd;border-bottom:1px solid #eee8f5;display:flex;justify-content:space-between;align-items:center;padding:0 18px;font-size:10px;color:#a091b5}.code-file>span,.code-file>button{display:flex;align-items:center;gap:6px}.code-file button{font-size:9px;color:#a591bd}.code-view pre{padding:13px 0;margin:0;overflow:auto;flex:1}.code-line{display:flex;font:11px/1.9 ui-monospace,SFMono-Regular,Consolas,monospace}.code-line>span{min-width:43px;flex-shrink:0;text-align:right;padding-right:15px;color:#d0c4dd;-webkit-user-select:none;user-select:none}.code-line>code{white-space:pre;color:#8e6bab}.code-note{display:flex;gap:8px;align-items:center;color:#b1a2c0;font-size:9px;padding:13px 17px;border-top:1px solid #f0eaf7}.storage-error-banner{background:#fff2e5;border:1px solid #f8dcbb;padding:9px 25px;display:flex;gap:9px;align-items:center;color:#b88550;font-size:11px;margin-bottom:12px}.storage-error-banner button{margin-left:auto;text-decoration:underline;color:#a97543}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes pulse{50%{opacity:.35}}@media(min-width:1600px){.workspace-grid{min-height:calc(100vh - 405px)}.studio-page{padding:0 32px}.project-toolbar{padding-left:33px;padding-right:33px}.app-header{padding:0 38px}.world-canvas{min-height:380px}}@media(min-width:1000px)and (min-height:780px){.workspace-grid{min-height:calc(100vh - 405px)}}@media(max-width:1250px){.save-status{display:none}.project-title-button h1{max-width:255px;font-size:15px}.app-header{padding:0 22px}.header-right{gap:12px}.main-nav button{padding:0 12px}.project-toolbar{padding:13px 20px;min-height:76px}.project-toolbar-right{gap:11px}.studio-page{padding:0 18px}.project-mode{gap:6px}.project-heading{gap:7px}.welcome-strip p span{display:none}.workspace-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.follow-button{font-size:7px;padding:6px}.world-location{left:10px}.world-location strong{font-size:9px}.world-location div>span{font-size:7px}.speed-control{margin-left:0}.runtime-panel{height:145px;min-height:145px}}@media(max-width:1050px){.help-button span,.beta-badge,.project-mode button{display:none}.project-title-button h1{max-width:220px}.save-button span{display:none}.workspace-grid{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:10px}.world-location-icon{display:none}.position-chips{gap:3px}.position-chips span{min-width:31px;padding:5px;font-size:9px}.world-status{padding:10px;gap:7px}.bot-avatar{width:32px;height:32px}.bot-details span{font-size:7px}.world-settings-bar>span{font-size:7px}.world-settings-bar>button{font-size:7px}.world-mouse-hint{font-size:7px}.block-count{display:none}.editor-view-tabs{gap:15px}.panel-header{padding:0 11px}.main-nav{gap:2px}.main-nav button{font-size:11px}.runtime-engine{display:none}}@media(max-width:800px){.app-header{height:66px;min-height:66px;padding:0 16px;gap:9px}.brand>span:nth-child(2){font-size:20px}.brand-icon{width:35px;height:35px}.brand small{font-size:6px;letter-spacing:1px}.main-nav button{padding:0 8px;font-size:10px;gap:5px}.main-nav button svg{width:14px}.header-right{gap:0}.header-divider,.profile-avatar{display:none}.project-toolbar{flex-wrap:wrap;padding:13px 16px;gap:13px}.project-heading{flex:1}.project-title-button h1{max-width:330px}.project-toolbar-right{justify-content:space-between;width:100%}.save-button span{display:inline}.toolbar-divider{margin-left:auto}.workspace-grid{grid-template-columns:1fr}.editor-panel{min-height:420px}.world-panel{min-height:450px}.world-canvas{min-height:300px}.welcome-strip p{font-size:10px}.tip-link{font-size:9px}.studio-page{padding:0 12px;gap:12px}.editor-footer{font-size:8px}.world-location-icon{display:grid}.world-location strong{font-size:11px}.world-location div>span{font-size:9px}.follow-button,.world-mouse-hint{font-size:9px}.runtime-tabs{gap:17px}.runtime-tabs button{font-size:9px}.runtime-coordinate{gap:4px;font-size:8px}.runtime-bottom{gap:6px;padding:0 10px}.app-footer{padding:9px 15px}.app-footer>span:nth-child(2){display:none}.debug-grid{grid-template-columns:1fr 1fr;gap:10px}.runtime-panel{height:165px;min-height:165px}}@media(max-width:480px){.brand small{display:none}.brand{gap:7px}.brand>span:nth-child(2){font-size:19px}.brand-icon{width:31px;height:31px;border-radius:9px}.brand-icon svg{width:22px}.main-nav button{font-size:0;padding:0 11px}.main-nav button svg{width:17px}.main-nav{gap:3px}.help-button{padding:3px}.project-title-button h1{font-size:15px;max-width:255px}.tip-link{display:none}.execution-controls{gap:6px}.run-button{min-width:105px;padding:0 12px;font-size:11px}.execution-secondary{gap:0}.execution-secondary .icon-button{width:27px}.toolbar-divider{display:none}.project-toolbar-right{gap:4px}.save-button span{display:none}.runtime-tabs{gap:12px}.instruction-counter{font-size:8px}.runtime-state{font-size:8px;min-width:95px}.runtime-coordinate{font-size:7px}.runtime-coordinate b{margin-left:1px}.runtime-coordinate svg:nth-of-type(2),.footer-divider{display:none}.world-settings-bar>span{font-size:8px}.runtime-top{padding:0 10px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media(min-width:801px){.app-shell{height:100dvh;overflow:hidden}.app-header{height:68px;min-height:68px;flex-shrink:0}.project-toolbar{min-height:75px;flex-shrink:0}.workspace-grid{min-height:0;flex:1}.editor-body,.world-canvas{min-height:0}.runtime-panel{height:135px;min-height:135px;flex-shrink:0}.app-footer{min-height:30px;flex-shrink:0}.library-scroll{overflow-y:auto;min-height:0}.welcome-strip{min-height:43px;padding-top:8px;padding-bottom:8px;flex-shrink:0}.world-status{height:59px;min-height:59px;padding-top:8px;padding-bottom:8px}.panel-header{height:46px;min-height:46px}.code-view{min-height:0}.world-panel{height:100%}}@media(min-width:801px)and (max-height:850px){.runtime-panel{height:120px;min-height:120px}.runtime-top{height:34px;min-height:34px}.studio-page{gap:11px}.project-toolbar{min-height:68px}.editor-footer,.world-settings-bar{height:27px;min-height:27px}}.studio-shell .app-header{height:52px;min-height:52px;padding:0 18px;gap:12px}.studio-shell .brand{gap:8px}.studio-shell .brand-icon{width:31px;height:31px;border-radius:9px}.studio-shell .brand-icon svg{width:22px}.studio-shell .brand>span:nth-child(2){font-size:20px}.studio-shell .brand small,.studio-shell .beta-badge,.studio-shell .app-footer{display:none}.studio-shell .main-nav button{height:32px}.studio-shell .profile-avatar{width:29px;height:29px}.studio-shell .project-toolbar{min-height:48px;padding:6px 18px;gap:12px}.studio-shell .project-heading{flex-wrap:nowrap;gap:9px}.studio-shell .project-mode{flex-shrink:0;gap:7px}.studio-shell .project-mode button{display:flex}.studio-shell .project-mode-icon{display:none}.studio-shell .project-title-button h1{font-size:15px;max-width:260px}.studio-shell .save-status{white-space:nowrap}.studio-shell .project-toolbar-right{gap:12px}.studio-shell .run-button,.studio-shell .execution-secondary{min-height:34px;height:34px}.studio-shell .studio-page{padding:0 14px 12px;gap:10px}.studio-shell .workspace-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:12px;min-height:0}.studio-preview{display:flex;flex-direction:column;min-width:0;min-height:0;gap:10px}.studio-preview .world-panel{flex:1;height:auto;min-height:0}.studio-shell .panel-header{height:40px;min-height:40px}.studio-shell .editor-footer{gap:10px;height:29px;min-height:29px}.studio-shell .editor-footer>span{min-width:0}.studio-shell .editor-footer .tip-link{display:flex;flex-shrink:0}.studio-preview .runtime-panel{height:clamp(160px,23vh,205px);min-height:160px;flex-shrink:0}.studio-preview .runtime-top{height:auto;min-height:36px;padding:0 11px;gap:6px 12px;flex-wrap:wrap}.studio-preview .runtime-tabs{height:35px;gap:16px}.studio-preview .runtime-tabs button{gap:5px}.studio-preview .instruction-counter{margin-left:auto;min-height:20px;white-space:nowrap}.studio-preview .runtime-content{padding:8px 11px}.studio-preview .console-line{gap:8px;overflow-wrap:anywhere}.studio-preview .runtime-bottom{min-height:29px;padding:5px 11px;gap:5px 12px;flex-wrap:wrap;justify-content:space-between}.studio-preview .runtime-state{min-width:0}.studio-preview .runtime-coordinate{gap:4px}.studio-preview .runtime-engine{display:none}.studio-preview .debug-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px}.studio-shell .challenge-strip{flex-shrink:0;padding:8px 12px}@media(min-width:801px){.studio-shell .world-canvas,.studio-shell .editor-body{min-height:0}}@media(min-width:801px)and (max-width:1100px){.studio-shell .project-title-button h1{max-width:210px}.studio-shell .project-toolbar-right,.studio-shell .execution-controls{gap:8px}.studio-preview .runtime-tabs{gap:12px}.studio-preview .runtime-tabs button{font-size:9px}}@media(max-width:800px){.studio-shell .app-header{padding:0 12px;gap:8px}.studio-shell .project-toolbar{padding:8px 12px;gap:8px}.studio-shell .project-heading{flex-basis:100%}.studio-shell .project-title-button h1{max-width:min(52vw,330px)}.studio-shell .studio-page{padding:0 10px 12px}.studio-shell .workspace-grid{grid-template-columns:1fr}.studio-shell .editor-panel{min-height:500px;height:65dvh}.studio-shell .editor-body{min-height:0}.studio-preview .world-panel{min-height:440px;height:55dvh;flex:auto}.studio-preview .runtime-panel{height:190px}}@media(max-width:480px){.studio-shell .brand>span:nth-child(2){font-size:19px}.studio-shell .project-toolbar-right{gap:6px}.studio-shell .editor-footer{padding:0 9px;font-size:7px;gap:6px}.studio-shell .editor-footer .tip-link{font-size:8px}.studio-preview .runtime-top{gap:0 10px}.studio-preview .instruction-counter{padding-bottom:5px}}.button-secondary{background:#fff;color:#8c7d9c;border:1px solid #e6dfec;box-shadow:0 2px 2px #422a4d02}.button-secondary:hover{background:#faf7fe;border-color:#cebae6}.button-danger{background:#d47679;color:#fff;border:1px solid #d47679}.button-danger:hover{background:#c16669}.modal-backdrop{position:fixed;inset:0;background:#26213255;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;display:flex;justify-content:center;align-items:center;padding:20px}.modal{width:470px;max-width:100%;max-height:90vh;overflow:auto;background:#fff;border:1px solid #f1e9f8;box-shadow:0 20px 80px #21123530;border-radius:19px;padding:26px}.modal-wide{width:600px}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:15px}.modal-header h2{font-size:20px;letter-spacing:-.6px;color:#645574}.modal-description{color:#a090ac;font-size:12px;line-height:1.9;margin-bottom:22px}.form-field{display:flex;flex-direction:column;gap:8px;font-size:11px;font-weight:700;color:#8d799e;margin-bottom:18px}.form-field input{height:42px;border:1px solid #e5dced;border-radius:8px;padding:0 12px;background:#fcfaff;color:#796484}.form-field small{font-size:10px;color:#b2a1bf;font-weight:500;line-height:1.6}.new-project-preview{padding:15px;background:#f6f2fd;border:1px solid #ede3f9;border-radius:10px;display:flex;align-items:center;gap:13px;color:#b19bcc}.new-project-preview strong{display:block;font-size:12px;color:#9575b8;margin-bottom:4px}.new-project-preview small{display:block;font-size:10px;line-height:1.7;color:#ad99be}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:24px}.modal-actions .button{min-height:40px}.help-steps{display:flex;flex-direction:column;gap:22px}.help-steps>div{display:flex;gap:13px}.help-steps>div>span{flex-shrink:0;width:38px;height:38px;background:#f3edfb;border-radius:10px;display:grid;place-items:center;color:#a58ac6}.help-steps h3{font-size:12px;color:#8e779e;margin:0 0 6px}.help-steps p{font-size:11px;color:#b09fbb;line-height:1.9}.help-note{display:flex;gap:10px;align-items:flex-start;padding:13px;background:#fff9ed;border:1px solid #f7eccc;border-radius:9px;margin-top:23px;color:#c4ab78}.help-note svg{flex-shrink:0;margin-top:2px}.help-note p{font-size:10px;line-height:1.8}.keyboard-shortcuts{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:9px;color:#b6a4c3;padding:15px 0 0}.keyboard-shortcuts span{display:flex;align-items:center;gap:4px}.keyboard-shortcuts kbd{background:#f9f5fd;border:1px solid #ede3f5;border-radius:4px;padding:2px 4px;font-size:8px}.toast{position:fixed;bottom:30px;left:50%;transform:translate(-50%);background:#fff;border:1px solid #e6dced;box-shadow:0 6px 30px #46315422;z-index:1100;border-radius:11px;padding:13px 14px;display:flex;gap:10px;align-items:center;max-width:min(90vw,650px);font-size:11px;color:#967ba7}.toast>svg{flex-shrink:0}.toast-success{border-color:#d5eadd;color:#71a786}.toast-error{border-color:#f0d7d2;color:#c17d72}.toast button{padding:2px;color:#b4a8be}.toast span{line-height:1.8;white-space:pre-line}.library-scroll{width:100%;flex:1;min-height:0}.library-page{flex:1;width:100%;max-width:1380px;margin:0 auto;padding:45px 45px 60px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:31px}.eyebrow{font-size:8px;color:#b5a1c8;font-weight:800;letter-spacing:1.8px}.page-heading h1{font-size:31px;letter-spacing:-1px;color:#786584;margin-top:10px}.heading-dot{color:#b995dc}.page-heading p{font-size:12px;color:#b3a4bd;margin-top:10px}.page-actions{display:flex;gap:9px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.new-project-card{border:1.5px dashed #ded1eb;border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:280px;background:#f9f6fd;gap:11px;color:#b3a1c2}.new-project-card>span{width:49px;height:49px;display:grid;place-items:center;background:#eee6f8;border:1px solid #e3d6f0;border-radius:14px;color:#af96c9;margin-bottom:3px}.new-project-card h3{font-size:14px;color:#a58bb7}.new-project-card p{font-size:11px;color:#b9aac6}.new-project-card:hover{background:#f1e9fb;border-color:#b695d7}.project-card{overflow:hidden;border:1px solid #e6deed;border-radius:14px;background:#fff;box-shadow:0 2px 5px #47325404}.project-cover{height:195px;width:100%;position:relative;display:flex;align-items:center;justify-content:center;background:#e9f1f5;overflow:hidden}.project-cover:hover .project-open{background:#fff;color:#9375b7}.cover-1{background:#eff1e5}.cover-2{background:#f2edf8}.project-cover-label{position:absolute;left:15px;top:15px;background:#fffa;border:1px solid #fff6;border-radius:5px;display:flex;align-items:center;gap:5px;padding:5px 7px;font-size:8px;color:#94a6a3}.project-open{position:absolute;right:13px;bottom:14px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff8;color:#a2aaa7}.mini-island{width:117px;height:117px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);transform:rotateX(58deg) rotate(-40deg);position:relative;box-shadow:-12px 17px #bd9c77,-15px 20px #a4866a,0 48px 27px #4e735033;gap:1px}.mini-island i{background:#adc394}.mini-island i:nth-child(2n){background:#b4c99b}.mini-island i:nth-child(3n){background:#a4bd8a}.mini-island i:first-child:after,.mini-island i:nth-child(3):after{content:"";display:block;position:relative;width:35px;height:35px;background:#89a774;box-shadow:-10px 11px #7b9967,-12px 13px #8f795f;transform:translate(10px,-13px)}.cover-1 .mini-island i{background:#b6caa1}.cover-2 .mini-island i{background:#b4c7a2}.project-card-info{position:relative;padding:17px}.project-name{font-size:13px;font-weight:750;color:#967caa;text-align:left;padding:0;max-width:100%;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.current-project-label{font-size:8px;color:#b79acb;background:#f4edf9;border-radius:4px;padding:3px 5px;margin-left:8px;white-space:nowrap}.project-card-info p{display:flex;align-items:center;gap:5px;font-size:9px;color:#c1b2ca;margin-top:9px}.project-card-info p span{margin:0 3px}.delete-project{position:absolute;right:10px;bottom:10px;color:#c7b4d2}.progress-badge{display:flex;align-items:center;gap:12px;color:#bc9cce;padding:11px 17px;background:#f1ebf9;border:1px solid #e7ddf1;border-radius:10px;white-space:nowrap}.progress-badge strong,.progress-badge small{display:block}.progress-badge strong{font-size:14px;color:#a17ab6}.progress-badge small{font-size:8px;color:#bda5cd;margin-top:3px}.course-banner{display:flex;align-items:center;gap:19px;padding:26px 30px;background:linear-gradient(110deg,#ece5f8,#f5eefb);border:1px solid #e3d8f0;border-radius:14px;margin-bottom:32px}.course-banner-icon{width:62px;height:62px;border-radius:18px;background:#fff7;display:grid;place-items:center;color:#aa88ca;border:1px solid #fff8}.course-banner>div:nth-child(2)>span{font-size:8px;letter-spacing:1.3px;color:#b49cca;font-weight:750}.course-banner h2{font-size:21px;color:#9975b4;margin-top:7px;letter-spacing:-.5px}.course-banner p{font-size:11px;color:#b49ac6;margin-top:7px}.course-progress{margin-left:auto;width:190px}.course-progress>span{display:block;font-size:10px;color:#b399c8;text-align:right;margin-bottom:9px}.course-progress>div{height:5px;background:#e7daf1;border-radius:5px;overflow:hidden}.course-progress i{display:block;height:100%;background:#af8ccc;border-radius:5px}.section-heading{font-size:17px;color:#9b81ad;display:flex;align-items:center;gap:13px;margin-bottom:20px}.section-heading span{font-size:9px;font-weight:500;color:#bdaec9}.challenge-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.challenge-card{border:1px solid #e8dff0;border-radius:13px;background:#fff;padding:21px;display:flex;flex-direction:column}.challenge-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:21px}.challenge-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:13px}.challenge-level{font-size:8px;border:1px solid #eee4f3;border-radius:4px;padding:4px 6px;color:#baa4c9;display:flex;gap:3px;align-items:center}.challenge-level.complete{color:#97b69b;border-color:#dbeade;background:#f4faf5}.challenge-topic{font-size:8px;color:#c1afce;font-weight:650}.challenge-card h3{font-size:16px;color:#a285b2;margin-top:8px;letter-spacing:-.4px}.challenge-card>p{font-size:10px;line-height:1.9;color:#bba9c8;margin-top:10px;flex:1}.challenge-card-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:14px;border-top:1px solid #f2eaf6}.challenge-card-bottom>span{display:flex;gap:5px;align-items:center;font-size:9px;color:#c6b6d1}.challenge-card-bottom button{font-size:10px;color:#ad8bc5;display:flex;align-items:center;gap:7px;font-weight:750}.challenge-card-bottom button:hover{color:var(--purple)}.course-map{margin-top:33px;border:1px solid #e8def0;border-radius:12px;padding:23px;background:#fcfaff}.course-map h3{font-size:14px;color:#ab8ebc}.course-map p{font-size:10px;color:#c1accc;margin-top:7px;line-height:1.8}.course-map>div{display:flex;flex-wrap:wrap;gap:10px;margin-top:19px}.course-map>div>span{display:flex;align-items:center;gap:7px;border:1px solid #ece1f4;background:#fff;border-radius:6px;padding:8px 10px;font-size:10px;color:#b9a1c8}.course-map b{font-size:8px;color:#d1bcdf;font-weight:650}.challenge-strip{display:flex;align-items:center;gap:13px;min-height:65px;padding:12px 17px;border:1px solid #e2d5ef;background:#f2ebfa;border-radius:10px;color:#b297c6}.challenge-strip>span:first-child{display:grid;place-items:center;width:32px;height:32px;border:1px solid #e3d5ef;border-radius:9px;background:#fff7}.challenge-strip strong{font-size:11px;color:#9c7ab1}.challenge-strip p{font-size:10px;color:#b39ac5;margin-top:4px;line-height:1.6}.challenge-strip-tag{margin-left:auto;border:1px solid #e2d3ee;border-radius:5px;padding:5px 8px;font-size:8px;white-space:nowrap}@media(max-width:1150px){.library-page{padding:35px 28px}.page-heading h1{font-size:27px}.challenge-grid{grid-template-columns:repeat(2,1fr)}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.current-project-label{display:none}.course-progress{width:150px}}@media(max-width:800px){.library-page{padding:27px 18px}.page-heading{align-items:flex-start;flex-wrap:wrap}.page-heading h1{font-size:25px}.page-actions{width:100%}.progress-badge{padding:9px 12px}.course-banner{padding:20px;gap:13px;flex-wrap:wrap}.course-banner h2{font-size:19px}.course-progress{width:100%}.course-banner-icon{width:47px;height:47px}.challenge-card{padding:17px}.project-cover{height:165px}.new-project-card{min-height:248px}.challenge-strip-tag{display:none}.toast{bottom:20px;width:max-content}.keyboard-shortcuts{flex-wrap:wrap;gap:10px}.modal{padding:22px}.modal-header h2{font-size:18px}}@media(max-width:500px){.project-grid,.challenge-grid{grid-template-columns:1fr}.new-project-card{min-height:190px}.project-cover{height:190px}.course-banner h2{font-size:17px}.course-banner-icon{width:40px;height:40px}.page-heading h1{font-size:25px}.course-banner>div:nth-child(2){flex:1}.course-banner p{font-size:10px}.challenge-card-top{margin-bottom:17px}.modal-backdrop{padding:12px}.modal{padding:20px}.help-steps{gap:15px}}
