.robot-lab{margin-block:2rem;min-width:0}
.robot-lab .robot-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.4rem;max-width:24rem;margin:1.5rem auto}
.robot-cell{aspect-ratio:1;display:grid;place-items:center;background:#fff;border:2px solid #91aaa6;border-radius:.6rem;font-size:clamp(2rem,8vw,3.5rem);color:#174e48}
.robot-cell.robot-here{background:#d9eee7;border:3px solid #146c63}
.robot-cell.robot-goal{outline:3px dashed #956814;outline-offset:-7px}
.robot-controls{display:flex;flex-wrap:wrap;gap:.6rem}
.robot-lab button{font:inherit;min-height:44px;border:2px solid #21665e;border-radius:.6rem;background:#fff;color:#174e48;padding:.6rem .8rem;cursor:pointer;white-space:normal}
.robot-lab button:hover:not(:disabled){background:#d9eee7}
.robot-lab button:focus-visible,.robot-lab summary:focus-visible{outline:3px solid #b35c00;outline-offset:3px}
.robot-lab button:disabled{opacity:.55;cursor:default}
.robot-lab fieldset{min-width:0;border:1px solid #91aaa6;border-radius:.7rem;padding:1rem}
.robot-lab legend{font-weight:700;max-width:100%}
.robot-lab [data-robot-program]{padding-left:1.6rem}
.robot-lab [data-robot-program] li{padding:.3rem;margin-block:.4rem}
.robot-lab [data-robot-program] button{margin-left:.7rem;font-size:.9rem}
.robot-lab [aria-current=step]{background:#fff0c9;border-radius:.4rem}
.robot-run{margin-block:1.2rem}
.robot-lab [data-robot-status]{padding:.8rem;border-left:4px solid #21665e;background:#fff;min-height:4rem}
.robot-lab [hidden]{display:none!important}
@media(max-width:420px){.robot-controls button{flex:1 1 100%}.robot-lab fieldset{padding:.7rem}}
