:root{font-family:"Yu Gothic UI","Meiryo",sans-serif;color:#233931;background:#f6f8f3;font-size:13px}*{box-sizing:border-box}body{margin:0}button,select,input{font:inherit}button,select,.fileLabel{border:1px solid #d9e2d7;background:white;border-radius:8px;padding:10px 14px;color:inherit;cursor:pointer}button:hover,.fileLabel:hover{background:#edf3e8}button:disabled{opacity:.45;cursor:default}header{height:91px;display:flex;align-items:center;padding:0 32px;gap:20px;border-bottom:1px solid #dce4d9;background:#fff}.brand{display:flex;align-items:center;gap:13px;margin-right:auto}.logo{background:#234d38;color:#c4e98b;border-radius:12px;font-size:30px;padding:4px 12px}strong{letter-spacing:1px;font-size:18px}em{font-style:normal;color:#6c8662}small{display:block;font-size:11px;color:#78907e;margin-top:3px}.badge{background:#eef3e8;border-radius:20px;padding:6px 12px;font-size:11px}.toolbar{padding:20px 32px;display:flex;align-items:center;justify-content:space-between;gap:10px}.step{border:1px solid #cbd8c5;border-radius:50%;padding:6px;color:#617a52;font-size:11px}.tip{font-size:11px;color:#788775;margin-left:12px}main{display:grid;grid-template-columns:1.3fr 1fr;gap:20px;padding:0 24px;height:calc(100vh - 220px);min-height:600px}.editor,.preview{background:white;border:1px solid #dce4d9;border-radius:15px;overflow:hidden}.editor{display:flex;flex-direction:column}#blockly{flex:1;min-height:0}.editorFoot{display:flex;justify-content:space-between;padding:12px 18px;background:#fcfdf9;color:#7d8e79;font-size:10px;border-top:1px solid #e4eadf}.preview{padding:22px;display:flex;flex-direction:column}.previewHead{display:flex;align-items:center;justify-content:space-between}.eyebrow{font-size:9px;letter-spacing:2px;color:#7e9276}h1{font-size:21px;letter-spacing:1px;margin:7px 0 18px}.sim{font-size:10px;color:#6e8d58;background:#f1f6e9;padding:7px 10px;border-radius:20px}.canvasWrap{position:relative;flex:1;min-height:230px;overflow:hidden;border:1px solid #e1e7db;border-radius:10px;background:#f9fbf5}canvas{width:100%;height:100%;position:absolute;inset:0;object-fit:contain}.scale,.north{position:absolute;bottom:12px;left:15px;color:#829179;font-size:10px}.north{left:auto;right:15px;top:12px;bottom:auto}.metrics{display:flex;justify-content:space-around;text-align:center;padding:15px 0;border-bottom:1px solid #e6ebdf}.metrics b{font-size:22px;font-weight:500}#status{font-size:11px;color:#6f806b;min-height:20px;margin:13px 0}.actions{display:flex;gap:10px}.primary{background:#254d36;color:white;border-color:#254d36}.primary:hover{background:#356846}.actions .primary{flex:1;font-weight:700;padding:14px}.stop{color:#a85043;background:#fff9f6;border-color:#ecd9d2}.note{font-size:10px;color:#8a9684;line-height:1.8;margin:12px 0 0}footer{padding:18px 30px;display:flex;align-items:center;gap:12px;font-size:10px;color:#8b9785}footer>span:first-child{letter-spacing:1px;margin-right:12px}footer>span:nth-child(2){margin-right:auto}footer button,.fileLabel{padding:6px 10px}dialog{border:1px solid #d6e0d1;border-radius:16px;padding:30px;max-width:520px;line-height:1.8}dialog::backdrop{background:#18302166}dialog label{display:block;margin:16px 0}dialog input{width:100px;margin-left:15px;border:1px solid #d4ddcc;border-radius:5px;padding:7px}dialog .primary{margin-top:20px}.blocklyToolboxDiv{background:#f6f8f1!important}.blocklyTreeRow{height:38px!important;padding-top:7px!important}.blocklyTreeLabel{font-family:inherit!important;font-size:13px!important}@media(max-width:1000px){header{padding:0 16px}.toolbar{padding:15px;flex-wrap:wrap}.tip{display:none}main{grid-template-columns:1fr;height:auto;min-height:0;padding:0 12px}.editor{height:540px}.preview{height:650px}footer>span:nth-child(2){display:none}footer{flex-wrap:wrap}strong{font-size:14px}.badge{display:none}}
.deviceBar{display:flex;align-items:center;gap:10px;margin:8px 0 12px;font-size:11px;flex-wrap:wrap}.deviceBar label{margin-left:auto}header a{text-decoration:none;font-size:12px}.preview{overflow:auto}dialog input[type=checkbox]{width:auto;margin:0 8px 0 0}

.executionChoice{display:flex;gap:12px;align-items:center;margin-top:12px}.executionChoice label{font-size:12px}.executionChoice select{flex:1;min-width:0}.actions{flex-wrap:wrap}.actions button{min-width:90px}.preview{min-height:680px}main{min-height:730px}
