.light-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.light-scene,.graph-card{background:#f4f8f3;border:1px solid #dce8df;padding:18px;border-radius:14px}.light-scene svg,.graph-card canvas{width:100%;display:block}.light-scene label{display:block;font-weight:700}.light-scene input{width:100%;accent-color:#b77c43}.light-read{font-weight:700}.light-read output{font-size:28px}.light-read small{font-size:12px}.graph-card canvas{background:#fff;border-radius:8px;margin:14px 0}.question-note{margin:12px 0 20px}.panel .workspace{margin-bottom:20px}.example{display:block;max-width:min(100%,800px);margin-top:12px}#blocklyArea{height:440px;width:100%;border:1px solid #c8d4d4;border-radius:12px}.robot-result{display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:20px;background:#eef5f1;border-radius:12px}.lamp-indicator{width:30px;height:30px;border-radius:50%;background:#a6abad;border:2px solid #768383}.lamp-indicator.on{background:#f04d47;box-shadow:0 0 18px #ed756d}.steps button{min-width:145px}@media(max-width:800px){.light-grid,.two{grid-template-columns:1fr}#blocklyArea{height:370px}}

.sensor-zoom{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;align-items:center;margin-top:20px;padding:20px;background:#fffaf1;border:1px solid #e8d9bd;border-radius:14px}.sensor-zoom h3{margin:6px 0}.sensor-zoom svg{width:100%;height:auto}@media(max-width:800px){.sensor-zoom{grid-template-columns:1fr}}

#zoomRays{animation:lightPulse 2s ease-in-out infinite;transition:opacity .35s}#sensitiveLayer{transition:fill .35s}@keyframes lightPulse{0%,100%{transform:translateY(-4px)}50%{transform:translateY(4px)}}@media(prefers-reduced-motion:reduce){#zoomRays{animation:none}}

.program-simulation{margin:18px 0 10px;padding:18px 20px;border:1px solid #b4d1c9;border-radius:12px;background:#edf6f2}.program-simulation-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.program-simulation-head span,.program-simulation p{font-size:12px;color:#526d70}.program-simulation label{display:block;font-weight:700;margin-top:9px}.program-simulation label output{font-size:20px}.program-simulation input[type=range]{width:100%;accent-color:#ae7745}.program-simulation .sound-toggle{font-weight:500;font-size:13px}.sound-toggle input{width:auto}

.program-workspace{border:1px solid #c8d4d4;border-radius:12px;overflow:hidden;background:#fff}.program-workspace .program-simulation{margin:0;border:0;border-bottom:1px solid #b4d1c9;border-radius:0;padding:12px 16px}.program-workspace .program-simulation p{margin:4px 0}.program-workspace #blocklyArea{border:0;border-radius:0}.program-simulation label output{font-size:26px;color:#235b6b;font-weight:800}
