/* Dedicated workbench adjustments. shell.css is the existing Column shell,
   with only its app namespace renamed. Shared site files remain untouched. */
#automataApp h1 { font-size:clamp(1.7rem,3.1vw,2.75rem); line-height:1.3; }
#automataApp .hero { padding-top:28px; gap:22px; }
#automataApp .hero-lead { margin-top:14px; line-height:1.8; }
#automataApp .observatory-layout { grid-template-columns:minmax(0,1fr) 320px; }
#automataApp .bench-tag { color:var(--aw-amber); font-size:.7rem; letter-spacing:.08em; }
#automataApp #workbenchCanvas { display:block; width:100%; height:auto; aspect-ratio:960/680; touch-action:none; cursor:grab; }
#automataApp #workbenchCanvas:active { cursor:grabbing; }
#automataApp #workbenchCanvas:focus-visible { outline:3px solid var(--aw-cyan); outline-offset:-4px; }
#automataApp .bench-controls { display:grid; grid-template-columns:1fr 2fr 1fr; gap:8px; margin-top:14px; }
#automataApp .bench-controls button { padding:10px 6px; font-size:.82rem; }
#automataApp .cam-options { display:grid; gap:10px; }
#automataApp .cam-choice { display:flex; align-items:center; text-align:left; gap:16px; min-height:78px; }
#automataApp .cam-choice strong { display:block; font-size:.85rem; }
#automataApp .cam-choice small { display:block; margin-top:3px; color:var(--aw-muted); font-size:.72rem; }
#automataApp .cam-choice[aria-pressed="true"] { border-color:var(--aw-amber); background:rgba(255,208,120,.1); box-shadow:inset 3px 0 var(--aw-amber); }
#automataApp .cam-icon { font-size:2rem; color:var(--aw-amber); width:38px; text-align:center; }
#automataApp .control-group { border-top:1px solid var(--aw-line); margin-top:22px; padding-top:18px; }
#automataApp input[type="range"] { min-height:44px; }
#automataApp #resetButton { width:100%; margin-top:20px; }
#automataApp button:disabled { opacity:.5; cursor:not-allowed; }
#automataApp .small-note, #automataApp .canvas-help, #automataApp .control-hint { color:var(--aw-muted); }
#automataApp .site-footer { flex-wrap:wrap; }
#automataApp .limits-section p { color:var(--aw-muted); font: .86rem/1.8 "Yu Gothic",Meiryo,sans-serif; }
@media(max-width:980px) {
  #automataApp .observatory-layout { grid-template-columns:1fr; }
  #automataApp .control-panel { display:block; }
  #automataApp .cam-options { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #automataApp .cam-choice { flex-direction:column; gap:4px; }
}
@media(max-width:600px) {
  #automataApp #workbenchCanvas { aspect-ratio:600/680; }
  #automataApp .hero { padding-top:22px; }
  #automataApp .status-rack { padding:12px; }
  #automataApp .cam-options { grid-template-columns:1fr; }
  #automataApp .cam-choice { flex-direction:row; gap:16px; min-height:70px; }
  #automataApp .bench-controls { gap:5px; }
  #automataApp .bench-controls button { font-size:.7rem; }
  #automataApp .panel-heading h2 { font-size:1.08rem; }
}
