#console-toast{z-index:110;color:#eff6eb;overflow-wrap:anywhere;background:#162830;border:1px solid #8fb75e;border-radius:12px;width:min(440px,100vw - 32px);max-height:45vh;padding:16px;font-size:12px;line-height:1.6;position:fixed;top:20px;right:20px;overflow:auto;box-shadow:0 10px 36px #0006}#console-toast[hidden]{display:none}#console-toast strong{color:#c6f178;font-size:11px}#console-toast p{white-space:pre-wrap;margin:8px 0 12px}#console-toast.error{border-color:#f3a59a}#console-toast.error strong{color:#ffb5aa}.console-toast-actions{justify-content:space-between;gap:16px;display:flex}.console-toast-actions button{color:#c6f178;background:0 0;border:0;padding:4px 0;font-weight:700}.console-toast-actions button:focus-visible{outline-offset:4px;outline:2px solid}@media (width<=760px){#console-toast{top:12px;right:16px}}#campus-dialog{background:var(--paper);border:1px solid var(--line);width:min(1180px,100vw - 32px);max-width:none;max-height:94dvh;color:var(--ink);border-radius:16px;padding:0}#campus-dialog::backdrop{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#02070be6}.campus-top{border-bottom:1px solid var(--line);background:var(--paper);z-index:2;justify-content:space-between;align-items:center;padding:16px 24px;display:flex;position:sticky;top:0}.campus-wordmark{font:700 22px var(--mono);color:var(--lime);text-decoration:none}.campus-wordmark span{font:10px var(--mono);letter-spacing:2px;color:var(--muted);margin-left:12px}.campus-layout{min-height:620px;display:flex}.campus-sidebar{border-right:1px solid var(--line);background:#101820;flex-shrink:0;width:220px;padding:28px 18px}.campus-identity{gap:7px;padding:0 10px 28px;display:grid}.campus-identity>span{background:var(--lime);color:#152018;border-radius:10px;place-items:center;width:44px;height:44px;margin-bottom:8px;font-weight:800;display:grid}.campus-identity small{color:var(--muted)}.campus-sidebar nav{gap:6px;display:grid}.campus-sidebar nav button{text-align:left;color:var(--muted);background:0 0;border:0;border-radius:7px;gap:12px;padding:14px 10px;font-size:12px;display:flex}.campus-sidebar nav button.selected{color:var(--lime);background:#c3f56b12}.campus-sidebar nav small{font:10px var(--mono);opacity:.65}.campus-sidebar>p{color:var(--muted);margin:40px 10px 20px;font-size:11px}.campus-content{flex:1;min-width:0;padding:36px}.campus-content h1{letter-spacing:-1.5px;margin:12px 0 20px;font-size:clamp(26px,3vw,38px);line-height:1.15}.campus-content h2{letter-spacing:-.4px;margin:14px 0;font-size:18px}.campus-content p{color:var(--muted);font-size:13px;line-height:1.7}.campus-lead{max-width:650px;margin-bottom:26px}.campus-toolbar{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.campus-toolbar button{font-size:11px}.campus-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,265px),1fr));gap:16px;margin-top:24px;display:grid}.campus-card{border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere;border-radius:12px;min-width:0;padding:22px}.campus-card:hover{border-color:#506143}.campus-card h2{font-size:21px}.campus-card small{font:10px var(--mono);color:var(--muted)}.campus-card.archived{opacity:.65}.campus-kind{font:9px var(--mono);color:var(--lime);letter-spacing:1.3px}.campus-stat{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:16px;padding:20px 0;display:flex}.campus-stat strong{font:42px var(--mono)}.campus-stat span{font:9px var(--mono);letter-spacing:1px}.campus-stat small{color:var(--muted);font-size:11px}.campus-empty{border:1px dashed var(--line);text-align:center;border-radius:10px;grid-column:1/-1;padding:36px}.campus-empty>span{color:var(--lime);font-size:32px}.campus-form{gap:18px;max-width:680px;margin:24px 0;display:grid}.campus-form label{color:var(--muted);gap:8px;font-size:12px;display:grid}.campus-form input,.campus-form select,.campus-form textarea{box-sizing:border-box;background:var(--surface);border:1px solid var(--line);width:100%;min-width:0;color:var(--ink);font:13px var(--font,Manrope,sans-serif);border-radius:7px;padding:12px}.campus-form textarea{resize:vertical;min-height:130px}.campus-form button{justify-self:start}.campus-form p{margin:0}.campus-form label.campus-check{align-items:flex-start;line-height:1.6;display:flex}.campus-check input{width:17px;height:17px;accent-color:var(--lime);flex:0 0 17px;margin-top:2px}.campus-fields{grid-template-columns:1fr 1fr;gap:16px;display:grid}.campus-error{color:var(--coral);background:#ffb48b15;border:1px solid #ffb48b55;border-radius:8px;padding:14px;font-size:13px}.campus-next{border-left:3px solid var(--lime);background:#c3f56b0a;margin:24px 0;padding:20px 24px}.campus-next>span{font:9px var(--mono);color:var(--lime);letter-spacing:1.5px}.campus-list article{border-bottom:1px solid var(--line);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:16px;padding:18px 0;display:flex}.campus-list article>div{min-width:0}.campus-list strong{font-size:13px}.campus-list small{color:var(--muted);margin-top:6px;font-size:11px;display:block}.campus-pre{white-space:pre-wrap}.campus-code,.campus-comments pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:400px;font:12px/1.7 var(--mono);background:#080e14;padding:16px;overflow:auto}.campus-comments article{border-left:2px solid var(--line);margin:20px 0;padding-left:16px}.campus-comments small{color:var(--muted);font-size:10px}.campus-prose{max-width:700px}.campus-warning{color:var(--coral)!important}#cloud-save{padding:8px 11px;font-size:10px}#account-open{text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:11px;overflow:hidden}@media (width<=760px){#campus-dialog{border-radius:10px;width:calc(100vw - 12px);max-height:98dvh}.campus-layout{min-height:0;display:block}.campus-sidebar{border-right:0;border-bottom:1px solid var(--line);width:auto;padding:12px}.campus-sidebar nav{display:flex;overflow:auto}.campus-sidebar nav button{white-space:nowrap;padding:10px}.campus-sidebar nav small,.campus-sidebar>p,.campus-identity{display:none}.campus-sidebar>.outline-button{margin:8px 0 0;font-size:10px}.campus-content{padding:24px 18px}.campus-top{padding:12px 16px}.campus-fields{grid-template-columns:1fr}.campus-list article{flex-wrap:wrap}.campus-toolbar{gap:8px}.campus-content h1{letter-spacing:-1px}.topbar-end .local-indicator{display:none}#account-open{max-width:115px}.campus-wordmark span{font-size:8px}}#task-context{border-bottom:1px solid var(--line);background:#c3f56b0c;padding:12px 20px;font-size:11px}#task-context summary{color:var(--lime);cursor:pointer}#task-context p{white-space:pre-wrap;max-height:100px;line-height:1.6;overflow:auto}#task-context small{color:var(--muted);font-size:10px}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/manrope-latin-400-normal-PaqtzbVb.woff2)format("woff2"),url(/assets/manrope-latin-400-normal-8tf8FM3T.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/manrope-latin-500-normal-BYYD-dBL.woff2)format("woff2"),url(/assets/manrope-latin-500-normal-DMZssgOp.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/manrope-latin-600-normal-4f0koTD-.woff2)format("woff2"),url(/assets/manrope-latin-600-normal-BqgrALkZ.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/manrope-latin-700-normal-BZp_XxE4.woff2)format("woff2"),url(/assets/manrope-latin-700-normal-DGRFkw-m.woff)format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/manrope-latin-800-normal-BfWYOv1c.woff2)format("woff2"),url(/assets/manrope-latin-800-normal-uHUdIJgA.woff)format("woff")}@font-face{font-family:DM Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2"),url(/assets/dm-mono-latin-400-normal--0xN8mdc.woff)format("woff")}.ace_br1{border-top-left-radius:3px}.ace_br2{border-top-right-radius:3px}.ace_br3{border-top-left-radius:3px;border-top-right-radius:3px}.ace_br4{border-bottom-right-radius:3px}.ace_br5{border-top-left-radius:3px;border-bottom-right-radius:3px}.ace_br6{border-top-right-radius:3px;border-bottom-right-radius:3px}.ace_br7{border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px}.ace_br8{border-bottom-left-radius:3px}.ace_br9{border-top-left-radius:3px;border-bottom-left-radius:3px}.ace_br10{border-top-right-radius:3px;border-bottom-left-radius:3px}.ace_br11{border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-left-radius:3px}.ace_br12{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.ace_br13{border-top-left-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.ace_br14{border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.ace_br15{border-radius:3px}.ace_editor{text-align:left;-webkit-tap-highlight-color:#0000;forced-color-adjust:none;direction:ltr;padding:0;font:12px Monaco,Menlo,Ubuntu Mono,Consolas,Source Code Pro,source-code-pro,monospace;position:relative;overflow:hidden}.ace_scroller{background-color:inherit;-webkit-user-select:none;user-select:none;cursor:text;position:absolute;top:0;bottom:0;overflow:hidden}.ace_content{box-sizing:border-box;contain:style size layout;font-variant-ligatures:no-common-ligatures;min-width:100%;position:absolute}.ace_invisible{font-variant-ligatures:none}.ace_keyboard-focus:focus{outline:none;box-shadow:inset 0 0 0 2px #5e9ed6}.ace_dragging .ace_scroller:before{content:"";z-index:1000;background:#fafafa03;position:absolute;inset:0}.ace_dragging.ace_dark .ace_scroller:before{background:#00000003}.ace_gutter{cursor:default;z-index:4;-webkit-user-select:none;user-select:none;contain:style size layout;width:auto;position:absolute;top:0;bottom:0;left:0;overflow:hidden}.ace_gutter-active-line{position:absolute;left:0;right:0}.ace_scroller.ace_scroll-left:after{content:"";pointer-events:none;position:absolute;inset:0;box-shadow:inset 17px 0 16px -16px #0006}.ace_gutter-cell,.ace_gutter-cell_svg-icons{background-repeat:no-repeat;padding-left:19px;padding-right:6px;position:absolute;top:0;left:0;right:0}.ace_gutter-cell_svg-icons .ace_gutter_annotation{float:left;margin-left:-14px}.ace_gutter-cell .ace_gutter_annotation{float:left;margin-left:-19px}.ace_gutter-cell.ace_error,.ace_icon.ace_error,.ace_icon.ace_error_fold,.ace_gutter-cell.ace_security,.ace_icon.ace_security,.ace_icon.ace_security_fold{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg==);background-position:2px;background-repeat:no-repeat}.ace_gutter-cell.ace_warning,.ace_icon.ace_warning,.ace_icon.ace_warning_fold{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg==);background-position:2px;background-repeat:no-repeat}.ace_gutter-cell.ace_info,.ace_icon.ace_info,.ace_gutter-cell.ace_hint,.ace_icon.ace_hint{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII=);background-position:2px;background-repeat:no-repeat}.ace_dark .ace_gutter-cell.ace_info,.ace_dark .ace_icon.ace_info,.ace_dark .ace_gutter-cell.ace_hint,.ace_dark .ace_icon.ace_hint{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC)}.ace_icon_svg.ace_error{background-color:#dc143c;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+)}.ace_icon_svg.ace_security{background-color:#dc143c;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+)}.ace_icon_svg.ace_warning{background-color:#ff8c00;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg==)}.ace_icon_svg.ace_info{background-color:#4169e1;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg==)}.ace_icon_svg.ace_hint{background-color:silver;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg==)}.ace_icon_svg.ace_error_fold{background-color:#dc143c;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=)}.ace_icon_svg.ace_security_fold{background-color:#dc143c;-webkit-mask-image:url(data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4=)}.ace_icon_svg.ace_warning_fold{background-color:#ff8c00;-webkit-mask-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4=)}.ace_scrollbar{contain:strict;z-index:6;position:absolute;bottom:0;right:0}.ace_scrollbar-inner{cursor:text;position:absolute;top:0;left:0}.ace_scrollbar-v{top:0;overflow:hidden scroll}.ace_scrollbar-h{left:0;overflow:scroll hidden}.ace_print-margin{height:100%;position:absolute}.ace_text-input{z-index:0;opacity:0;appearance:none;resize:none;width:.5em;height:1em;font:inherit;contain:strict;-webkit-user-select:text;user-select:text;background:0 0;border:none;outline:none;margin:0 -1px;padding:0 1px;position:absolute;overflow:hidden;white-space:pre!important}.ace_text-input.ace_composition{color:inherit;z-index:1000;opacity:1;background:0 0}.ace_composition_placeholder{color:#0000}.ace_composition_marker{border-bottom:1px solid;border-radius:0;margin-top:1px;position:absolute}[ace_nocontext=true]{z-index:auto;filter:none!important;clip-path:none!important;contain:none!important;perspective:none!important;mix-blend-mode:initial!important;transform:none!important;-webkit-mask:none!important;mask:none!important}.ace_layer{z-index:1;word-wrap:normal;white-space:pre;box-sizing:border-box;pointer-events:none;width:100%;height:100%;position:absolute;overflow:hidden}.ace_gutter-layer{text-align:right;pointer-events:auto;contain:style size layout;width:auto;height:1000000px;position:relative}.ace_text-layer{contain:style size layout;width:1000000px;height:1000000px;position:absolute;font:inherit!important}.ace_text-layer>.ace_line,.ace_text-layer>.ace_line_group{contain:style size layout;position:absolute;top:0;left:0;right:0}.ace_hidpi .ace_text-layer,.ace_hidpi .ace_gutter-layer,.ace_hidpi .ace_content,.ace_hidpi .ace_gutter,.ace_hidpi .ace_text-layer>.ace_line,.ace_hidpi .ace_text-layer>.ace_line_group{contain:strict}.ace_cjk{text-align:center;display:inline-block}.ace_cursor-layer{z-index:4}.ace_cursor{z-index:4;box-sizing:border-box;border-left:2px solid;position:absolute;transform:translateZ(0)}.ace_multiselect .ace_cursor,.ace_slim-cursors .ace_cursor{border-left-width:1px}.ace_overwrite-cursors .ace_cursor{border-bottom:1px solid;border-left-width:0}.ace_hidden-cursors .ace_cursor{opacity:.2}.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor{opacity:0}.ace_smooth-blinking .ace_cursor{transition:opacity .18s}.ace_animate-blinking .ace_cursor{animation-name:blink-ace-animate;animation-duration:1s;animation-timing-function:step-end;animation-iteration-count:infinite}.ace_animate-blinking.ace_smooth-blinking .ace_cursor{animation-name:blink-ace-animate-smooth;animation-duration:1s;animation-timing-function:ease-in-out}@keyframes blink-ace-animate{0%,to{opacity:1}60%{opacity:0}}@keyframes blink-ace-animate-smooth{0%,to{opacity:1}45%{opacity:1}60%{opacity:0}85%{opacity:0}}.ace_marker-layer .ace_step,.ace_marker-layer .ace_stack{z-index:3;position:absolute}.ace_marker-layer .ace_selection{z-index:5;position:absolute}.ace_marker-layer .ace_bracket{z-index:6;position:absolute}.ace_marker-layer .ace_error_bracket{border-bottom:1px solid #de5555;border-radius:0;position:absolute}.ace_marker-layer .ace_active-line{z-index:2;position:absolute}.ace_marker-layer .ace_selected-word{z-index:4;box-sizing:border-box;position:absolute}.ace_line .ace_fold{box-sizing:border-box;vertical-align:middle;color:#0000;cursor:pointer;pointer-events:auto;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII=),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII=);background-position:50%,0 0;background-repeat:no-repeat,repeat-x;border:1px solid #000;border-radius:2px;height:11px;margin-top:-2px;display:inline-block}.ace_fold:hover{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII=),url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC)}.ace_tooltip{color:#000;z-index:999999;box-sizing:border-box;cursor:default;white-space:pre-wrap;word-wrap:break-word;letter-spacing:normal;pointer-events:none;overscroll-behavior:contain;background-color:#f5f5f5;border:1px solid gray;border-radius:1px;max-width:min(33em,66vw);padding:3px 4px;font-style:normal;font-weight:400;line-height:normal;position:fixed;overflow:auto;box-shadow:0 1px 2px #0000004d}.ace_tooltip pre{white-space:pre-wrap}.ace_tooltip.ace_dark{color:#fff;background-color:#636363}.ace_tooltip:focus{outline:1px solid #5e9ed6}.ace_icon{vertical-align:top;width:18px;display:inline-block}.ace_icon_svg{vertical-align:top;width:12px;display:inline-block;-webkit-mask-position:50%;-webkit-mask-size:12px;-webkit-mask-repeat:no-repeat}.ace_folding-enabled>.ace_gutter-cell,.ace_folding-enabled>.ace_gutter-cell_svg-icons{padding-right:13px}.ace_fold-widget,.ace_custom-widget{box-sizing:border-box;vertical-align:top;cursor:pointer;pointer-events:auto;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg==);background-position:50%;background-repeat:no-repeat;border:1px solid #0000;border-radius:3px;width:11px;margin:0 -12px 0 1px;display:none}.ace_custom-widget{background:0 0}.ace_folding-enabled .ace_fold-widget{display:inline-block}.ace_fold-widget.ace_end{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg==)}.ace_fold-widget.ace_closed{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA==)}.ace_fold-widget:hover{background-color:#fff3;border:1px solid #0000004d;box-shadow:0 1px 1px #ffffffb3}.ace_fold-widget:active{background-color:#0000000d;border:1px solid #0006;box-shadow:0 1px 1px #fffc}.ace_dark .ace_fold-widget{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC)}.ace_dark .ace_fold-widget.ace_end{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg==)}.ace_dark .ace_fold-widget.ace_closed{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg==)}.ace_dark .ace_fold-widget:hover{background-color:#ffffff1a;box-shadow:0 1px 1px #fff3}.ace_dark .ace_fold-widget:active{box-shadow:0 1px 1px #fff3}.ace_inline_button{pointer-events:auto;cursor:pointer;border:1px solid #d3d3d3;margin:-1px 8px;padding:0 5px;display:inline-block}.ace_inline_button:hover{pointer-events:auto;background:#c8c8c833;border-color:gray;display:inline-block}.ace_fold-widget.ace_invalid{background-color:#ffb4b4;border-color:#de5555}.ace_fade-fold-widgets .ace_fold-widget{opacity:0;transition:opacity .4s 50ms}.ace_fade-fold-widgets:hover .ace_fold-widget{opacity:1;transition:opacity 50ms 50ms}.ace_underline{text-decoration:underline}.ace_bold{font-weight:700}.ace_nobold .ace_bold{font-weight:400}.ace_italic{font-style:italic}.ace_error-marker{z-index:9;background-color:#f003;position:absolute}.ace_highlight-marker{z-index:8;background-color:#ff03;position:absolute}.ace_mobile-menu{-webkit-user-select:none;user-select:none;color:#000;background:#fff;border:1px solid #dcdcdc;border-radius:4px;line-height:1.5;position:absolute;box-shadow:1px 3px 2px gray}.ace_dark>.ace_mobile-menu{color:#ccc;background:#333;border:1px solid #444;box-shadow:1px 3px 2px gray}.ace_mobile-button{cursor:pointer;padding:2px;overflow:hidden}.ace_mobile-button:hover{opacity:1;background-color:#eee}.ace_mobile-button:active{background-color:#ddd}.ace_placeholder{transform-origin:0;white-space:pre;opacity:.7;z-index:1;margin:0 10px;font-family:arial;position:relative;transform:scale(.9)}.ace_ghost_text{opacity:.5;font-style:italic}.ace_ghost_text_container>div{white-space:pre}.ghost_text_line_wrapped:after{content:"↩";position:absolute}.ace_lineWidgetContainer.ace_ghost_text{margin:0 4px}.ace_screenreader-only{width:1px;height:1px;position:absolute;top:auto;left:-10000px;overflow:hidden}.ace_hidden_token{display:none}.ace-tm .ace_print-margin{background:#e8e8e8;width:1px}.ace-tm .ace_fold{background-color:#6b72e6}.ace-tm{color:#000;background-color:#fff}.ace-tm .ace_invisible{color:#bfbfbf}.ace-tm .ace_storage,.ace-tm .ace_keyword{color:#00f}.ace-tm .ace_constant{color:#c5060b}.ace-tm .ace_constant.ace_buildin{color:#5848f6}.ace-tm .ace_constant.ace_language{color:#585cf6}.ace-tm .ace_constant.ace_library{color:#06960e}.ace-tm .ace_invalid{color:red;background-color:#ff00001a}.ace-tm .ace_support.ace_function{color:#3c4c72}.ace-tm .ace_support.ace_constant{color:#06960e}.ace-tm .ace_support.ace_type,.ace-tm .ace_support.ace_class{color:#6d79de}.ace-tm .ace_keyword.ace_operator{color:#687687}.ace-tm .ace_comment.ace_doc{color:#06f}.ace-tm .ace_comment.ace_doc.ace_tag{color:#809fbf}.ace-tm .ace_variable{color:#318495}.ace-tm .ace_xml-pe{color:#68685b}.ace-tm .ace_entity.ace_name.ace_function{color:#0000a2}.ace-tm .ace_heading{color:#0c07ff}.ace-tm .ace_list{color:#b90690}.ace-tm .ace_meta.ace_tag{color:#00168e}.ace-tm .ace_string.ace_regex{color:red}.ace-tm.ace_multiselect .ace_selection.ace_start{box-shadow:0 0 3px #fff}.ace-tm .ace_marker-layer .ace_step{background:#fcff00}.ace-tm .ace_marker-layer .ace_stack{background:#a4e565}.ace-tm .ace_marker-layer .ace_bracket{border:1px solid silver;margin:-1px 0 0 -1px}.ace-tm .ace_gutter-active-line{background-color:#dcdcdc}.ace-tm .ace_marker-layer .ace_selected-word{background:#fafaff;border:1px solid #c8c8fa}.ace-tm .ace_indent-guide{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==) 100% repeat-y}.ace-tm .ace_indent-guide-active{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC) 100% repeat-y}.ace_editor>.ace_sb-v div,.ace_editor>.ace_sb-h div{box-sizing:border-box;z-index:8;background:#80808099;border:1px solid #bbb;border-radius:2px;position:absolute}.ace_editor>.ace_sb-v,.ace_editor>.ace_sb-h{z-index:6;background:0 0;position:absolute;overflow:hidden!important}.ace_editor>.ace_sb-v{z-index:6;width:12px;top:0;right:0}.ace_editor>.ace_sb-v div{z-index:8;width:100%;right:0}.ace_editor>.ace_sb-h{height:12px;bottom:0;left:0}.ace_editor>.ace_sb-h div{height:100%;bottom:0}.ace_editor>.ace_sb_grabbed{z-index:8;background:#000}.error_widget_wrapper{background:inherit;color:inherit;border:none}.error_widget{white-space:pre-wrap;border-top:2px solid;border-bottom:2px solid;margin:5px 0;padding:10px 40px}.error_widget.ace_error,.error_widget_arrow.ace_error{border-color:#ff5a5a}.error_widget.ace_warning,.error_widget_arrow.ace_warning{border-color:#f1d817}.error_widget.ace_info,.error_widget_arrow.ace_info{border-color:#5a5a5a}.error_widget.ace_ok,.error_widget_arrow.ace_ok{border-color:#5aaa5a}.error_widget_arrow{border:5px solid;position:absolute;top:-5px;border-top-color:#0000!important;border-left-color:#0000!important;border-right-color:#0000!important}.ace_snippet-marker{box-sizing:border-box;background:#c2c1d017;border:1px dotted #d3d0eb9e;position:absolute}.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line{z-index:1;background-color:#cad6fa}.ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line{background-color:#3a674e}.ace_editor.ace_autocomplete .ace_line-hover{z-index:2;background:#e9e9fd66;border:1px solid #abbffe;margin-top:-1px;position:absolute}.ace_dark.ace_editor.ace_autocomplete .ace_line-hover{background:#3a674e9e;border:1px solid #6d960dcc}.ace_completion-meta{opacity:.5;margin-left:.9em}.ace_completion-message{color:#00f;margin-left:.9em}.ace_editor.ace_autocomplete .ace_completion-highlight{color:#2d69c7}.ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{color:#93ca12}.ace_editor.ace_autocomplete{z-index:200000;color:#111;background:#fefefe;border:1px solid #d3d3d3;width:300px;line-height:1.4;position:fixed;box-shadow:2px 3px 5px #0003}.ace_dark.ace_editor.ace_autocomplete{color:#c1c1c1;background:#25282c;border:1px solid #484747;line-height:1.4;box-shadow:2px 3px 5px #00000082}.ace_autocomplete .ace_text-layer{width:calc(100% - 8px)}.ace_autocomplete .ace_line{align-items:center;display:flex}.ace_autocomplete .ace_line>*{flex:none;min-width:0}.ace_autocomplete .ace_line .ace_{text-overflow:ellipsis;flex:0 auto;overflow:hidden}.ace_autocomplete .ace_completion-spacer{flex:1}.ace_autocomplete.ace_loading:after{content:"";z-index:100;background:#00f;width:8%;height:2px;animation:3s linear .3s infinite ace_progress;position:absolute;top:0;transform:translate(-100%)scaleX(1)}@keyframes ace_progress{0%{transform:translate(-100%)scaleX(1)}50%{transform:translate(625%)scaleX(2)}to{transform:translate(1500%)scaleX(3)}}@media (prefers-reduced-motion){.ace_autocomplete.ace_loading:after{animation:none;transform:translate(625%)scaleX(2)}}:root{--ink:#193d37;--muted:#74817a;--paper:#f8f9f4;--line:#e1e6dc;--green:#214e42;--lime:#d9edb3;--coral:#ecab87;--mono:"DM Mono",monospace;--body:"Manrope",sans-serif;font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;scroll-behavior:smooth;font-weight:400}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline-offset:4px;outline:3px solid #72a17f}input:focus-visible,select:focus-visible{outline-offset:1px;outline:2px solid #72a17f}button{background:0 0;border:0}h1,h2,h3,p{margin:0}svg{flex-shrink:0}.icon{vertical-align:middle;width:20px;height:20px;display:inline-block}button .icon{pointer-events:none}button{transition:background .2s,transform .2s,border-color .2s}[hidden]{display:none!important}.topbar{border-bottom:1px solid var(--line);z-index:5;background:#fafbf6;position:relative}.topbar-inner{justify-content:space-between;align-items:center;gap:28px;max-width:1560px;height:90px;margin:auto;padding:0 52px;display:flex}.brand{letter-spacing:-1.6px;align-items:center;gap:11px;font-size:28px;font-weight:800;line-height:1.05;display:flex}.brand-light{font-weight:500}.brand-mark{background:var(--green);color:#e8efce;border-radius:14px 14px 14px 4px;place-items:center;width:43px;height:43px;display:grid}.brand-mark .icon{width:27px;height:27px}.brand small{font-family:var(--mono);letter-spacing:1.3px;color:#738378;margin-top:7px;font-size:8px;font-weight:400;display:block}.topbar nav{align-items:center;gap:7px;display:flex}.nav-link{color:#6a7971;white-space:nowrap;border-radius:7px;align-items:center;gap:8px;padding:12px 17px;font-size:12px;font-weight:600;display:flex}.nav-link .icon{width:17px;height:17px}.nav-link.active{color:var(--ink);background:#e9eedf}.nav-link:hover{background:#eef1e7}.topbar-end{align-items:center;gap:23px;display:flex}.local-indicator{color:#778477;align-items:center;gap:8px;font-size:10px;display:flex}.local-indicator i,.small-dot,.live-dot{background:#628770;border-radius:50%;width:6px;height:6px;display:inline-block}.avatar{background:#eceddf;border:1px solid #dedfcd;border-radius:50%;width:37px;height:37px}.avatar .icon{width:17px;height:17px}main{max-width:1560px;margin:auto;padding:0 52px}.welcome{justify-content:space-between;align-items:center;gap:20px;padding:42px 0 33px;display:flex}.eyebrow{letter-spacing:1.8px;color:#708074;align-items:center;gap:8px;font-size:9px;font-weight:700;display:flex}.tiny-star{color:#a19b73;font-size:18px}.welcome h1{letter-spacing:-2px;margin:9px 0 13px;font-size:44px;font-weight:600;line-height:1.1}.welcome h1 em{color:#64805b;letter-spacing:-2.5px;font-family:Fraunces,serif;font-weight:500}.welcome p{color:#7a8377;font-size:12px;line-height:1.7}.outline-button{background:#ffffff35;border:1px solid #cfd8c9;border-radius:7px;justify-content:center;align-items:center;gap:10px;min-height:42px;padding:12px 16px;font-size:11px;font-weight:700;display:inline-flex}.outline-button .icon{width:16px;height:16px}.outline-button:hover{background:#eaf0e1;border-color:#a9b9a4}.workspace{grid-template-columns:minmax(0,1.38fr) minmax(0,1fr);align-items:start;gap:24px;display:grid}.world-column{min-width:0}.world-card{background:#deeadf;border:1px solid #d4e0d1;border-bottom:0;border-radius:13px 13px 0 0;height:420px;position:relative;overflow:hidden}#viewport{width:100%;height:100%;position:relative}#viewport canvas{outline:none;display:block}.world-top{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;display:flex;position:absolute;top:20px;left:22px;right:18px}.world-top button{pointer-events:auto}.world-label{font-family:var(--mono);letter-spacing:1px;align-items:center;gap:9px;font-size:9px;display:flex}.live-dot{width:5px;height:5px;box-shadow:0 0 0 4px #4a795519}.tag{letter-spacing:.7px;background:#fff5;border:1px solid #6a927d30;border-radius:4px;padding:4px 6px;font-size:7px}.icon-button{border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;display:inline-flex}.icon-button .icon{width:17px;height:17px}.icon-button:hover{background:#dce6d9}.glass{background:#f4f8ee90;border:1px solid #f8fff3b0}.robot-name{pointer-events:none;gap:8px;display:grid;position:absolute;top:85px;left:25px}.robot-name>span{font-family:var(--mono);letter-spacing:1.8px;color:#688273;font-size:8px}.robot-name>strong{letter-spacing:-2.5px;font-size:41px;font-weight:500;line-height:1}.robot-name>strong>span{font-family:var(--body);letter-spacing:0;vertical-align:top;margin-left:5px;font-size:10px;line-height:1.5}.robot-name>div{color:#617c6b;align-items:center;gap:6px;font-size:8px;display:flex}.small-dot{width:4px;height:4px}.name-separator{color:#97b09a;padding:0 3px}.scene-tools{flex-direction:column;gap:8px;display:flex;position:absolute;top:110px;right:18px}.scene-caption{color:#6d8778;pointer-events:none;gap:9px;font-size:8px;display:flex;position:absolute;bottom:35px;left:25px}.world-floor-label{font-family:var(--mono);letter-spacing:1.5px;color:#759382;pointer-events:none;font-size:6px;position:absolute;bottom:18px;left:25px}.transport{background:#f6f8f0;border:1px solid #d5dfd0;border-radius:0 0 10px 10px;align-items:center;gap:11px;height:51px;padding:0 16px;display:flex}.transport-buttons{gap:1px;display:flex}.transport-buttons>.icon-button{width:27px;height:27px}.transport-buttons .icon{width:14px;height:14px}.transport time,.duration{font-family:var(--mono);white-space:nowrap;font-size:9px}.duration{color:#8c9889}.transport input{accent-color:#4b7660;width:100%;min-width:30px;height:3px}.transport select{color:#6c7c6d;font-family:var(--mono);background:0 0;border:0;padding:4px;font-size:10px}.transport>.icon-button{border-left:1px solid var(--line);border-radius:0;width:36px;padding-left:12px}.sensor-bar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:15px 12px 16px 3px;display:flex}.sensor-bar>div{align-items:center;gap:9px;display:flex}.sensor-bar>div:not(:first-child){border-left:1px solid var(--line);padding-left:22px;display:block}.sensor-bar small{font-family:var(--mono);letter-spacing:.7px;color:#849080;margin-bottom:6px;font-size:7px;display:block}.sensor-bar strong{white-space:nowrap;font-size:12px;font-weight:600}.sensor-bar strong>span{color:#8b9385;margin-left:4px;font-size:9px;font-weight:400}.sensor-icon{background:#eaf0e0;border-radius:8px;place-items:center;width:32px;height:32px;display:grid}.sensor-icon .icon{width:18px;height:18px}#contact{align-items:center;gap:5px;font-size:11px;display:flex}#contact i{background:#6a946c;border-radius:50%;width:5px;height:5px}.text-button{color:#67856b;align-items:center;gap:8px;padding:8px 0;font-size:10px;font-weight:600;display:inline-flex}.text-button .icon{width:14px;height:14px}.mission-brief{align-items:start;gap:16px;padding:23px 3px 0;display:flex}.brief-icon{color:#a4864a;background:#f3eadb;border:1px solid #e9ddc6;border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;display:grid}.brief-main{flex:1}.brief-main .eyebrow{letter-spacing:1.5px;font-size:7px}.brief-main .eyebrow>span{font-family:var(--mono);color:#919889;margin-left:5px;font-weight:400}.brief-main h2{letter-spacing:-.4px;margin:8px 0 7px;font-size:17px;font-weight:700}.brief-main p{color:#8a8b7e;font-size:10px;line-height:1.6}.mission-brief>.icon-button{border:1px solid #e1e5d8;border-radius:50%;width:26px;height:26px}.mission-brief>.icon-button .icon{width:14px;height:14px}.mission-progress{align-items:center;gap:12px;margin-top:14px;display:flex}.mission-progress>div{background:#e6e9dc;border-radius:3px;width:95px;height:4px;overflow:hidden}.mission-progress>div>span{background:#76916b;height:100%;transition:width .5s;display:block}.editor-card{background:#fffefa;border:1px solid #dce2d5;border-radius:12px;min-width:0;overflow:hidden;box-shadow:0 5px 15px #23372703}.editor-heading{border-bottom:1px solid #eaede3;justify-content:space-between;align-items:center;height:59px;padding:0 21px;display:flex}.editor-heading>div{align-items:center;gap:10px;display:flex}.editor-heading .icon{width:17px;height:17px}.editor-heading strong{font-size:12px;font-weight:700}.editor-settings{grid-template-columns:1fr 1fr;gap:14px;padding:17px 20px 16px;display:grid}.editor-settings label{color:#8a9387;gap:7px;font-size:9px;font-weight:600;display:grid}.editor-settings select{color:#46604d;background:#f6f8f1;border:1px solid #e2e6dc;border-radius:5px;min-width:0;padding:9px;font-size:11px;font-weight:600}.file-tab{border-top:1px solid #edf0e5;justify-content:space-between;align-items:center;gap:10px;height:35px;margin:0 20px;display:flex}.file-tab>span:first-child{font-family:var(--mono);color:#6b7568;align-items:center;gap:8px;font-size:9px;display:flex}.file-tab i{background:#c2d899;border-radius:2px;width:6px;height:6px}#code-editor{background:#fffefa;width:100%;height:263px;line-height:1.75}.ace-tm{color:#4b6358!important;background:#fffefa!important}.ace-tm .ace_marker-layer .ace_active-line,.ace-tm .ace_gutter-active-line{background:#f1f4ea!important}.ace-tm .ace_constant.ace_numeric{color:#b58159!important}.ace_scroller{left:48px!important}.editor-tip{background:#f0f4e8;border:1px solid #e7eddc;border-radius:6px;align-items:start;gap:10px;margin:9px 20px 13px;padding:12px 14px;display:flex}.editor-tip>.icon{color:#81916a;width:14px;height:14px;margin-top:2px}.editor-tip>span{color:#758368;font-size:10px;line-height:1.8}.editor-tip button{color:#527449;padding:0;font-size:9px;font-weight:600}.editor-tip button .icon{width:12px;height:12px;margin-left:4px}.run-toolbar{gap:10px;padding:0 20px 17px;display:flex}.primary-button{color:#f8f9ec;background:#285342;border:1px solid #285342;border-radius:6px;justify-content:center;align-items:center;gap:10px;min-height:43px;padding:12px 17px;font-size:11px;font-weight:600;display:inline-flex}.primary-button .icon{width:15px;height:15px}.primary-button:hover{background:#173f31}.run-toolbar .primary-button{flex:1;justify-content:flex-start}.primary-button kbd{font-family:var(--mono);color:#bbcebc;background:#ffffff15;border:1px solid #ffffff18;border-radius:3px;margin-left:auto;padding:3px 5px;font-size:9px}.bordered{border:1px solid #dce3d5;width:43px;height:43px}.console{background:#f6f8ef;border-top:1px solid #e2e7da;min-height:96px;padding:15px 20px 17px}.console-title{font-family:var(--mono);letter-spacing:.7px;color:#7e8c75;align-items:center;gap:7px;font-size:8px;display:flex}.console-title .icon{width:13px;height:13px}.console-title>span{color:#8b9c7c;letter-spacing:.9px;border:1px solid #dce6d1;border-radius:3px;margin-left:auto;padding:3px 5px;font-size:6px}.console pre{font-family:var(--mono);color:#8b967f;white-space:pre-wrap;overflow-wrap:anywhere;max-height:160px;margin:10px 0 0;font-size:9px;line-height:1.9;overflow:auto}.console.error pre{color:#a1533c}.console.error .console-title>span{color:#a1533c;border-color:#e9c3ae}.missions-section{padding-top:43px;scroll-margin-top:30px}.section-heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px;display:flex}.section-heading .eyebrow{letter-spacing:1.7px;color:#90967e;font-size:8px}.section-heading h2{letter-spacing:-.8px;margin-top:8px;font-size:22px;font-weight:600}.mission-total{color:#969d8a;white-space:nowrap;padding-bottom:3px;font-size:9px}.mission-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;display:grid}.mission-card{text-align:left;border:1px solid #0000;border-radius:9px;min-width:0;padding:20px 20px 15px;transition:transform .2s,border-color .2s,box-shadow .2s;position:relative}.mission-card:hover{transform:translateY(-4px);box-shadow:0 7px 20px #2547340b}.mission-card.selected{border-color:#9ca98c;box-shadow:0 0 0 3px #e4e9d8}.peach{background:#f1e9de}.lime{background:#eaf0de}.blue{background:#e7eeea}.lavender{background:#eeece5}.mission-card-top{justify-content:space-between;align-items:start;margin-bottom:23px;display:flex}.mission-number{font-family:var(--mono);letter-spacing:1px;color:#9e9e86;font-size:9px}.mission-symbol{color:#9f886a;background:#ffffff50;border:1px solid #fff9;border-radius:12px;place-items:center;width:41px;height:41px;display:grid;transform:rotate(-6deg)}.lime .mission-symbol{color:#7d9565;transform:rotate(6deg)}.blue .mission-symbol{color:#779787}.lavender .mission-symbol{color:#9b9480;transform:rotate(6deg)}.mission-symbol .icon{width:23px;height:23px}.mission-category{letter-spacing:1.5px;color:#9b967e;font-size:6px;font-weight:600}.mission-card h3{letter-spacing:-.5px;margin:7px 0;font-size:15px;font-weight:700}.mission-card p{color:#989784;font-size:9px}.mission-card-bottom{border-top:1px solid #a3aa8e25;justify-content:space-between;align-items:center;margin-top:19px;padding-top:12px;display:flex}.mission-card-bottom>span:first-child{color:#939781;align-items:center;gap:6px;font-size:8px;display:flex}.mission-card-bottom>span:first-child>.icon{width:11px;height:11px}.mission-card-bottom b{color:#b5b9a4;font-weight:400}.circle-arrow{border:1px solid #b6bea744;border-radius:50%;place-items:center;width:24px;height:24px;display:grid}.circle-arrow .icon{width:12px;height:12px}.completed-check{color:#648450;display:none;position:absolute;top:17px;left:46px}.completed-check .icon{width:13px;height:13px}.mission-card.completed .completed-check{display:block}.bridge-banner{background:#f0f2e8;border:1px solid #e5e9d9;border-radius:10px;align-items:center;gap:25px;margin-top:32px;padding:28px 31px;display:flex}.bridge-illustration{color:#9daa84;border-right:1px solid #dfe5d0;flex-shrink:0;align-items:center;gap:11px;padding:12px 16px 12px 0;display:flex}.bridge-illustration>.icon{width:29px;height:29px}.bridge-illustration>span{font-family:var(--mono);letter-spacing:3px;font-size:18px}.bridge-banner .eyebrow{letter-spacing:1.5px;color:#8a9777;font-size:6px}.bridge-banner h3{letter-spacing:-.3px;margin:7px 0;font-size:14px;font-weight:600}.bridge-banner p{color:#91987e;font-size:9px;line-height:1.7}.bridge-banner>.outline-button{white-space:nowrap;background:#f7f8ef;min-height:35px;margin-left:auto;padding:9px 12px;font-size:9px}.bridge-banner>.outline-button .icon{width:13px;height:13px}footer{color:#a0a694;justify-content:space-between;align-items:center;gap:20px;padding:26px 0 30px;font-size:7px;display:flex}footer a{color:#88947c;font-size:8px}footer a span{color:#c2c8b7;margin:0 8px}.footer-spark{color:#a4b38d;vertical-align:middle;margin-left:12px;font-size:18px}.loader{border:2px solid;border-right-color:#0000;border-radius:50%;width:15px;height:15px;animation:1s linear infinite spin;display:inline-block}.scene-loading{color:#5b7a61;text-align:center;justify-content:center;align-items:center;gap:12px;height:100%;padding:30px;font-size:12px;display:flex}.scene-loading .loader{width:20px;height:20px}#toast{color:#eff4e3;z-index:100;opacity:0;pointer-events:none;background:#214b3e;border:1px solid #5f8169;border-radius:10px;width:max-content;max-width:min(600px,90vw);padding:14px 22px;font-size:12px;line-height:1.6;transition:opacity .2s,transform .2s;position:fixed;bottom:25px;left:50%;transform:translate(-50%,20px);box-shadow:0 8px 32px #173e2920}#toast.visible{opacity:1;transform:translate(-50%)}dialog{width:720px;max-width:calc(100vw - 28px);max-height:87vh;color:var(--ink);background:#fbfcf5;border:1px solid #cbd8c6;border-radius:15px;padding:0;box-shadow:0 24px 100px #0c382d35}.modal-heading{border-bottom:1px solid var(--line);z-index:2;background:#fbfcf5;justify-content:space-between;align-items:center;gap:14px;padding:21px 28px;display:flex;position:sticky;top:0}.modal-heading h2{letter-spacing:-.8px;font-size:21px}.modal-heading button{flex-shrink:0}#modal-content{padding:25px 28px 30px;font-size:12px;line-height:1.9}#modal-content .modal-intro{color:#71816c;margin-bottom:25px;font-size:13px;line-height:1.9}#modal-content h3{margin:20px 0 8px;font-size:15px}#modal-content p{margin:8px 0 17px}#modal-content .note{color:#839075;background:#eff2e5;border:1px solid #e0e7d1;border-radius:7px;margin-top:25px;padding:14px 17px;font-size:10px;line-height:1.8}#modal-content code{font-family:var(--mono);font-size:11px}.api-list{grid-template-columns:1fr 1fr;gap:12px;display:grid}.api-list article{background:#f4f7ed;border:1px solid #dde5d2;border-radius:8px;padding:15px}.api-list code{color:#527750;overflow-wrap:anywhere;font-size:10px!important}.api-list p{color:#7d8872;font-size:11px;line-height:1.7;margin:9px 0!important}.api-list small{letter-spacing:1px;color:#9da68e;font-size:7px}.joint-reference{margin-top:15px}.joint-reference>div{border-bottom:1px solid #e3e8d7;justify-content:space-between;gap:12px;padding:7px 0;display:flex}.joint-reference>div>span{color:#96a087;font-size:11px}summary{cursor:pointer;color:#68815c;padding:9px 0;font-size:11px;line-height:1.8}.form-field{color:#7a8b6e;gap:10px;margin-bottom:23px;font-size:11px;display:grid}.form-field select{color:#34543a;background:#f2f5e9;border:1px solid #dce4cf;border-radius:6px;padding:12px}.checkbox-field{align-items:center;gap:12px;font-size:12px;display:flex}.checkbox-field input{accent-color:var(--green);width:17px;height:17px}.pose-presets,.project-actions{flex-wrap:wrap;gap:12px;margin-bottom:23px;display:flex}.joint-controls{grid-template-columns:1fr 1fr;gap:20px 25px;display:grid}.joint-control>span{justify-content:space-between;gap:10px;font-size:11px;display:flex}.joint-control output{font-family:var(--mono);color:#91a077;font-size:10px}.joint-control input{accent-color:#668653;width:100%;height:3px;margin:13px 0;display:block}.joint-control>small{color:#95a185;justify-content:space-between;gap:5px;font-size:8px;display:flex}.joint-control>small>code{font-size:7px!important}.project-list{gap:8px;display:grid}.project-list>button{text-align:left;border:1px solid var(--line);border-radius:6px;align-items:center;gap:15px;padding:13px;display:flex}.project-list>button>span{gap:3px;display:grid}.project-list strong{font-size:12px}.project-list small{color:#8a9980;font-size:9px}.project-list>button>.icon:last-child{margin-left:auto}.bridge-modal-icon{color:#8eaa78;justify-content:center;align-items:center;gap:17px;padding:15px;display:flex}.bridge-modal-icon>.icon{width:40px;height:40px}.bridge-modal-icon>.icon:nth-child(2){width:22px}.bridge-steps{grid-template-columns:1fr 1fr;gap:18px;display:grid}.bridge-steps article{background:#f0f4e6;border-radius:9px;padding:20px}.bridge-steps b{font-family:var(--mono);color:#97aa81;font-size:12px}.bridge-steps h3{margin-top:8px!important}.bridge-steps p{color:#7b8d6f;font-size:11px}.bridge-steps button{background:#fafcf2;font-size:10px}.hint-hero{color:#9ba875;background:#edf1df;border-radius:12px;place-items:center;width:66px;height:66px;margin-bottom:20px;display:grid}.hint-hero>.icon{width:35px;height:35px}.hint-code{color:#68875a;background:#eff3e4;border-radius:7px;padding:15px;display:block}.expanded-editor{z-index:25;flex-direction:column;display:flex;position:fixed;inset:20px;box-shadow:0 0 0 30px #f8f9f4}.expanded-editor #code-editor,.expanded-editor #visual-editor{flex:1;height:auto;min-height:150px}.expanded-editor .editor-settings{gap:20px;padding:10px 20px;display:flex}.expanded-editor .editor-settings label{width:180px}.expanded-editor .editor-tip{display:none}.expanded-editor .run-toolbar{padding-top:10px}.expanded-editor .run-toolbar .primary-button{flex:initial;min-width:280px}.expanded-editor .console{min-height:90px}.expanded-world{background:var(--paper);z-index:25;flex-direction:column;display:flex;position:fixed;inset:20px;box-shadow:0 0 0 30px #f8f9f4}.expanded-world .world-card{flex:1}.expanded-world .mission-brief{display:none}#visual-editor{background:#f5f7ef;min-width:0;height:345px;position:relative;overflow:auto}.blocklySvg{background:#f5f7ef!important}.blocklyText{font-family:var(--body)!important}.generated-code{border-top:1px solid var(--line);padding:0 20px}.generated-code summary{color:#8e9b80;font-size:9px}.generated-code summary span{float:right;font-family:var(--mono);font-size:7px}.generated-code pre{font-family:var(--mono);color:#6d825d;white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;font-size:10px;overflow:auto}.diagram-terminal{color:#edf4e1;width:max-content;max-width:95%;font-family:var(--mono);text-align:center;background:#365c48;border-radius:20px;margin:18px auto;padding:8px 13px;font-size:8px}.diagram-rail{flex-direction:column;align-items:stretch;gap:20px;margin:14px 20px;display:flex;position:relative}.diagram-rail:before{content:"";z-index:0;background:#adbc9b;width:1px;position:absolute;top:-20px;bottom:-20px;left:50%}.diagram-node{z-index:1;background:#fafff2;border:1px solid #c5d4b9;border-radius:6px;flex-wrap:wrap;align-items:center;gap:7px;padding:10px;display:flex;position:relative}.diagram-node.if{background:#f8f0f6;border-color:#c6b5c4}.diagram-node.repeat{background:#f8f4e9;border-color:#d2c4a5}.diagram-node-tools{border-bottom:1px solid #b1bea52a;align-items:center;gap:4px;width:100%;margin-bottom:3px;padding-bottom:5px;display:flex}.diagram-node-tools>span{font-family:var(--mono);color:#879778;margin-right:auto;font-size:7px}.diagram-node-tools button{border-radius:3px;width:22px;height:22px;font-size:12px}.diagram-node-tools button:hover{background:#b4c5a533}.diagram-node select,.diagram-node input{color:#576d49;background:#ffffffa0;border:1px solid #c8d3be;border-radius:4px;min-width:0;max-width:100%;padding:5px;font-size:9px}.diagram-node input{width:65px}.diagram-expression{flex-wrap:wrap;align-items:center;gap:5px;display:inline-flex}.diagram-expression .diagram-expression{border:1px solid #cdd8c5;border-radius:4px;padding:4px}.diagram-branches{grid-template-columns:1fr 1fr;gap:5px;width:100%;min-width:0;margin-top:10px;display:grid}.diagram-branches>div{min-width:0}.diagram-branches .diagram-rail{margin:14px 3px}.branch-label{text-align:center;color:#a58c9e;font-size:8px;display:block}.diagram-add{z-index:1;background:#f5f7ef;flex-wrap:wrap;justify-content:center;gap:6px;display:flex;position:relative}.diagram-add button{color:#879a74;background:#f8faef;border:1px dashed #bcc9b0;border-radius:4px;padding:6px 7px;font-size:8px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.welcome{animation:.5s both enter}.workspace{animation:.65s 80ms both enter}.missions-section{animation:.65s .2s both enter}@media (width>=1600px){.world-card{height:460px}#code-editor{height:303px}.welcome{padding-top:48px;padding-bottom:38px}.welcome h1{font-size:50px}.topbar-inner{height:96px}.mission-card h3{font-size:17px}}@media (width<=1190px){main,.topbar-inner{padding:0 30px}.topbar-end .local-indicator{display:none}.workspace{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:18px}.robot-name>strong{font-size:34px}.robot-name{top:77px;left:20px}.robot-name>div{grid-template-columns:auto auto;display:grid}.robot-name .name-separator{display:none}.robot-name #world-gravity{grid-column:1/3}.world-label{gap:7px;font-size:8px}.world-top{left:20px}.sensor-bar>div:not(:first-child){padding-left:12px}.sensor-icon{display:none}.sensor-bar .text-button{font-size:8px}.sensor-bar small{font-size:6px}.mission-card{padding:18px 16px 13px}.mission-card h3{font-size:13px}.mission-card p{font-size:8px}.section-heading h2{font-size:20px}.bridge-banner{gap:20px;padding:23px}.bridge-banner p{max-width:380px}.bridge-illustration{gap:6px}.bridge-illustration>.icon{width:24px;height:24px}}@media (width<=950px){.welcome h1{font-size:37px}.welcome p{font-size:11px}.welcome>.outline-button{padding:10px;font-size:9px}.topbar-inner{gap:15px}.topbar nav{gap:0}.nav-link{padding:10px 12px;font-size:10px}.topbar-end{gap:0}.brand{font-size:24px}.brand-mark{width:36px;height:36px}.brand small{font-size:6px}.workspace{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.world-card{height:420px}.robot-name{top:70px}.robot-name>strong{font-size:28px}.robot-name>span{font-size:6px}.tag{display:none}.sensor-bar{flex-wrap:wrap;gap:10px}.sensor-bar .text-button{margin-left:auto;padding:0}.sensor-bar strong{font-size:11px}.mission-brief{gap:10px;padding-top:18px}.brief-icon{border-radius:9px;width:32px;height:32px}.brief-icon>.icon{width:16px;height:16px}.brief-main h2{font-size:15px}.editor-settings{gap:8px;padding:14px}.editor-heading{padding:0 14px}.file-tab{margin:0 14px}#save-status{font-size:7px}.editor-tip{margin-left:14px;margin-right:14px}.editor-tip>span{font-size:9px}.run-toolbar{padding:0 14px 15px}.primary-button{padding:11px;font-size:10px}.primary-button kbd{display:none}.console{padding:14px}.console pre{font-size:8px}.mission-grid{gap:12px}.mission-card{padding:15px 12px}.mission-card h3{font-size:12px}.mission-card-top{margin-bottom:16px}.mission-symbol{border-radius:9px;width:33px;height:33px}.mission-symbol>.icon{width:20px;height:20px}.mission-category{letter-spacing:1px;font-size:5px}.mission-card-bottom>span:first-child{gap:4px;font-size:7px}.mission-card-bottom>span:first-child>.icon{display:none}.bridge-banner{gap:17px;padding:20px}.bridge-illustration{display:none}.bridge-banner h3{font-size:13px}.bridge-banner p{max-width:340px}}@media (width<=760px){.topbar-inner{flex-wrap:wrap;gap:0;height:72px;padding:0 20px}.topbar nav{border-bottom:1px solid var(--line);background:#fafbf6;justify-content:center;gap:15px;height:48px;position:absolute;top:72px;left:0;right:0}.topbar{margin-bottom:48px}.nav-link{padding:9px 13px;font-size:11px}.brand{font-size:25px}.brand small{font-size:6px}.brand-mark{width:36px;height:36px}.topbar-end .avatar{width:32px;height:32px}main{padding:0 20px}.welcome{align-items:start;padding:29px 0 25px}.welcome h1{letter-spacing:-1.6px;font-size:36px}.welcome h1 em{letter-spacing:-1.8px}.welcome .eyebrow{letter-spacing:1.3px;font-size:7px}.welcome p{max-width:310px;font-size:10px;line-height:1.8}.welcome>.outline-button{flex-shrink:0;gap:0;width:35px;height:35px;min-height:35px;margin-top:30px;padding:0;font-size:0}.welcome>.outline-button .icon:first-child{width:17px;height:17px}.welcome>.outline-button .icon:last-child{display:none}.workspace{flex-direction:column;gap:26px;display:flex}.world-column{width:100%}.world-card{height:420px}.world-label{font-size:8px}.tag{display:inline}.robot-name{top:78px;left:22px}.robot-name>strong{font-size:35px}.robot-name>span{font-size:7px}.robot-name>div{font-size:7px;display:flex}.robot-name .name-separator{display:inline}.sensor-bar{flex-wrap:nowrap}.sensor-bar>div:not(:first-child){padding-left:16px}.sensor-icon{width:28px;height:28px;display:grid}.sensor-bar small{font-size:6px}.sensor-bar .text-button{font-size:9px}.mission-brief{gap:14px;padding-top:20px}.brief-icon{width:36px;height:36px}.brief-main h2{font-size:17px}.brief-main p{font-size:10px}.editor-card{width:100%}.editor-heading{padding:0 20px}.editor-settings{gap:15px;padding:15px 20px}.editor-settings select{padding:10px;font-size:12px}.file-tab{height:38px;margin:0 20px}.file-tab>span:first-child{font-size:10px}#save-status{font-size:8px}#code-editor{height:290px}.editor-tip{margin:10px 20px 14px}.editor-tip>span{font-size:10px}.run-toolbar{padding:0 20px 18px}.primary-button{font-size:11px}.primary-button kbd{display:none}.console{padding:15px 20px}.console pre{font-size:9px}.missions-section{padding-top:34px}.section-heading{margin-bottom:20px;display:block}.section-heading h2{font-size:22px}.mission-total{margin-top:12px;display:block}.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.mission-card{padding:20px 17px 15px}.mission-card h3{font-size:14px;line-height:1.5}.mission-card p{font-size:9px;line-height:1.6}.mission-card-top{margin-bottom:20px}.mission-symbol{width:38px;height:38px}.mission-category{letter-spacing:1.3px;font-size:6px}.mission-card-bottom>span:first-child{font-size:8px}.mission-card-bottom>span:first-child>.icon{display:block}.bridge-banner{flex-wrap:wrap;gap:15px;margin-top:25px;padding:24px}.bridge-banner h3{font-size:15px;line-height:1.6}.bridge-banner p{max-width:none;font-size:10px}.bridge-banner .eyebrow{font-size:7px}.bridge-banner>.outline-button{margin:0;font-size:10px}.bridge-banner>.outline-button .icon{width:15px;height:15px}footer{flex-direction:column;align-items:start;gap:10px;padding:24px 0;font-size:7px}.expanded-editor,.expanded-world{inset:8px}.expanded-world .world-card{height:auto}.expanded-editor #code-editor,.expanded-editor #visual-editor{min-height:100px}.expanded-editor .editor-heading{flex-shrink:0;height:44px}.expanded-editor .editor-settings{gap:10px;padding:8px 14px}.expanded-editor .editor-settings label{width:50%}.expanded-editor .console{min-height:70px;max-height:110px}.expanded-editor .console pre{max-height:60px}.expanded-editor .run-toolbar{padding:8px 14px}.expanded-editor .run-toolbar .primary-button{flex:1;min-width:0}.expanded-world .sensor-bar{padding:15px 10px}.modal-heading{padding:19px 20px}.modal-heading h2{font-size:19px}#modal-content{padding:20px;font-size:12px}.api-list{grid-template-columns:1fr}.joint-controls{grid-template-columns:1fr;gap:24px}.bridge-steps{grid-template-columns:1fr}.joint-reference code{font-size:9px!important}.joint-reference>div>span{font-size:9px}.project-actions button{width:100%}#visual-editor{height:400px}.diagram-rail{margin-left:12px;margin-right:12px}}@media (width<=390px){main{padding:0 14px}.topbar-inner{padding:0 16px}.welcome h1{font-size:31px}.welcome p{max-width:265px;font-size:9px}.world-card{height:380px}.robot-name>strong{font-size:30px}.scene-caption{font-size:7px}.world-floor-label{font-size:5px}.sensor-bar{gap:8px}.sensor-bar>div:not(:first-child){padding-left:10px}.sensor-icon{display:none}.sensor-bar .text-button{gap:4px;font-size:8px}.sensor-bar small{font-size:5px}.sensor-bar strong{font-size:10px}.transport{gap:7px;padding:0 10px}.transport time,.duration{font-size:8px}.mission-card{padding:17px 12px 13px}.mission-card h3{font-size:12px}.mission-card p{font-size:8px}.mission-card-bottom>span:first-child{gap:4px;font-size:7px}.mission-card-bottom>span:first-child>.icon{display:none}.section-heading h2{font-size:20px}.mission-card-top{margin-bottom:17px}.brief-main .eyebrow{font-size:6px}.brief-main h2{font-size:15px}.brief-main p{font-size:9px}.mission-progress small{font-size:7px}.mission-progress>div{width:75px}.mission-progress{gap:10px}.world-label{font-size:7px}.world-top{left:18px}.nav-link{padding:9px 11px;font-size:10px}.topbar nav{gap:8px}.diagram-branches{grid-template-columns:1fr}.modal-heading h2{font-size:17px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.joint-picker{width:186px;max-width:calc(100% - 40px);font-family:var(--mono);color:#344e57;z-index:3;background:#f6faf9e8;border:1px solid #a5b8ba;border-radius:5px;padding:8px 10px;font-size:9px;position:absolute;bottom:70px;left:20px}.joint-inspector{z-index:4;color:#243e49;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:253px;max-width:calc(100% - 28px);font-family:var(--body);background:#f7fbfaf5;border:1px solid #a4b8bc;border-radius:9px;padding:13px 15px;position:absolute;bottom:16px;right:14px;box-shadow:0 8px 24px #132e3a1a}.joint-inspector-header{justify-content:space-between;align-items:center;gap:10px;font-size:10px;font-weight:600;display:flex}.joint-inspector-header button{color:#647b80;width:24px;height:24px;padding:0;font-size:20px;line-height:1}.joint-api-name{-webkit-user-select:text;user-select:text;background:#e4ecec;border:1px solid #d0dedf;border-radius:4px;justify-content:space-between;align-items:center;gap:6px;width:100%;margin:8px 0 13px;padding:8px 7px;display:flex}.joint-api-name code{font-family:var(--mono);overflow-wrap:anywhere;font-size:10px}.joint-api-name span{color:#789094;letter-spacing:.7px;font-size:6px}.joint-live-values{grid-template-columns:1fr 1fr;gap:12px;display:grid}.joint-live-values small{letter-spacing:.9px;color:#7d9195;margin-bottom:5px;font-size:6px;display:block}.joint-live-values strong{font-family:var(--mono);letter-spacing:-1px;font-size:22px;font-weight:400}.joint-live-values>div:last-child strong{color:#86999e;font-size:18px}.joint-range-track{background:#cfdddc;border-radius:4px;height:4px;margin:15px 3px 7px;position:relative}.joint-range-track i{background:#3f7f7e;border-radius:2px;width:5px;height:10px;position:absolute;top:-3px;transform:translate(-50%)}.joint-range-label{font-family:var(--mono);color:#6a858b;justify-content:space-between;align-items:center;font-size:8px;display:flex}.joint-range-label>span:nth-child(2){letter-spacing:.6px;font-size:5px}.joint-inspector dl{gap:6px;margin:13px 0 9px;display:grid}.joint-inspector dl>div{justify-content:space-between;align-items:center;gap:8px;font-size:8px;display:flex}.joint-inspector dt{color:#8a9b9e}.joint-inspector dd{font-family:var(--mono);margin:0;font-size:8px}.joint-inspector-footer{font-family:var(--mono);letter-spacing:.7px;color:#5c8588;border-top:1px solid #d8e3e3;justify-content:space-between;padding-top:9px;font-size:7px;display:flex}.joint-pin-hint{color:#8da1a3;margin-top:7px;font-size:7px;line-height:1.6;display:block}.joint-inspector.outside-range .joint-range-track i{background:#bb8050}@media (width<=760px){.joint-picker{width:170px;padding:7px 8px;font-size:8px;bottom:65px;left:14px}.joint-inspector{width:221px;padding:10px 12px;bottom:10px;right:10px}.joint-live-values strong{font-size:19px}.joint-api-name{margin:5px 0 9px}.joint-inspector dl{margin:9px 0}.joint-inspector-header{font-size:9px}.joint-pin-hint{font-size:6px}.joint-live-values small{font-size:5px}.joint-inspector dd{font-size:7px}}.execution-switch{background:#f2f5ea;border:1px solid #dce4d3;border-radius:6px;gap:3px;margin:0 20px 11px;padding:3px;display:flex}.execution-switch button{text-align:left;color:#8a987d;border-radius:4px;flex:1;justify-content:space-between;align-items:center;gap:8px;padding:7px 9px;font-size:10px;font-weight:700;display:flex}.execution-switch button small{font-size:8px;font-weight:400}.execution-switch button.active{color:#365d40;background:#fffef6;box-shadow:0 1px 3px #234d3910}.expanded-editor .execution-switch{max-width:500px;min-height:33px}.diagram-node.while{background:#f8f4e9;border-color:#d2c4a5}.mission-card p{color:#717861}.mission-card-bottom>span:first-child{color:#737c63}.brief-main p{color:#747b67}.mission-category{color:#7c8066}.bridge-banner p{color:#727f60}.editor-tip>span{color:#627455}.file-tab>span:last-child{color:#7d8871}.welcome p{color:#687761}.mission-progress small{color:#78856a}.world-card{height:459px}.robot-name>strong>span{display:none}.workspace,.missions-section,.welcome{animation-fill-mode:backwards}@media (width<=950px){.execution-switch{margin-left:14px;margin-right:14px}.execution-switch button{display:block}.execution-switch small{margin-top:3px;display:block}.world-card{height:470px}}@media (width<=760px){.execution-switch{margin-left:20px;margin-right:20px}.execution-switch button{display:flex}.execution-switch small{margin:0}.world-card{height:420px}}@media (width<=390px){.execution-switch button small{font-size:7px}.world-card{height:380px}}.learning-path{background:#f0f3ec;border:1px solid #d9e2d8;border-radius:14px;align-items:center;gap:18px;margin:0 0 28px;padding:22px 25px;display:flex}.path-stage{flex:1;align-items:center;gap:12px;min-width:0;display:flex}.path-stage>span{color:#548574;font:22px Fraunces,serif}.path-stage strong,.path-stage small{display:block}.path-stage strong{font-size:13px}.path-stage.locked>span{color:#9aada0}.path-stage .text-button{white-space:nowrap;margin-left:auto}.range-sensors{background:#f1f5f2;border:1px solid #dce5de;border-radius:0 0 12px 12px;grid-template-columns:1fr 1fr;gap:14px;padding:18px 20px;display:grid}.range-sensors small{letter-spacing:1px;color:#6c7b73;margin-bottom:4px;font-size:9px;display:block}.range-sensors strong{color:#385b51;font:12px DM Mono,monospace}.ghost-strip{color:#7b62a3;justify-content:space-between;align-items:center;gap:12px;padding:10px 4px;font-size:11px;display:flex}.ghost-strip[hidden]{display:none}.arena-section{background:#edf1eb;border:1px solid #d5dfd5;border-radius:22px;margin:60px 0;padding:32px}.arena-intro{color:#5e7166;max-width:710px;margin-bottom:25px;font-size:14px;line-height:1.8}.course-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.course-card{text-align:left;color:inherit;cursor:pointer;background:#fcfdf8;border:1px solid #d0ddd2;border-radius:14px;padding:22px;transition:transform .2s,border-color .2s}.course-card:hover{border-color:#5a8a77;transform:translateY(-3px)}.course-card.selected{border:2px solid #4b806c}.course-index{letter-spacing:1px;color:#71857a;font:10px DM Mono,monospace}.course-card h3{margin:17px 0 8px;font-size:19px}.course-card>strong{color:#35705c;margin-top:20px;font-size:12px;display:block}.course-map{background:repeating-linear-gradient(0deg,#0000,#0000 24px,#dce7dc 25px),repeating-linear-gradient(90deg,#0000,#0000 24px,#dce7dc 25px);border-radius:8px;max-width:240px;height:130px;margin:12px auto 0;position:relative}.course-map>i{display:block;position:absolute}.map-start{background:#244c43;border-radius:50%;width:12px;height:12px;bottom:6%;left:48%}.map-goal{background:#8bc7a1;border:1px solid #58a075;border-radius:50%;width:24px;height:20px;top:6%;left:45%}.map-obstacle{background:#78939a;border-radius:2px;width:32px;height:12px;transform:translate(-50%)}.map-obstacle.moving{background:#ce985e;animation:5s ease-in-out infinite course-slider}.course-map>span{color:#779481;font:10px DM Mono,monospace;position:absolute;bottom:0;right:0}@keyframes course-slider{0%,to{transform:translate(-50%)}25%{transform:translate(40px)}75%{transform:translate(-65px)}}.board-heading{justify-content:space-between;align-items:center;gap:16px;margin-top:38px;display:flex}.board-heading h3{margin:10px 0;font-size:24px}.board-toolbar{align-items:center;gap:12px;margin-bottom:18px;display:flex}.board-toolbar p{color:#63756a;flex:1;font-size:12px;line-height:1.7}.board-toolbar button{white-space:nowrap}.board-empty{text-align:center;border:1px dashed #adbfaf;border-radius:12px;padding:30px}.board-empty strong{font-size:17px}.board-empty p{color:#6b7a71;font-size:12px;line-height:1.8}.strategy-card{background:#fcfdf8;border-radius:12px;justify-content:space-between;align-items:center;gap:20px;margin-top:10px;padding:22px;display:flex}.strategy-author{color:#607e6d;font-size:11px}.strategy-card h3{margin:8px 0;font-size:17px}.strategy-card p{color:#718176;font-size:11px}.strategy-actions{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.strategy-source{white-space:pre-wrap;word-break:break-word;background:#f2f4ef;max-height:350px;padding:16px;font:12px/1.8 DM Mono,monospace;overflow:auto}.learning-form{flex-direction:column;gap:16px;display:flex}.learning-form label{color:#536b5d;flex-direction:column;gap:8px;font-size:12px;display:flex}.learning-form input{box-sizing:border-box;background:#f9fbf7;border:1px solid #c8d6c9;border-radius:6px;width:100%;padding:12px;font:13px DM Mono,monospace}.record-range{grid-template-columns:1fr 1fr;gap:12px;display:grid}.learning-notice{color:#785f33;background:#f2ead9;border-radius:10px;padding:18px;font-size:13px;line-height:1.7}.macro-missions{margin:20px 0}.macro-missions article{border-bottom:1px solid #e2e7de;align-items:center;gap:12px;padding:15px 0;display:flex}.macro-missions article>span{color:#548574;font:20px Fraunces,serif}.macro-missions article>div{flex:1}.macro-missions strong{font-size:13px;display:block}.macro-missions small{color:#718374;margin-top:5px;font-size:11px;display:block}.macro-missions button{padding:9px 12px;font-size:11px}.macro-list article{background:#f1f3eb;border-radius:8px;flex-direction:column;gap:9px;margin-bottom:10px;padding:15px;display:flex}.macro-list code{color:#476553;font-size:12px}.macro-list small{color:#718374;font-size:11px}.macro-list p{color:#718374;font-size:13px;line-height:1.8}button:disabled{cursor:not-allowed;opacity:.5}@media (width<=1000px){.learning-path{gap:12px;padding:20px 16px}.path-stage{flex-wrap:wrap}.path-link{display:none}.board-toolbar{flex-wrap:wrap}.board-toolbar p{flex-basis:100%}}@media (width<=650px){.learning-path{gap:20px;display:grid}.path-stage{flex-wrap:nowrap}.arena-section{margin-top:35px;padding:20px 16px}.course-grid{grid-template-columns:1fr}.arena-section .section-heading,.board-heading,.strategy-card{flex-direction:column;align-items:flex-start}.board-heading{gap:5px}.strategy-actions{flex-flow:wrap}.board-toolbar button{padding:10px;font-size:11px}.record-range{grid-template-columns:1fr}.macro-missions article{flex-wrap:wrap}.macro-missions article>div{min-width:150px}.range-sensors{gap:12px;padding:14px}}@media (prefers-reduced-motion:reduce){.map-obstacle.moving{animation:none}}@media (width<=400px){.topbar nav{gap:2px}.topbar .nav-link{gap:4px;padding:8px 7px;font-size:10px}.topbar .nav-link svg{width:13px;height:13px}}.run-toolbar{flex-wrap:wrap}.run-toolbar #reset-simulation{flex-shrink:0;gap:7px;padding:10px 12px}.run-toolbar #run{min-width:0}.run-toolbar #run kbd{white-space:nowrap}@media (width<=400px){.run-toolbar #run{flex-basis:100%}}.dynamics-panel{z-index:5;color:#e6edf3;background:#111b24ed;border:1px solid #476073;border-radius:10px;max-width:min(300px,100% - 24px);padding:9px 12px;font-size:11px;line-height:1.5;position:absolute;bottom:12px;right:12px}.dynamics-panel summary{cursor:pointer;color:#ffdc65;font-weight:700}.dynamics-panel label{margin:6px 0;display:block}.dynamics-panel small{color:#bdcbd5;margin-top:6px;display:block}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0c1117;--ink:#e9eff4;--muted:#99a9b8;--line:#293540;--green:#c3f56b;--lime:#c3f56b;--coral:#ffb48b;--surface:#141c25;--raised:#1c2732;--cyan:#8bd9e8}body{background:radial-gradient(ellipse at 15% 0%, #25372b55, transparent 35%), var(--paper)}::selection{color:#fff;background:#baf26545}button:hover{filter:none}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline-color:var(--lime)}button:disabled{cursor:not-allowed}.topbar{border-color:var(--line);background:#0c1117ed}.topbar-inner{height:76px;padding:0 36px}.brand{letter-spacing:-1.3px;font-size:26px}.brand-mark{color:#152018;background:var(--lime);border-radius:11px;width:39px;height:39px}.brand small{color:var(--muted);letter-spacing:1.8px;font-size:8px}.nav-link{color:var(--muted);border-radius:7px;padding:10px 16px;font-size:12px}.nav-link.active{color:var(--lime);box-shadow:inset 0 -2px var(--lime);background:#c3f56b12}.nav-link:hover{color:var(--ink);background:var(--raised)}.local-indicator{color:var(--muted);font-family:var(--mono);font-size:10px}.local-indicator i,.small-dot,.live-dot{background:var(--lime)}.avatar{background:var(--surface);border-color:var(--line);color:var(--ink);border-radius:9px}main{max-width:1560px;padding:0 36px}.welcome{padding:32px 0 27px}.eyebrow{color:var(--muted);font-family:var(--mono);letter-spacing:1.6px;font-size:9px}.tiny-star{color:var(--lime)}.welcome h1{letter-spacing:-2px;margin:8px 0 10px;font-size:clamp(30px,3.4vw,49px);font-weight:800}.welcome h1 em{font:inherit;color:var(--lime);letter-spacing:inherit}.welcome p{color:var(--muted);font-size:12px}.outline-button,.bordered{background:var(--surface);color:var(--ink);border-color:#36444f;border-radius:8px}.outline-button{font-size:11px}.outline-button:hover,.icon-button:hover{background:#25333f;border-color:#647582}.text-button{color:var(--lime);font-size:11px}.primary-button{background:var(--lime);border-color:var(--lime);color:#162016;border-radius:8px;font-weight:800}.primary-button:hover{background:#d4ff8f;border-color:#d4ff8f;box-shadow:0 0 20px #c3f56b15}.primary-button kbd{color:#34492b;background:#1725140b;border-color:#17251428}.learning-path{border:1px solid var(--line);background:0 0;border-radius:10px;gap:18px;margin-bottom:22px;padding:15px 20px}.path-stage>span{color:var(--lime);font:12px var(--mono);background:#c3f56b09;border:1px solid #c3f56b35;border-radius:7px;flex-shrink:0;place-items:center;width:30px;height:30px;display:grid}.path-stage strong{color:var(--ink);font-size:11px;font-weight:600}.path-stage small{color:var(--muted);margin-top:4px;font-size:9px}.path-stage.locked{opacity:.7}.path-stage.locked>span{color:var(--muted);border-color:var(--line);background:var(--surface)}.path-link{color:#556573}.workspace{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;display:grid}.world-card{background:#111b24;border:1px solid #34434c;border-bottom:0;border-radius:14px 14px 0 0;height:485px}.world-top{top:18px;left:20px}.world-label{color:#dce6ec;letter-spacing:1.2px;font-size:9px}.live-dot{box-shadow:0 0 0 4px #c3f56b12,0 0 14px #c3f56b66}.tag{color:#b9cdd8;background:#1b2a35;border-color:#a3c2d034;padding:4px 7px;font-size:8px}.glass{color:#c0d0d9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#14212be8;border-color:#3a4b58}.robot-name{gap:7px;top:77px;left:24px}.robot-name>span{color:#7e98ab;font-size:9px}.robot-name>strong{color:#eef6ff;letter-spacing:-2px;font-size:43px;font-weight:700}.robot-name>div,.name-separator{color:#9fb2c1;font-size:9px}.scene-tools{top:83px}.scene-caption{color:#a0b4c4;font-size:9px;bottom:29px}.world-floor-label{color:#6f889b;font-size:7px;bottom:14px}.scene-loading{color:var(--muted)}.transport{background:#151f29;border-color:#34434c;border-radius:0 0 14px 14px;height:53px}.transport input{accent-color:var(--lime);height:4px}.transport time{color:var(--ink);font-size:10px}.transport .duration,.transport select{color:var(--muted);font-size:10px}.sensor-bar{border:1px solid var(--line);background:var(--surface);border-radius:9px 9px 0 0;gap:10px;margin-top:13px;padding:16px 14px}.sensor-bar small,.range-sensors small{color:var(--muted);letter-spacing:.8px;font-size:8px}.sensor-bar strong{font-family:var(--mono);font-size:14px;font-weight:400}.sensor-bar strong>span{color:var(--muted)}.sensor-icon{color:var(--cyan);background:#8bd9e810;border-radius:7px}.sensor-bar>div:not(:first-child){padding-left:14px}#contact{font-size:12px}#contact i{background:var(--lime)}#contact i.air{background:#ffb48b}.range-sensors{border:1px solid var(--line);background:#111921;border-top:0;border-radius:0 0 9px 9px;gap:12px;padding:13px 14px}.range-sensors strong{color:var(--cyan);font-family:var(--mono);font-size:11px;font-weight:400}.ghost-strip{color:#b5a1e5;padding:10px 0;font-size:10px}.mission-brief{background:#172019;border:1px solid #c3f56b29;border-radius:10px;gap:13px;padding:17px}.brief-icon{color:var(--lime);background:#c3f56b0c;border-color:#c3f56b2b;border-radius:8px;width:36px;height:36px}.brief-main .eyebrow{color:#a2b494;font-size:8px}.brief-main .eyebrow>span{color:#a2b494}.brief-main h2{font-size:17px}.brief-main p{color:#a4b49c;font-size:11px}.mission-brief>.icon-button{color:var(--lime);border-color:#3f5236}.mission-progress>div{background:#36412d}.mission-progress>div>span{background:var(--lime)}.mission-progress small{color:#b8c6af;font-size:9px}.editor-card{background:var(--surface);border-color:#34434c;border-radius:14px;box-shadow:0 14px 45px #0002}.editor-heading{border-color:var(--line);height:55px;padding:0 20px}.editor-heading>div>.icon{color:var(--lime)}.editor-heading strong{font-size:13px}.editor-settings{gap:12px;padding:16px 20px}.editor-settings label{color:var(--muted);font-size:10px}.editor-settings select{color:var(--ink);background:#1d2934;border-color:#354450;border-radius:7px;padding:10px;font-size:12px}.file-tab{border-block:1px solid var(--line);background:#101820;height:40px;margin:0;padding:0 20px}.file-tab>span:first-child{color:var(--cyan);font-size:10px}.file-tab i{background:var(--lime)}.file-tab>span:last-child{color:#94a5b4;font-size:9px}#code-editor{height:332px;line-height:1.8}.ace-tm,#code-editor{color:#dce6ee!important;background:#101820!important}.ace-tm .ace_gutter{color:#637989!important;background:#101820!important}.ace-tm .ace_marker-layer .ace_active-line,.ace-tm .ace_gutter-active-line{background:#1a2833!important}.ace-tm .ace_keyword{color:#c2a7ff!important}.ace-tm .ace_string{color:#c3ed95!important}.ace-tm .ace_constant.ace_numeric,.ace-tm .ace_constant.ace_language{color:#f0bc83!important}.ace-tm .ace_comment{color:#8395a4!important}.ace-tm .ace_support.ace_function,.ace-tm .ace_entity.ace_name.ace_function{color:#8bd9e8!important}.ace-tm .ace_cursor{color:var(--lime)!important}.ace-tm .ace_marker-layer .ace_selection{background:#3c5b70!important}.ace-tm .ace_indent-guide{opacity:.4}.ace_autocomplete{color:var(--ink)!important;background:#1b2935!important;border-color:#435969!important}.editor-tip{background:#1b2731;border-color:#33444e #33444e #33444e #8bd9e8;border-left-style:solid;border-left-width:2px;border-radius:5px;margin:14px 20px;padding:10px 12px}.editor-tip>.icon{color:var(--cyan)}.editor-tip>span{color:#b1c0ca;font-size:10px}.editor-tip button{color:var(--cyan);font-size:10px}.run-toolbar{padding-bottom:18px}.run-toolbar .primary-button{min-height:45px;font-size:12px}.console{border-color:var(--line);background:#0e161e;min-height:117px}.console-title{color:#a2b4c1;font-size:9px}.console-title>span{color:var(--lime);background:#c3f56b07;border-color:#c3f56b30;font-size:7px}.console pre{color:#9fb4a4;font-size:10px}.console.error{background:#291c21}.console.error pre,.console.error .console-title>span{color:#ffb5a0;border-color:#8a4a44}.missions-section{padding-top:42px}.section-heading h2{letter-spacing:-.9px;font-size:25px;font-weight:700}.section-heading .eyebrow,.mission-total{color:var(--muted);font-size:9px}.mission-grid{gap:14px}.mission-card{--accent:#ffba91;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px}.mission-card.lime{--accent:#c3f56b}.mission-card.blue{--accent:#8bd9e8}.mission-card.lavender{--accent:#bca9f0}.mission-card:hover{border-color:var(--accent);box-shadow:none;background:#1a2530;transform:translateY(-3px)}.mission-card.selected{border-color:var(--lime);box-shadow:inset 0 3px var(--lime);background:#1a251b}.mission-card-top{margin-bottom:24px}.mission-number{color:var(--muted);font-size:11px}.mission-symbol{background:#ffffff04;border-color:#ffffff15;border-radius:9px;color:var(--accent)!important;transform:none!important}.mission-category{color:var(--accent);font-family:var(--mono);letter-spacing:.7px;font-size:8px;font-weight:400}.mission-card h3{letter-spacing:-.4px;margin-top:10px;font-size:16px}.mission-card p{color:var(--muted);font-size:11px;line-height:1.7}.mission-card-bottom{border-color:var(--line)}.mission-card-bottom>span:first-child{color:var(--muted);font-size:9px}.circle-arrow{color:var(--accent);border-color:#465460}.completed-check{color:var(--lime)}.arena-section{border-color:var(--line);background:#121b23;border-radius:14px;margin-top:42px;padding:28px}.arena-section h2 em{font:inherit;color:var(--cyan)}.arena-intro,.board-toolbar p{color:var(--muted);font-size:12px}.course-card{color:var(--ink);background:#18242d;border-color:#344652;border-radius:10px}.course-card:hover,.course-card.selected{border-color:var(--cyan);background:#1b2d36}.course-index{color:#9ab2c1;font-size:9px}.course-card p{color:var(--muted);font-size:11px}.course-card>strong{color:var(--cyan);font-size:11px}.course-map{background-color:#111e28;background-image:linear-gradient(#83a3b010 1px,#0000 1px),linear-gradient(90deg,#83a3b010 1px,#0000 1px);background-size:25px 25px;border-color:#3a5364}.map-obstacle{background:#7aa5bc;border-color:#9bc8de}.map-obstacle.moving{background:#e7ae6a}.map-start{background:var(--lime)}.map-goal{border-color:var(--lime);background:#c3f56b28}.course-map>span{color:var(--muted)}.board-heading{border-color:var(--line)}.board-heading h3{font-size:19px}.board-empty{color:#d4e0e8;background:#0d1720;border-color:#405260;padding:30px}.board-empty p{color:var(--muted);font-size:11px}.strategy-card{border-color:var(--line);background:#18242d}.strategy-card p,.strategy-author{color:var(--muted)}.strategy-source{color:#c3ed95;border-color:var(--line);background:#101820}.bridge-banner{border-color:var(--line);background:0 0;border-radius:12px;margin-top:36px;padding:25px}.bridge-illustration{color:var(--cyan)}.bridge-banner .eyebrow{color:var(--muted);font-size:8px}.bridge-banner h3{font-size:16px}.bridge-banner p{color:var(--muted);font-size:11px}.bridge-banner>.outline-button{background:var(--surface);font-size:11px}footer,footer a{color:#8a9ba9;font-size:10px}footer a span,.footer-spark{color:var(--lime)}.joint-picker{color:#d1e1eb;background:#12222eea;border-color:#4e6979;font-size:10px}.joint-inspector{color:#e2edf5;background:#12202bf5;border-color:#496575;border-radius:10px;box-shadow:0 16px 50px #0006}.joint-inspector-header{font-size:11px}.joint-inspector-header button{color:var(--muted)}.joint-api-name{color:var(--cyan);background:#243845;border-color:#405a6b}.joint-api-name span{color:#aac4d0;font-size:7px}.joint-live-values small{color:#a1b7c7;font-size:7px}.joint-live-values strong{color:#d9f3a9}.joint-live-values>div:last-child strong{color:#a7bbc9}.joint-range-track{background:#3a5060}.joint-range-track i{background:var(--lime)}.joint-range-label{color:#aac2d0}.joint-range-label>span:nth-child(2){font-size:6px}.joint-inspector dt,.joint-pin-hint{color:#a1b7c7}.joint-inspector dl>div,.joint-inspector dd{font-size:9px}.joint-inspector-footer{color:var(--cyan);border-color:#3a5060}.joint-inspector.outside-range [data-role=angle]{color:var(--coral)}dialog,.modal-heading{color:var(--ink);background:#151f29;border-color:#3c4e5d}dialog::backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#03080dc9}.modal-heading{border-bottom-color:var(--line)}#modal-content .modal-intro,#modal-content .note,.api-list p,.api-list small,.form-field,.joint-reference>div>span,.project-list small,.bridge-steps p,.joint-control>small{color:var(--muted)}#modal-content .note,.api-list article,.bridge-steps article,.learning-notice{background:#1c2a35;border-color:#354958}.learning-notice{color:#f0c68b;border-left:2px solid #c79b5c}.bridge-modal-icon,.api-list code,summary,.hint-code,.joint-control output{color:var(--cyan)}.joint-reference>div{border-color:var(--line)}.form-field select,.learning-form input,.learning-form select{color:var(--ink);background:#0e1821;border-color:#486070}.joint-control input,.checkbox-field input{accent-color:var(--lime)}.hint-hero,.hint-code{color:var(--cyan);background:#1e3439}.bridge-steps button{background:var(--surface)}.macro-missions article,.macro-list article{border-color:var(--line);background:#182630}.macro-missions small,.macro-list small,.learning-form label{color:var(--muted)}.macro-missions article>span{color:var(--lime);font-family:var(--mono)}.macro-list code{color:var(--cyan)}.macro-list p{color:var(--muted)}#toast{color:#e6f6d8;background:#20332a;border-color:#7ca753;box-shadow:0 8px 32px #0007}.expanded-editor,.expanded-world{box-shadow:0 0 0 30px var(--paper)}#visual-editor,.blocklySvg{background:#101b24!important}.blocklyFlyoutBackground{fill:#24333f!important}.blocklyToolbox{color:var(--ink)!important;background:#192731!important}.blocklyTreeLabel{color:var(--ink)!important}.blocklyTreeSelected{background:#3c5667!important}.generated-code summary{color:var(--muted)}.generated-code pre{color:#b7d6a3}.diagram-terminal{color:#172315;background:var(--lime)}.diagram-node,.diagram-node.if,.diagram-node.repeat,.diagram-node.while{background:#21323e;border-color:#496373}.diagram-node.if{border-left:3px solid #bca9f0}.diagram-node.repeat,.diagram-node.while{border-left:3px solid #efbb81}.diagram-node-tools>span,.branch-label{color:#b4c5ce}.diagram-node-tools{border-color:#446072}.diagram-node select,.diagram-node input{color:#d8e5ed;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#111f29;border-color:#496373}.diagram-add{background:#101b24}.diagram-add button{color:#bcd2df;background:#1b2c37;border-color:#4b6677}.diagram-add button:hover{background:#314857}.diagram-expression .diagram-expression{border-color:#476172}.diagram-rail:before{background:#496373}@media (width>=1600px){.world-card{height:520px}#code-editor{height:367px}}@media (width<=1190px){main,.topbar-inner{padding-inline:26px}.workspace{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:16px}.world-card{height:470px}.sensor-bar{padding:13px 10px}.sensor-bar small{font-size:7px}.sensor-bar strong{font-size:12px}.sensor-bar>div:not(:first-child){padding-left:9px}.mission-card{padding:17px}}@media (width<=950px){.local-indicator{display:none}.nav-link{padding-inline:11px}.learning-path{gap:12px;padding:14px}.path-stage{gap:8px}.path-stage strong{font-size:10px}.path-stage small{font-size:8px}.path-stage .text-button{font-size:9px}.welcome h1{font-size:35px}.world-card{height:470px}.sensor-bar .text-button{font-size:9px}#code-editor{height:330px}}@media (width<=760px){main{padding:0 20px}.topbar{margin-bottom:0}.topbar-inner{flex-wrap:wrap;gap:16px;height:auto;padding:17px 20px 12px}.brand{font-size:25px}.topbar nav{background:0 0;border:0;flex-basis:100%;order:3;grid-template-columns:repeat(4,auto);justify-content:space-between;gap:3px;height:auto;display:grid;position:static}.topbar-end{margin-left:auto}.nav-link{justify-content:center;padding:9px 10px;font-size:11px}.welcome{align-items:flex-start;padding:25px 0 22px}.welcome h1{letter-spacing:-1.4px;max-width:360px;font-size:34px}.welcome p{max-width:310px;font-size:11px}.welcome>.outline-button{gap:7px;width:auto;height:auto;margin-top:0;padding:10px 12px;font-size:10px}.learning-path{grid-template-columns:1fr;gap:0;padding:4px 14px;display:grid}.path-stage{flex-wrap:nowrap;gap:12px;padding:12px 0}.path-stage+.path-stage{border-top:1px solid var(--line)}.path-stage strong{font-size:11px}.path-stage small{font-size:9px}.path-stage .text-button{margin-left:auto;font-size:10px}.workspace{grid-template-columns:minmax(0,1fr);gap:22px}.world-card{height:445px}.robot-name>strong{font-size:38px}.sensor-bar small{font-size:7px}.sensor-bar strong{font-size:13px}.range-sensors{padding:13px}.mission-brief{padding:15px}.brief-main p{font-size:10px}#code-editor{height:340px}.editor-card{border-radius:12px}.section-heading h2{font-size:23px}.mission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.mission-card{padding:16px}.mission-card h3{font-size:14px}.mission-card p{font-size:10px}.mission-card-bottom>span:first-child{font-size:8px}.mission-category{font-size:7px}.arena-section{padding:21px 16px}.bridge-banner{padding:20px 16px}footer,footer a{font-size:9px}.joint-inspector{width:239px}.joint-inspector dl>div,.joint-inspector dd{font-size:8px}.joint-picker{font-size:9px}.expanded-editor #code-editor,.expanded-editor #visual-editor{height:auto}.expanded-world .world-card{height:auto;min-height:180px}}@media (width<=420px){main{padding-inline:14px}.topbar-inner{padding-inline:16px}.topbar .nav-link{gap:5px;padding:9px 7px;font-size:10px}.welcome{display:block}.welcome h1{font-size:33px}.welcome>.outline-button{min-height:37px;margin-top:15px;padding:8px 12px}.world-card{height:408px}.world-label{gap:7px;font-size:8px}.robot-name{left:18px}.robot-name>strong{font-size:34px}.sensor-bar{gap:7px}.sensor-bar small{font-size:6px}.sensor-bar strong{font-size:11px}#contact{font-size:10px}.sensor-bar .text-button{gap:3px;font-size:8px}.range-sensors small{font-size:7px}.range-sensors strong{font-size:10px}.scene-caption{gap:5px;font-size:8px;left:18px}.world-floor-label{font-size:6px;left:18px}.transport{gap:6px;padding-inline:8px}.transport time,.transport .duration,.transport select{font-size:9px}.transport>.icon-button{width:26px;padding-left:5px}.mission-grid{gap:10px}.mission-card{padding:15px 12px}.mission-card h3{font-size:13px}.mission-category{letter-spacing:.1px}.mission-symbol{width:34px;height:34px}.mission-card-top{margin-bottom:18px}.run-toolbar #run{flex-basis:100%}}.challenge-guide{color:var(--muted);grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0;font-size:12px;line-height:1.6;display:grid}.challenge-guide span{border:1px solid var(--line);background:#14212b;border-radius:10px;padding:14px 16px}.challenge-guide b{color:var(--lime);font-size:14px;display:block}.challenge-filters{flex-wrap:wrap;align-items:center;gap:9px;margin:20px 0;display:flex}.challenge-filters [aria-pressed=true]{background:var(--lime);color:#14212b;border-color:var(--lime)}#challenge-count{color:var(--muted);margin-left:auto;font-size:12px}.course-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.challenge-card{border-top:3px solid var(--challenge);min-width:0;padding:18px;position:relative}.challenge-card:hover,.challenge-card.selected{border-color:var(--challenge)}.challenge-card-top{flex-direction:column;gap:10px;display:flex}.challenge-level{color:var(--challenge);font-size:11px}.challenge-map{background-color:#101c25;background-image:linear-gradient(#83a3b00c 1px,#0000 1px),linear-gradient(90deg,#83a3b00c 1px,#0000 1px);background-size:22px 22px;border-radius:10px;width:100%;height:190px;margin-top:14px;display:block}.challenge-route{fill:none;stroke:var(--challenge);stroke-width:2px;stroke-dasharray:4 5;opacity:.45}.challenge-sweep{fill:none;stroke:#ffb469;stroke-width:2px;stroke-dasharray:3 3}.challenge-obstacle{fill:#668292}.challenge-moving{fill:#ffb469}.challenge-stop{fill:#13232b;stroke:var(--challenge);stroke-width:2px}.challenge-finish{fill:#baf16a22;stroke:var(--challenge);stroke-width:2px}.challenge-start{fill:#d6f392}.challenge-map text{fill:#e4f2fa;text-anchor:middle;font:700 12px sans-serif}.challenge-map .challenge-start-label{text-anchor:start;fill:#adbfca;font-size:8px}.challenge-card h3{font-size:19px}.challenge-card p{min-height:54px;line-height:1.65}.challenge-skill{color:var(--challenge);border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;gap:8px;padding-top:12px;font-size:11px;line-height:1.5;display:flex}.challenge-skill span{color:var(--muted)}.challenge-board-filters{border:1px solid var(--line);background:#14212b;border-radius:10px;flex-wrap:wrap;align-items:end;gap:16px;padding:18px;display:flex}.challenge-board-filters label{color:var(--muted);gap:8px;font-size:12px;display:grid}.challenge-board-filters select{max-width:100%;color:var(--ink);border:1px solid var(--line);background:#1b2b36;border-radius:6px;padding:10px}.challenge-board-filters p{min-width:180px;color:var(--muted);flex:1;font-size:12px;line-height:1.7}.challenge-rank{color:var(--lime);margin-right:8px;font-size:24px;display:inline-block}.challenge-stars{color:#ffd166;font-size:18px}.challenge-stars span{color:var(--muted);padding-left:10px;font-size:11px}@media (width<=1050px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=650px){.course-grid,.challenge-guide{grid-template-columns:1fr}.challenge-guide{gap:7px}.challenge-guide span{padding:10px 13px}.challenge-filters .outline-button{padding:9px 11px;font-size:11px}#challenge-count{width:100%;margin-left:0}.challenge-board-filters{flex-direction:column;align-items:stretch}.challenge-card p{min-height:0}}.challenge-target{color:var(--muted);margin:-6px 0 16px;font-size:11px;line-height:1.5;display:block}
