*{box-sizing:border-box}body{margin:0;background:#f5f5ef;color:#253c3c;font:15px/1.6 'Segoe UI',Arial,sans-serif}button,select,input{font:inherit;color:inherit}button,select{border:1px solid #d3ded5;border-radius:9px;background:#fff;padding:8px 12px}button{cursor:pointer}button:hover{filter:brightness(.96)}button:disabled{cursor:default;opacity:.45}:focus-visible{outline:3px solid #9e6bc1;outline-offset:2px}aside{position:fixed;inset:0 auto 0 0;width:230px;padding:26px 22px;background:white;border-right:1px solid #e0e5dd;overflow:auto}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:inherit;font-size:20px;line-height:1.2;font-weight:750}.brand-icon{background:#368c7f;color:white;padding:12px 14px;border-radius:15px;font-size:28px}.eyebrow{font-size:10px;letter-spacing:1.5px;color:#428378;font-weight:800}aside>.eyebrow{margin-top:24px}#progress{font-size:12px}aside nav a{display:flex;text-decoration:none;color:#5b706a;font-size:12px;gap:10px;padding:9px 8px;border-radius:8px}aside nav a span{color:#409b8d}aside nav a[aria-current]{background:#e4f1e9;color:#1d695c;font-weight:700}aside>button{margin-top:24px}footer{font-size:10px;color:#74877f;margin-top:20px}main{margin-left:230px;padding:22px 28px}.top{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#687971;margin-bottom:24px}.badge{padding:4px 10px;border-radius:20px;border:1px solid #dce4d7;background:#edf1e7}.hero{background:#e0eee5;padding:28px 32px;display:flex;justify-content:space-between;gap:28px;border-radius:20px}h1{font:700 34px/1.2 Georgia,serif;margin:10px 0 16px}.hero p{max-width:850px;margin:0}.mascot{font-size:55px;color:#34877a;text-align:center;min-width:130px;align-self:center}.mascot span{display:block;font:12px/1.4 'Segoe UI',sans-serif}.mission{display:flex;gap:20px;align-items:baseline;margin:20px 0;padding:14px 18px;border-left:4px solid #e5b653;background:#fff7e3}.mission details{margin-left:auto;font-size:13px;min-width:100px}.mission details p{max-width:450px}.workspace{display:grid;grid-template-columns:190px minmax(300px,1fr) minmax(330px,1.1fr);gap:16px;align-items:start}.card{background:white;border:1px solid #dde4dc;border-radius:16px;padding:18px;min-width:0}h2{font-size:17px;margin:0 0 12px}h3{font-size:15px}.muted{font-size:11px;color:#6a7c73}.palette{display:grid;grid-template-columns:32px 1fr;gap:0 5px;text-align:left;width:100%;margin:8px 0;padding:10px;border-color:transparent;background:#e7f1fb}.palette>span{font-size:25px;grid-row:span 2}.palette b{font-size:12px}.palette small{font-size:10px;line-height:1.4;color:#566c70}.palette.collect,.palette.paint{background:#fff0cc}.palette.repeat{background:#eae2f9}.palette.if{background:#d9eee4}.tip{font-size:11px;background:#f5f5f0;border-radius:10px;padding:12px;margin-top:16px}.tip p{margin-bottom:0}.section-head{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.section-head button{font-size:11px;padding:4px 8px}.section-head>span{font-size:11px}#root-target{font-size:11px;width:100%;border-style:dashed}.chosen{background:#e5f4ea!important;border-color:#41998a!important}.block{margin-top:8px;background:#e8f1fa;border:1px solid #c5d9eb;border-radius:9px;padding:8px}.block.repeat{background:#eee8fa;border-color:#d9c7ed}.block.if{background:#e1f1e8;border-color:#b8dbc8}.block.collect,.block.paint{background:#fff3d6;border-color:#eeddaf}.block-row{display:flex;align-items:center;gap:5px;flex-wrap:wrap;font-size:11px}.block-icon{font-size:20px}.block-actions{display:flex;gap:2px;margin-left:auto}.block-actions button{padding:1px 5px;font-size:11px;border-color:transparent;background:#ffffff8a}.block input{width:44px;border:1px solid #ccc;border-radius:5px;padding:2px;background:white;font-size:11px}.block select{font-size:10px;max-width:145px;padding:3px}.body{margin:8px 0 0 8px;border-left:3px solid #c1aecf;padding-left:8px}.body.selected{border-left-color:#3e9c7b}.target{font-size:10px;background:#ffffff99;border-style:dashed;padding:5px 8px}.executing{outline:3px solid #e8b235}.empty{text-align:center;font-size:13px;color:#7d8a7d;border:2px dashed #e0e5dd;padding:34px 8px;margin-top:14px;border-radius:12px}#board{display:grid;grid-template-columns:repeat(6,1fr);aspect-ratio:1;gap:3px;background:#d5e3d7;padding:6px;border-radius:14px;max-width:560px;margin:10px auto}.cell{min-width:0;padding:0;position:relative;display:grid;place-items:center;background:#f2f7e9;border:0;border-radius:6px;aspect-ratio:1;font-size:24px;color:#67847b}.cell:disabled{opacity:1}.cell.wall{background:#80948a;color:#dfebe2}.cell.goal{background:#c5e7d1}.cell.painted{background:#c5c0f0}.flag{position:absolute;bottom:0;right:4px;font-size:19px;color:#1a7a5c}.star{font-size:26px;color:#bd8616;text-shadow:0 1px white}.robot{position:absolute;z-index:1;display:grid;place-items:center;background:#368b83;color:white;border:2px solid white;width:72%;height:72%;border-radius:35%;box-shadow:0 3px 4px #244b4540;font:bold 25px monospace}.legend{display:flex;gap:10px;flex-wrap:wrap;font-size:10px;color:#678174}.actions{display:flex;gap:7px;flex-wrap:wrap;margin:16px 0}.actions button{font-size:12px}.primary{background:#34887b;color:white;border-color:#34887b}.speed{font-size:11px}.speed select{padding:4px;font-size:11px}.status{border-radius:10px;background:#eff4e9;padding:14px;margin-top:16px;font-size:13px;min-height:72px}.bottom{display:flex;align-items:center;justify-content:space-between;gap:10px}.bottom button{font-size:12px}summary{cursor:pointer;color:#3b8070}dialog{max-width:540px;border:1px solid #c8d7c8;border-radius:16px;padding:28px}dialog::backdrop{background:#23443b77}[hidden]{display:none!important}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.embedded aside{display:none}.embedded main{margin-left:0;padding:16px}.embedded .top>span{display:none}.embedded .top{justify-content:flex-start}.embedded .hero{padding:20px}.embedded h1{font-size:28px}.embedded .mascot{display:none}@media(max-width:1300px){.workspace{grid-template-columns:minmax(270px,1fr) minmax(310px,1fr)}.toolbox{grid-column:1/-1}.toolbox #palette{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.toolbox .palette{margin:0}.toolbox .tip{display:none}}@media(max-width:950px){aside{width:180px;padding:20px 12px}main{margin-left:180px;padding:18px}.workspace{grid-template-columns:1fr}.toolbox #palette{grid-template-columns:repeat(3,1fr)}.hero .mascot{display:none}.mission{display:block}.mission details{margin-top:10px}.stage{grid-row:2}.code{grid-row:3}.top{flex-wrap:wrap}}@media(max-width:600px){aside{position:static;width:auto;max-height:230px}main{margin:0;padding:12px}.toolbox #palette{grid-template-columns:repeat(2,1fr)}h1{font-size:28px}.hero{padding:22px}.bottom{flex-wrap:wrap}}

@media(min-width:700px) and (max-width:950px){.embedded .workspace{grid-template-columns:minmax(270px,1fr) minmax(310px,1fr)}.embedded .stage,.embedded .code{grid-row:auto}.embedded .toolbox #palette{grid-template-columns:repeat(4,1fr)}}
